/* Full-site palettes for the illustrative church. */
:root,:root[data-palette="forest"]{--accent:#1d3b30;--tint:#e4eadb;--cream:#f2f6ed;--text:#20392e;--muted:#4c6154;--surface:#ffffff;--panel:#e4edda;--line:#b9cbb7;--header:#1d3b30;--header-text:#f3f7ec;--header-muted:#d4e2cf;--button:#1d3b30;--button-text:#ffffff;--link:#234e3c;--date-bg:#d3e2c2;--date-text:#1d3b30;--focus:#8e3e22;--hero-overlay:linear-gradient(100deg,#132f26ed,#1d3b30a3);--hero-copy:#f0f7ed;--hero-button:#e3eecb;--hero-button-text:#1d3b30;--notice-bg:#d6e3c9;--notice-text:#30472f;--map-bg:#b7cba8;--map-road:#f2f6ec;--backdrop:#10281ecc}
:root[data-palette="clay"]{--accent:#914c36;--tint:#f0e1d6;--cream:#fff6ee;--text:#4a2921;--muted:#765043;--surface:#fffaf5;--panel:#f2dac8;--line:#cda58f;--header:#8b412d;--header-text:#fff8f0;--header-muted:#f4d9c6;--button:#914c36;--button-text:#ffffff;--link:#803a26;--date-bg:#e9c4a6;--date-text:#572c1d;--focus:#914c36;--hero-overlay:linear-gradient(100deg,#512314eb,#6b30239c);--hero-copy:#fff4ec;--hero-button:#f7dec1;--hero-button-text:#522b1d;--notice-bg:#ecd0b9;--notice-text:#542d21;--map-bg:#d5ad8c;--map-road:#fff3e4;--backdrop:#3e1d17cc}
:root[data-palette="midnight"]{--accent:#253650;--tint:#263e60;--cream:#101d33;--text:#edf3ff;--muted:#bdcce2;--surface:#14253f;--panel:#203958;--line:#496480;--header:#0b172c;--header-text:#f0f5ff;--header-muted:#c1d1e9;--button:#c4daff;--button-text:#14253f;--link:#d0e1ff;--date-bg:#355a83;--date-text:#f0f5ff;--focus:#a9cbff;--hero-overlay:linear-gradient(100deg,#101c34f0,#1e3b65c4);--hero-copy:#eef4ff;--hero-button:#c4daff;--hero-button-text:#14253f;--notice-bg:#263e60;--notice-text:#e5eeff;--map-bg:#314b6d;--map-road:#7189a7;--backdrop:#060d19df}
body,body.standalone{background:var(--cream);color:var(--text)}body.standalone main,body.standalone .demo-header,body.standalone .church-footer{background:var(--surface)}.sample-notice{background:var(--notice-bg);color:var(--notice-text)}.demo-header,body.standalone .demo-header{background:var(--header);color:var(--header-text);border-color:var(--line)}.church-icon{color:var(--header-text)}.church-name small{color:var(--header-muted)}.demo-nav button{color:var(--header-muted);padding:7px 5px}.demo-nav button[aria-pressed=true]{color:var(--header-text);border-color:var(--header-text)}.church-hero:before{background:var(--hero-overlay)}.church-hero p{color:var(--hero-copy)}.demo-btn{background:var(--button);border-color:var(--button);color:var(--button-text)}.church-hero .demo-btn{background:var(--hero-button);border-color:var(--hero-button);color:var(--hero-button-text)}.demo-btn.outline{background:transparent;color:var(--link);border-color:var(--line)}.service-strip{background:var(--panel)}.service-strip p,.event-mini p,.church-page>.intro-copy,.event-tile p,.event-tile .category,.ministry p,.form-note,.visit-card p{color:var(--muted)}.small-action{color:var(--link)}.church-section,.church-page{background:var(--surface)}.event-mini,.ministry,.event-tile,.church-footer{border-color:var(--line)}.date{background:var(--date-bg);color:var(--date-text);border-radius:3px}.welcome-note,.visit-card,.demo-success{background:var(--panel);color:var(--text)}.welcome-note{border-top:3px solid var(--line)}.event-tile{background:var(--panel)}.event-filters button{background:var(--surface);color:var(--link);border-color:var(--line)}.event-filters button[aria-pressed=true]{background:var(--button);color:var(--button-text);border-color:var(--button)}.ministry .ministry-icon{background:var(--date-bg);color:var(--date-text)}.connect-form input,.connect-form textarea{background:var(--cream);color:var(--text);border-color:var(--line)}.connect-form input::placeholder,.connect-form textarea::placeholder{color:var(--muted)}.visit-map{background:var(--map-bg)}.visit-map:before{background:repeating-linear-gradient(25deg,transparent 0 28px,var(--map-road) 29px 37px,transparent 38px 72px),repeating-linear-gradient(115deg,transparent 0 55px,var(--map-road) 56px 64px,transparent 65px 100px)}.map-pin{background:var(--button)}.map-pin:after{color:var(--button-text)}.church-footer,body.standalone .church-footer{background:var(--header);color:var(--header-muted);border-color:var(--line)}.church-footer strong{color:var(--header-text)}.demo-dialog{background:var(--surface);color:var(--text);border:1px solid var(--line)}.demo-dialog .close{border-color:var(--line);color:var(--text)}.demo-dialog::backdrop{background:var(--backdrop)}.standalone-bar{background:var(--header);color:var(--header-text)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-color:var(--focus)}
@media(prefers-reduced-motion:no-preference){body,.demo-header,.sample-notice,.service-strip,.church-section,.church-page,.welcome-note,.event-tile,.visit-card,.church-footer,.demo-btn,.event-filters button,.connect-form input,.connect-form textarea{transition:background-color .25s,color .25s,border-color .25s}}

.demo-header button:focus-visible,.church-footer a:focus-visible,.standalone-bar a:focus-visible{outline-color:var(--header-text)}

@media(max-width:420px){.demo-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px}.demo-nav button{min-width:0;text-align:left;white-space:normal}.demo-header{padding-inline:20px}.church-brand{min-width:0}}
