/* Christmas 2026 only. Original page tokens remain intact underneath.
 * Toggle CHRISTMAS_ENABLED in christmas-2026.js to restore the normal site.
 * Keep the printable menu light, as it is exported for social posts and paper.
 */
:root.christmas-theme{
 --cream:#FFF7E1;--cream-2:#F8EED5;--card:#FFFAEA;
 --ink:#790C12;--ink-soft:#790C12;--ink-faint:#934447;
 --sage:#790C12;--sage-soft:#F7EBD3;--line:#DABBAE;
 --pink:#A9474B;--pink-deep:#790C12;--pink-soft:#F8E4DC;
 --rose-on-tint:#790C12;
 --btn-bg:#790C12;--btn-fg:#FFF7E1;--btn-shadow:#530A10;
 --cranberry:#790C12;--ribbon-fill:#A43C40;--holly-fill:#EEDCC7;
 --gold:#790C12;--gold-soft:#EEDCC7;--gingham:rgba(121,12,18,.11);
 --shadow:rgba(121,12,18,.07);
}
:root.christmas-theme[data-theme="dark"]{
 --cream:#790C12;--cream-2:#701015;--card:#681014;
 --ink:#FFF7E1;--ink-soft:#FFF0D6;--ink-faint:#EED6C3;
 --sage:#FFF7E1;--sage-soft:#8B282C;--line:#B86060;
 --pink:#E4BEAC;--pink-deep:#FFF7E1;--pink-soft:#8B282C;
 --rose-on-tint:#FFF7E1;
 --btn-bg:#FFF7E1;--btn-fg:#790C12;--btn-shadow:#D9B49F;
 --cranberry:#FFF7E1;--ribbon-fill:#B85C5D;--holly-fill:#A64F4F;
 --gold:#FFF7E1;--gold-soft:#B85C5D;--gingham:rgba(255,247,225,.16);
 --shadow:rgba(38,0,5,.20);
}
@media(prefers-color-scheme:dark){
:root.christmas-theme:not(.christmas-menu):not([data-theme="light"]){
 --cream:#790C12;--cream-2:#701015;--card:#681014;
 --ink:#FFF7E1;--ink-soft:#FFF0D6;--ink-faint:#EED6C3;
 --sage:#FFF7E1;--sage-soft:#8B282C;--line:#B86060;
 --pink:#E4BEAC;--pink-deep:#FFF7E1;--pink-soft:#8B282C;
 --rose-on-tint:#FFF7E1;
 --btn-bg:#FFF7E1;--btn-fg:#790C12;--btn-shadow:#D9B49F;
 --cranberry:#FFF7E1;--ribbon-fill:#B85C5D;--holly-fill:#A64F4F;
 --gold:#FFF7E1;--gold-soft:#B85C5D;--gingham:rgba(255,247,225,.16);
 --shadow:rgba(38,0,5,.20);
}
}
.christmas-theme body{background:var(--cream)}
.christmas-menu{color-scheme:light}
.christmas-theme:not(.christmas-menu) .hero{position:relative;padding-top:11px;padding-bottom:6px}
.christmas-theme:not(.christmas-menu) .logo{position:relative;z-index:1;filter:drop-shadow(0 3px 1px rgba(87,63,41,.035))}
.christmas-theme:not(.christmas-menu) .clock{color:var(--sage);margin-top:6px}
.holiday-welcome strong{display:block;font-weight:600;font-size:1.34rem;letter-spacing:-.015em}
.holiday-welcome span{display:block;font-family:Quicksand,sans-serif;font-size:.86rem;font-weight:600;color:var(--ink-soft);margin-top:4px}
.christmas-theme:not(.christmas-menu) .tagline{font-size:.82rem;margin-top:8px;margin-bottom:15px}
.holiday-doodle{position:absolute;pointer-events:none;width:43px;color:var(--sage);top:39px;z-index:0}
.holiday-doodle.left{left:calc(50% - 133px);transform:rotate(-13deg)}
.holiday-doodle.right{left:calc(50% + 87px);width:34px;top:55px;color:var(--gold);transform:rotate(9deg)}
.christmas-theme:not(.christmas-menu) .gingham{height:17px;position:relative;overflow:visible;opacity:1;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background-color:var(--cream);background-image:repeating-linear-gradient(90deg,var(--gingham) 0 10px,transparent 10px 20px),repeating-linear-gradient(0deg,var(--gingham) 0 8px,transparent 8px 16px)}
.gingham-bow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:45px;height:37px;color:var(--cranberry);background:var(--cream);padding:1px 4px;border-radius:50%;pointer-events:none}
.christmas-theme:not(.christmas-menu) .drop{border-width:1px;background:var(--sage-soft);box-shadow:0 3px 0 var(--line);border-radius:18px}
.christmas-theme:not(.christmas-menu) .drop h2{color:var(--sage)}
.christmas-theme:not(.christmas-menu) .dates .date{border-width:1px;border-radius:10px;background:var(--card)}
.christmas-theme:not(.christmas-menu) .section-head{border-bottom:1.5px dashed var(--line);padding-bottom:11px;margin-top:28px}
.christmas-theme:not(.christmas-menu) .section-head h2,.christmas-theme:not(.christmas-menu) .faq h2{color:var(--sage)}
.christmas-theme:not(.christmas-menu) .section-head h2{display:flex;align-items:center;gap:8px}
.holiday-heading{width:23px;height:25px;color:var(--sage);flex:none}
.holiday-heading.star{color:var(--gold);width:20px}
.christmas-theme:not(.christmas-menu) .item{border:1px solid var(--line);box-shadow:0 3px 0 rgba(80,102,62,.07);border-radius:20px;margin-top:14px}
.christmas-theme:not(.christmas-menu) .item.open{border-color:var(--pink-deep);box-shadow:0 2px 0 var(--pink)}
.christmas-theme:not(.christmas-menu) .item-btn{padding-top:17px;padding-bottom:17px}
.christmas-theme:not(.christmas-menu) .item-name{color:var(--sage)}
.christmas-theme:not(.christmas-menu) .pill:not(.off):not(.soon){background:var(--sage-soft);color:var(--sage);border:1px solid var(--line)}
.christmas-theme:not(.christmas-menu) .item.open .pill{display:none}
.christmas-theme:not(.christmas-menu) .story{border:1px solid var(--line);background:var(--card);box-shadow:0 3px 0 rgba(80,102,62,.06);position:relative;padding:23px}
.christmas-theme:not(.christmas-menu) .story-highlight{color:var(--ink);border-left-color:var(--ribbon-fill)}
.christmas-theme:not(.christmas-menu) .igbar{background:var(--card);border-color:var(--line);color:var(--cranberry)}
.christmas-theme:not(.christmas-menu) .toplinks a{color:var(--sage)}
.christmas-theme:not(.christmas-menu) .cartbar{border-top-color:var(--line)}
.christmas-theme:not(.christmas-menu) #screen-done .done{padding-top:28px}
#screen-done .done .holiday-bunny{width:120px;height:140px;object-fit:contain;margin:0 auto 7px;filter:drop-shadow(0 4px 1px rgba(87,63,41,.03))}
.christmas-theme:not(.christmas-menu) #screen-done .done h1{color:var(--sage);margin-top:0}
#screen-done .done .holiday-thanks{color:var(--cranberry);font-size:.88rem;font-weight:700;margin:3px auto 18px;max-width:30ch}
@media(max-width:520px){
 .christmas-theme:not(.christmas-menu) .hero{padding-top:6px}.holiday-welcome strong{font-size:1.18rem}.holiday-welcome span{font-size:.79rem;max-width:31ch;margin:3px auto 0}
 .holiday-doodle.left{left:calc(50% - 118px);top:23px;width:36px}.holiday-doodle.right{left:calc(50% + 85px);top:36px;width:27px}
 .christmas-theme:not(.christmas-menu) .tagline{font-size:.78rem;margin:7px auto 13px}.christmas-theme:not(.christmas-menu) .gingham{margin-top:8px}
 .christmas-theme:not(.christmas-menu) .section-head h2{font-size:1.4rem}.christmas-theme:not(.christmas-menu) .item-btn{padding:15px 13px;gap:10px}.christmas-theme:not(.christmas-menu) .thumb{width:72px;height:71px}
}

.christmas-theme:not(.christmas-menu) body{background:var(--cream)}
.christmas-theme:not(.christmas-menu) .gingham-bow{color:var(--cranberry);background:var(--cream)}
.christmas-theme:not(.christmas-menu) .drop,.christmas-theme:not(.christmas-menu) .story{background:var(--card)}
.christmas-theme:not(.christmas-menu) .story-highlight{border-left-color:var(--cranberry)}
.christmas-theme:not(.christmas-menu) .pill:not(.off):not(.soon){background:var(--sage-soft);color:var(--ink);border-color:var(--line)}
.christmas-theme:not(.christmas-menu) .item.open{border-color:var(--cranberry);box-shadow:0 2px 0 var(--pink)}
.christmas-theme:not(.christmas-menu) :focus-visible{outline-color:var(--pink-deep)}

/* Seasonal decoration: a ten-second window, with no effect on page layout. */
.christmas-snow{position:fixed;inset:0;z-index:90;overflow:hidden;pointer-events:none;user-select:none;contain:strict;opacity:0;animation:christmas-snow-window 10s linear forwards}
.christmas-snow__flake{position:absolute;top:-44px;left:var(--snow-left);width:var(--snow-size);height:var(--snow-size);opacity:var(--snow-opacity);color:#FFFFFF;font-family:Georgia,"Times New Roman",serif;font-size:var(--snow-size);line-height:1;font-weight:700;text-align:center;-webkit-text-stroke:.8px #B8D9EE;text-shadow:0 1px 2px #CDE6F6,0 2px 4px rgba(136,185,217,.45);animation:christmas-snow-fall var(--snow-duration) var(--snow-delay) linear infinite;will-change:transform}
.christmas-snow__flake.dot{background:#FFFFFF;border:1px solid #B8D9EE;border-radius:50%;box-shadow:0 1px 3px rgba(136,185,217,.55)}
@keyframes christmas-snow-fall{from{transform:translate3d(0,-24px,0) rotate(0deg)}to{transform:translate3d(var(--snow-drift),calc(100vh + 64px),0) rotate(var(--snow-spin))}}
@supports(height:100dvh){@keyframes christmas-snow-fall{from{transform:translate3d(0,-24px,0) rotate(0deg)}to{transform:translate3d(var(--snow-drift),calc(100dvh + 64px),0) rotate(var(--snow-spin))}}}
@keyframes christmas-snow-window{0%{opacity:0}4%,88%{opacity:1}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.christmas-snow{display:none!important;animation:none!important}.christmas-snow__flake{animation:none!important}}

.christmas-theme ol.steps li.done .dot{color:var(--btn-fg)}
@media print{
 .christmas-snow{display:none!important}
 :root.christmas-theme,:root.christmas-theme[data-theme="dark"],:root.christmas-theme:not(.christmas-menu):not([data-theme="light"]){
 --cream:#FFF7E1;--cream-2:#F8EED5;--card:#FFFAEA;
 --ink:#790C12;--ink-soft:#790C12;--ink-faint:#934447;
 --sage:#790C12;--sage-soft:#F7EBD3;--line:#DABBAE;
 --pink:#A9474B;--pink-deep:#790C12;--pink-soft:#F8E4DC;
 --rose-on-tint:#790C12;
 --btn-bg:#790C12;--btn-fg:#FFF7E1;--btn-shadow:#530A10;
 --cranberry:#790C12;--ribbon-fill:#A43C40;--holly-fill:#EEDCC7;
 --gold:#790C12;--gold-soft:#EEDCC7;--gingham:rgba(121,12,18,.11);
 --shadow:rgba(121,12,18,.07);
}
}
