/* ABIDE visual foundation
   Approved blush atmosphere + Aqua Smoke / Spearmint palette.
   Shared base color and calendar behavior. Final 2026 presentation is layered by
   abide-2026.css without legacy emoji decoration. */
:root{
  --abide-blush:#fff4f7;
  --abide-blush-deep:#f8e6ec;
  --abide-rose-line:#eed8df;
  --aqua-smoke:#c7d7cd;
  --spearmint:#9bb4a7;
  --sage:#bfd1c7;
  --olive:#a9c2b5;
  --forest:#6f8d7c;
  --sage-contrast:#6f8d7c;
}

body{background:var(--abide-blush)}
.site-header{background:rgba(255,244,247,.96);border-bottom-color:var(--abide-rose-line)}
.announcement{background:rgba(255,255,255,.42);border-bottom-color:var(--abide-rose-line)}
.hero,.page-hero,.section,.intro-strip{background:transparent}
.connect-band{background:rgba(255,255,255,.44)}

.hero h1,.section-heading h2,.split-copy h2,.page-hero h1{color:var(--spearmint)}
.eyebrow,.scripture{color:var(--sage-contrast)}
.btn.primary{background:var(--sage-contrast);color:white}
.btn.secondary{border-color:var(--spearmint);color:var(--sage-contrast);background:transparent}
.brand-mark{color:var(--sage-contrast)}
.botanical [stroke="#7f8f75"],.botanical [stroke="#718263"],.botanical [stroke="#6f8766"]{stroke:var(--spearmint)}
.botanical [fill="#aebba3"]{fill:var(--aqua-smoke)}
.botanical [fill="#566552"],.botanical [fill="#5f714f"]{fill:var(--sage-contrast)}

.calendar-shell{border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.72);box-shadow:0 18px 45px rgba(77,98,87,.06);overflow:hidden}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;border-bottom:1px solid var(--line)}
.calendar-toolbar h3{margin:0;font:600 1.8rem/1.1 Georgia,serif;color:var(--sage-contrast)}
.calendar-nav{display:flex;gap:8px}
.calendar-nav button{border:1px solid var(--aqua-smoke);background:transparent;color:var(--sage-contrast);border-radius:4px;padding:9px 13px;font-weight:800;cursor:pointer}
.calendar-nav button:hover,.calendar-nav button:focus-visible{border-color:var(--spearmint);outline:none;box-shadow:0 0 0 3px rgba(155,180,167,.14)}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.calendar-weekdays{border-bottom:1px solid var(--line);background:rgba(255,255,255,.36)}
.calendar-weekdays span{padding:10px 8px;text-align:center;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--muted)}
.calendar-day{min-height:112px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.46);position:relative}
.calendar-day:nth-child(7n){border-right:0}
.calendar-day.is-outside{background:rgba(255,255,255,.20);color:#a6aaa6}
.calendar-day.is-today .calendar-number{background:var(--sage-contrast);color:#fff}
.calendar-number{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.8rem}
.calendar-events{display:grid;gap:6px;margin-top:8px}
.calendar-event{display:block;width:100%;text-align:left;border:0;border-radius:4px;background:rgba(199,215,205,.38);color:var(--sage-contrast);padding:7px 8px;font-size:.74rem;font-weight:800;line-height:1.25;cursor:pointer}
.calendar-event:hover,.calendar-event:focus-visible{background:rgba(199,215,205,.62);outline:2px solid rgba(111,141,124,.14)}
.calendar-legend{padding:14px 20px;color:var(--muted);font-size:.82rem}
.calendar-agenda{display:grid;gap:12px;margin-top:22px}
.calendar-agenda-item{border:1px solid var(--line);border-radius:6px;background:rgba(255,255,255,.52);padding:18px 20px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px}
.calendar-agenda-date{min-width:72px;text-align:center;padding:10px;border-radius:4px;background:rgba(255,255,255,.58)}
.calendar-agenda-date strong{display:block;font:700 1.5rem/1 Georgia,serif;color:var(--sage-contrast)}
.calendar-agenda-date span{font-size:.66rem;text-transform:uppercase;letter-spacing:.12em;color:var(--sage-contrast);font-weight:800}
.calendar-agenda-item h4{margin:0 0 4px;font:700 1.2rem Georgia,serif;color:var(--sage-contrast)}
.calendar-agenda-item p{margin:0;color:var(--muted);font-size:.86rem}
.calendar-add{border:1px solid var(--spearmint);background:transparent;color:var(--sage-contrast);border-radius:4px;padding:9px 12px;font-weight:800;font-size:.74rem;cursor:pointer;white-space:nowrap}
.calendar-empty{padding:28px;text-align:center;color:var(--muted)}

@media (max-width:760px){
  .calendar-day{min-height:78px;padding:6px}
  .calendar-number{width:26px;height:26px;font-size:.74rem}
  .calendar-event{font-size:0;padding:6px;min-height:30px;position:relative}
  .calendar-event:after{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:linear-gradient(145deg,#91b0c2,#b6aac6);box-shadow:0 0 0 4px rgba(198,223,224,.30)}
  .calendar-agenda-item{grid-template-columns:auto 1fr}
  .calendar-add{grid-column:1/-1;justify-self:start}
  .calendar-toolbar{padding:18px 16px}
  .calendar-toolbar h3{font-size:1.45rem}
}
