@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(../media/9ffc08a38813e78e-s.0y4xxz2y19qqs.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(../media/44c9372a001b48d5-s.0yczt4r3j28ff.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(../media/61715dc81dd9b4e8-s.p.0ez3bnoxb63ra.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka Fallback;src:local(Arial);ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.0%;size-adjust:101.84%}._21tPjq_className{font-family:Fredoka,Fredoka Fallback;font-style:normal}._21tPjq_variable{--font-face-display:"Fredoka", "Fredoka Fallback"}
@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/e27b85d01cb4b1af-s.1zkvd_innyig_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/10e5db483fb7b6ef-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/01a1b57b2e0cef27-s.1vcas2uk12q5a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/648e19a466ec92f1-s.2demiz2t05dx4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/29e2a75af8e45044-s.p.2kjei9psvcorz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.-\39 Kogq_className{font-family:Nunito,Nunito Fallback;font-style:normal}.-\39 Kogq_variable{--font-face-body:"Nunito", "Nunito Fallback"}
:root{--color-red:#b42318;--color-pine:#14532d;--color-cream:#fdf6e3;--color-gold:#d9a441;--color-night:#22304a;--color-wood:#8a5a3b;--color-red-700:#902625;--color-red-300:#e3ac9c;--color-red-200:#eeccba;--color-red-100:#f6e3d1;--color-pine-800:#0e3a20;--color-pine-400:#7d9c7f;--color-pine-100:#dadec8;--color-gold-700:#a37b31;--color-gold-300:#ebcd92;--color-gold-100:#f6e6c3;--color-night-900:#0f1621;--color-night-800:#1a2438;--color-night-600:#434e61;--color-night-500:#646b78;--color-night-300:#9ca2ae;--color-night-200:#c8cbd2;--color-night-100:#e9eaed;--color-wood-800:#613f29;--color-wood-400:#c4a88f;--color-wood-200:#dfcdb7;--color-wood-100:#f2e6d2;--color-snow:#fefcf7;--bg-page:var(--color-cream);--bg-surface:var(--color-snow);--bg-sunken:var(--color-wood-100);--bg-note:var(--color-gold-100);--bg-night:var(--color-night);--bg-night-deep:var(--color-night-800);--bg-safety:var(--color-red-100);--bg-selected:var(--color-pine-100);--text:var(--color-night);--text-muted:var(--color-night-500);--text-on-night:var(--color-cream);--text-on-night-muted:var(--color-night-200);--text-on-accent:var(--color-snow);--text-safety:var(--color-night);--text-safety-label:var(--color-red-700);--accent:var(--color-red);--accent-hover:var(--color-red-700);--accent-2:var(--color-pine);--accent-2-hover:var(--color-pine-800);--highlight:var(--color-gold);--highlight-on-night:var(--color-gold);--link:var(--color-pine);--link-hover:var(--color-red-700);--border:var(--color-wood-100);--border-strong:var(--color-wood-400);--border-control:var(--color-night-500);--border-on-night:var(--color-night-600);--border-control-on-night:var(--color-night-300);--focus-ring:var(--color-night);--focus-ring-on-night:var(--color-gold);--focus-width:3px;--focus-offset:3px;--font-display:var(--font-face-display,"Fredoka"), ui-rounded, "Arial Rounded MT Bold", "Hiragino Maru Gothic ProN", "Trebuchet MS", system-ui, sans-serif;--font-body:var(--font-face-body,"Nunito"), ui-rounded, "Avenir Next", "Segoe UI", system-ui, -apple-system, sans-serif;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--text-xs:.8125rem;--text-sm:.9375rem;--text-base:1.0625rem;--text-md:1.1875rem;--text-lg:clamp(1.3125rem, 1.2rem + .5vw, 1.5rem);--text-xl:clamp(1.5625rem, 1.35rem + 1vw, 2rem);--text-2xl:clamp(1.9375rem, 1.55rem + 1.9vw, 2.75rem);--text-3xl:clamp(2.25rem, 1.7rem + 2.8vw, 3.5rem);--leading-tight:1.12;--leading-snug:1.3;--leading-body:1.55;--tracking-display:-.01em;--tracking-label:.06em;--measure:62ch;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--gutter:clamp(1rem, .6rem + 2vw, 2rem);--section-gap:clamp(2.5rem, 1.8rem + 3vw, 4.5rem);--content-max:72rem;--reading-max:44rem;--touch-min:2.75rem;--touch-big:4.5rem;--radius-sm:.5rem;--radius-md:.875rem;--radius-lg:1.375rem;--radius-pill:999px;--shadow-paper:0 2px 0 var(--color-wood-100);--shadow-lift:0 5px 0 var(--color-wood-400);--shadow-button:0 4px 0 var(--color-red-700);--shadow-button-2:0 4px 0 var(--color-pine-800);--shadow-on-night:0 4px 0 var(--color-night-800);--shadow-pressed:0 1px 0 var(--color-night-800);--duration-instant:80ms;--duration-fast:.14s;--duration-base:.22s;--duration-slow:.42s;--stagger:70ms;--ease-out:cubic-bezier(.22, .8, .3, 1);--ease-in-out:cubic-bezier(.6, 0, .3, 1);--ease-bounce:cubic-bezier(.34, 1.45, .64, 1);--lift:-3px;--press:3px;--wiggle:6deg;--z-base:0;--z-raised:1;--z-sticky:10;--z-overlay:20}@media (prefers-reduced-motion:reduce){:root{--duration-instant:0s;--duration-fast:0s;--duration-base:0s;--duration-slow:0s;--stagger:0s;--ease-bounce:linear;--lift:0px;--press:0px;--wiggle:0deg}}
*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg-page);min-height:100dvh;color:var(--text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;display:flex}body>main{flex:1}h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);text-wrap:balance}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p{text-wrap:pretty}img,picture,svg,video{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}ul[role=list],ol[role=list]{padding:0;list-style:none}a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:.09em}a:hover{color:var(--link-hover)}:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset);border-radius:var(--radius-sm)}.on-night{--focus-ring:var(--focus-ring-on-night)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.skip-link{left:var(--space-3);z-index:var(--z-overlay);padding:var(--space-3) var(--space-4);background:var(--bg-night);color:var(--text-on-night);border-radius:var(--radius-sm);position:absolute;top:-4rem}.skip-link:focus{top:var(--space-3);color:var(--text-on-night)}.wrap{width:100%;max-width:var(--content-max);padding-inline:var(--gutter);margin-inline:auto}.section{margin-top:var(--section-gap)}.section__head{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.section__sub{color:var(--text-muted);font-size:var(--text-sm);max-width:var(--measure)}.eyebrow{font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--accent)}.on-night .eyebrow{color:var(--highlight-on-night)}.icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.25em;height:1.25em}.stack-3>*+*{margin-top:var(--space-3)}.stack-4>*+*{margin-top:var(--space-4)}.site-header{z-index:var(--z-sticky);background:var(--bg-page);border-bottom:2px solid var(--border);position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:0 var(--space-4);flex-wrap:wrap;display:flex}.brand{align-items:center;gap:var(--space-2);min-height:var(--touch-min);color:var(--text);font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-md);text-decoration:none;display:inline-flex}.brand:hover{color:var(--text)}.brand__mark{transform-origin:50% 90%;width:2.5rem;height:2.5rem;transition:transform var(--duration-base) var(--ease-bounce)}.brand:hover .brand__mark{transform:rotate(var(--wiggle))}.site-nav{margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);scrollbar-width:none;max-width:100vw;overflow-x:auto}.site-nav::-webkit-scrollbar{display:none}.site-nav ul{gap:var(--space-1);display:flex}.site-nav a{min-height:var(--touch-min);padding-inline:var(--space-3);color:var(--text);font-weight:var(--weight-bold);font-size:var(--text-sm);border-radius:var(--radius-pill);white-space:nowrap;align-items:center;text-decoration:none;display:inline-flex}.site-nav a:hover{background:var(--bg-sunken);color:var(--text)}.site-nav a[aria-current=page]{background:var(--bg-selected);color:var(--accent-2)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:3rem;padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill);background:var(--accent);color:var(--text-on-accent);box-shadow:var(--shadow-button);font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-base);line-height:var(--leading-snug);text-align:center;transition:transform var(--duration-instant) var(--ease-out), box-shadow var(--duration-instant) var(--ease-out), background-color var(--duration-fast) var(--ease-out);border:0;text-decoration:none;display:inline-flex}.btn:hover{background:var(--accent-hover);color:var(--text-on-accent)}.btn:active{transform:translateY(var(--press));box-shadow:var(--shadow-pressed)}.btn--secondary{background:var(--accent-2);box-shadow:var(--shadow-button-2)}.btn--secondary:hover{background:var(--accent-2-hover)}.btn--gold{background:var(--highlight);color:var(--text);box-shadow:0 4px 0 var(--color-gold-700)}.btn--gold:hover{background:var(--color-gold-300);color:var(--text)}.btn--ghost{color:var(--text);box-shadow:inset 0 0 0 2px var(--border-control);background:0 0}.btn--ghost:hover{background:var(--bg-sunken);color:var(--text)}.on-night .btn--ghost{color:var(--text-on-night);box-shadow:inset 0 0 0 2px var(--border-control-on-night)}.on-night .btn--ghost:hover{background:var(--bg-night-deep);color:var(--text-on-night)}.btn--small{min-height:var(--touch-min);padding-inline:var(--space-4);font-size:var(--text-sm)}.btn--block{width:100%}.btn[disabled],.btn[aria-disabled=true]{background:var(--bg-sunken);color:var(--text);box-shadow:inset 0 0 0 2px var(--border-strong);cursor:not-allowed;transform:none}.actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chips--scroll{margin-inline:calc(var(--gutter) * -1);padding:var(--space-1) var(--gutter);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.chips--scroll::-webkit-scrollbar{display:none}.chip{align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--bg-surface);color:var(--text);box-shadow:inset 0 0 0 2px var(--border-control);font-size:var(--text-sm);font-weight:var(--weight-bold);white-space:nowrap;transition:background-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);border:0;flex:none;text-decoration:none;display:inline-flex}.chip:hover{background:var(--bg-sunken);color:var(--text)}.chip[aria-pressed=true],.chip[aria-current=true]{background:var(--bg-selected);color:var(--accent-2);box-shadow:inset 0 0 0 2px var(--accent-2)}.chip .icon{width:1.1em;height:1.1em}.meta{gap:var(--space-1) var(--space-3);color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);flex-wrap:wrap;display:flex}.meta li{align-items:center;gap:.3em;display:inline-flex}.badge{padding:.15rem var(--space-3);border-radius:var(--radius-pill);background:var(--highlight);color:var(--text);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;align-items:center;gap:.35em;display:inline-flex}.finder{padding-block:var(--space-4) var(--space-3)}.search{gap:var(--space-2);display:flex}.field{min-width:0;min-height:3rem;padding:0 var(--space-4);border:2px solid var(--border-control);border-radius:var(--radius-pill);background:var(--bg-surface);color:var(--text);flex:1}.field::placeholder{color:var(--text-muted);opacity:1}.field:hover{border-color:var(--text)}.field:disabled{background:var(--bg-sunken);border-color:var(--border-strong);cursor:not-allowed}.search .btn{padding-inline:var(--space-4)}.finder__filters{margin-top:var(--space-3)}.finder__label{font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);display:block}.tonight{margin-top:var(--space-8);background:var(--bg-night);color:var(--text-on-night);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-4) var(--space-5);position:relative}.tonight__elf{right:var(--space-5);pointer-events:none;width:5.5rem;position:absolute;top:0;transform:translateY(-96%)}.tonight__stars{border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.tonight__stars i{background:var(--highlight);border-radius:50%;width:6px;height:6px;position:absolute}.tonight__stars i:nth-child(2n){background:var(--color-gold-300);width:4px;height:4px}.tonight__stars i:first-child{top:26px;right:6%}.tonight__stars i:nth-child(2){top:14px;right:22%}.tonight__stars i:nth-child(3){top:30px;right:38%}.tonight__stars i:nth-child(4){top:58px;right:12%}.tonight__stars i:nth-child(5){top:104px;right:3%}.tonight__stars i:nth-child(6){top:66px;right:30%}.tonight__stars i:nth-child(7){bottom:10px;left:2%}.tonight__stars i:nth-child(8){bottom:14px;right:4%}.tonight__stars i:nth-child(9){bottom:8px;right:46%}.tonight>:not(.tonight__stars):not(.tonight__elf){position:relative}.tonight h1{font-size:var(--text-3xl);max-width:14ch}.tonight__lead{margin-top:var(--space-2);color:var(--text-on-night-muted);max-width:44ch}.criteria{margin-top:var(--space-4);gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.crit{justify-content:center;align-items:center;gap:var(--space-1);min-height:var(--touch-big);padding:var(--space-3) var(--space-1);border-radius:var(--radius-md);background:var(--bg-night-deep);color:var(--text-on-night);box-shadow:inset 0 0 0 2px var(--border-control-on-night);font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-base);line-height:var(--leading-tight);text-align:center;transition:transform var(--duration-instant) var(--ease-out), background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);border:0;flex-direction:column;display:flex;position:relative}.crit .icon{width:1.75rem;height:1.75rem}.crit:hover{box-shadow:inset 0 0 0 2px var(--highlight)}.crit:active{transform:translateY(var(--press))}.crit[aria-pressed=true]{background:var(--highlight);color:var(--text);box-shadow:0 4px 0 var(--color-gold-700)}.crit__tick{top:var(--space-1);right:var(--space-1);background:var(--color-night);width:1.375rem;height:1.375rem;color:var(--highlight);stroke-width:3px;border-radius:50%;padding:3px;display:none;position:absolute}.crit .crit__tick{width:1.375rem;height:1.375rem}.crit[aria-pressed=true] .crit__tick{display:block}.tonight__status{margin-top:var(--space-4);font-size:var(--text-base);min-height:1.6em}.tonight__status strong{color:var(--highlight-on-night);font-weight:var(--weight-bold)}.tonight__status--fallback{padding:var(--space-3);border-radius:var(--radius-md);background:var(--bg-night-deep);box-shadow:inset 0 0 0 2px var(--highlight)}.tonight__results{margin-top:var(--space-3);gap:var(--space-3);display:grid}.tonight__actions{margin-top:var(--space-4);align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.tonight__actions a{color:var(--text-on-night);font-weight:var(--weight-bold);min-height:var(--touch-min);align-items:center;display:inline-flex}.tonight__actions a:hover{color:var(--highlight-on-night)}.cards{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.card{background:var(--bg-surface);height:100%;color:var(--text);border-radius:var(--radius-md);box-shadow:inset 0 0 0 2px var(--border), var(--shadow-paper);transition:transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.card:hover,.card:focus-within{transform:translateY(var(--lift));box-shadow:inset 0 0 0 2px var(--border-strong), var(--shadow-lift)}.card__img{aspect-ratio:1;object-fit:cover;background:var(--bg-sunken);width:100%}.card__body{gap:var(--space-2);padding:var(--space-3);flex-direction:column;display:flex}.card__title{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-md);line-height:var(--leading-snug)}.card__title a{color:inherit;text-decoration:none}.card__title a:after{content:"";position:absolute;inset:0}.card__title a:focus-visible{outline:none}.card:has(a:focus-visible){outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset)}.card--row{flex-direction:row;align-items:stretch}.card--row .card__img{flex:none;width:6.75rem}.card--row .card__body{justify-content:center}.cards--rows{grid-template-columns:minmax(0,1fr)}.on-night .card{box-shadow:var(--shadow-on-night)}.on-night .card:hover,.on-night .card:focus-within{box-shadow:0 7px 0 var(--color-night-800)}@keyframes deal{0%{opacity:0;transform:translateY(18px)rotate(-2deg)}to{opacity:1;transform:none}}.is-dealt .card{animation:deal var(--duration-slow) var(--ease-bounce) both}.is-dealt li:nth-child(2) .card{animation-delay:var(--stagger)}.is-dealt li:nth-child(3) .card{animation-delay:calc(var(--stagger) * 2)}.feature{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:inset 0 0 0 2px var(--border), var(--shadow-paper);display:grid;overflow:hidden}.feature__img{aspect-ratio:1200/628;object-fit:cover;width:100%}.feature__body{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);flex-direction:column;display:flex}.feature__body h2 a{color:var(--text);text-decoration:none}.feature__body h2 a:hover{color:var(--accent)}.quote{padding-left:var(--space-3);border-left:4px solid var(--highlight);font-family:var(--font-display);font-size:var(--text-md)}.quote small{font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);display:block}.hubs{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hub{justify-content:space-between;align-items:center;gap:var(--space-2);height:100%;min-height:3.5rem;padding:var(--space-2) var(--space-4);background:var(--bg-surface);color:var(--text);border-radius:var(--radius-md);box-shadow:inset 0 0 0 2px var(--border-strong);font-family:var(--font-display);font-weight:var(--weight-semibold);transition:transform var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);text-decoration:none;display:flex}.hub:hover{background:var(--bg-selected);color:var(--accent-2);transform:translateY(var(--lift))}.hub .icon{color:var(--accent)}.signup{background:var(--bg-note);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-4);box-shadow:inset 0 0 0 2px var(--color-gold-300);position:relative}.signup__elf{right:var(--space-4);pointer-events:none;width:4.5rem;position:absolute;top:0;transform:translateY(-96%)}.signup h2{margin-top:var(--space-2)}.signup__lead{margin-top:var(--space-2);max-width:46ch}.signup__form{margin-top:var(--space-4);gap:var(--space-2);max-width:34rem;display:grid}.signup__form label{font-size:var(--text-sm);font-weight:var(--weight-bold)}.signup__status{gap:var(--space-2);margin-top:var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-semibold);align-items:flex-start;max-width:46ch;display:flex}.signup__status .icon{color:var(--accent-2);margin-top:.15em}.site-footer{margin-top:var(--section-gap);background:var(--bg-night-deep);color:var(--text-on-night);padding-block:var(--space-6)}.site-footer a{color:var(--text-on-night)}.site-footer a:hover{color:var(--highlight-on-night)}.footer-nav{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.footer-nav h2{font-size:var(--text-sm);font-family:var(--font-body);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--highlight-on-night);margin-bottom:var(--space-1)}.footer-nav a{min-height:var(--touch-min);align-items:center;display:inline-flex}.footer-legal{margin-top:var(--space-5);padding-top:var(--space-4);border-top:2px solid var(--border-on-night);gap:var(--space-2);font-size:var(--text-xs);color:var(--text-on-night-muted);max-width:70ch;display:grid}.footer-legal strong{color:var(--text-on-night)}.crumbs{padding-block:var(--space-3) 0;font-size:var(--text-sm);font-weight:var(--weight-bold)}.crumbs a{align-items:center;gap:var(--space-1);min-height:var(--touch-min);display:inline-flex}.idea{gap:var(--space-5);display:grid}.idea__main{gap:var(--space-6);min-width:0;max-width:var(--reading-max);display:grid}.idea__head{gap:var(--space-3);display:grid}.art{width:100%;max-width:26rem;margin-inline:auto}.art__frame{border-radius:var(--radius-lg);box-shadow:inset 0 0 0 2px var(--border), var(--shadow-paper);background:var(--bg-sunken);position:relative;overflow:hidden}.art__frame img{aspect-ratio:2/3;width:100%}.pin-btn{top:var(--space-3);right:var(--space-3);z-index:var(--z-raised);align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-4);background:var(--accent);color:var(--text-on-accent);border-radius:var(--radius-pill);box-shadow:var(--shadow-button);font-family:var(--font-display);font-weight:var(--weight-semibold);transition:transform var(--duration-instant) var(--ease-out), background-color var(--duration-fast) var(--ease-out);text-decoration:none;display:inline-flex;position:absolute}.pin-btn:hover{background:var(--accent-hover);color:var(--text-on-accent)}.pin-btn:active{transform:translateY(var(--press));box-shadow:var(--shadow-pressed)}.pin-btn:focus-visible{outline-color:var(--color-snow);box-shadow:0 0 0 6px var(--focus-ring);border-radius:var(--radius-pill)}.art__note{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);text-align:center}.facts{background:var(--border-strong);border-radius:var(--radius-md);box-shadow:0 0 0 2px var(--border-strong);grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;display:grid;overflow:hidden}.fact{gap:var(--space-2);padding:var(--space-3);background:var(--bg-sunken);align-items:flex-start;display:flex}.fact .icon{width:1.5rem;height:1.5rem;color:var(--accent);margin-top:.1em}.fact dt{font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase}.fact dd{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-md);line-height:var(--leading-snug);margin:0}.checklist{gap:var(--space-2);display:grid}.check{column-gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:inset 0 0 0 2px var(--border);grid-template-columns:auto 1fr;align-items:start;display:grid}.check:has(input:checked){background:var(--bg-selected);box-shadow:inset 0 0 0 2px var(--accent-2)}.check__label{align-items:center;gap:var(--space-3);min-height:var(--touch-min);cursor:pointer;font-weight:var(--weight-semibold);grid-column:1/-1;display:flex}.check input{appearance:none;border:2px solid var(--border-control);border-radius:var(--radius-sm);background:var(--bg-surface);cursor:pointer;width:1.75rem;height:1.75rem;transition:background-color var(--duration-fast) var(--ease-out);flex:none;place-content:center;margin:0;display:grid}.check input:after{content:"";border:solid var(--text-on-accent);width:.5rem;height:.9rem;transition:transform var(--duration-base) var(--ease-bounce);border-width:0 3px 3px 0;margin-top:-.2rem;transform:rotate(45deg)scale(0)}.check input:checked{background:var(--accent-2);border-color:var(--accent-2)}.check input:checked:after{transform:rotate(45deg)scale(1)}.check input:checked+span{text-decoration:line-through;text-decoration-thickness:.09em}.disclosure{font-size:var(--text-sm);color:var(--text-muted);max-width:var(--measure)}.kit{gap:var(--space-3);justify-items:start;display:grid}.buy-links{gap:var(--space-1);display:grid}.buy-links a{align-items:center;gap:var(--space-1);min-height:var(--touch-min);font-weight:var(--weight-bold);display:inline-flex}.buy-links .icon{width:1em;height:1em}.steps{gap:var(--space-4);counter-reset:step;display:grid}.steps li{counter-increment:step;gap:var(--space-3);grid-template-columns:auto 1fr;align-items:start;display:grid}.steps li:before{content:counter(step);background:var(--bg-night);width:2.5rem;height:2.5rem;color:var(--highlight-on-night);font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-md);border-radius:50%;place-content:center;display:grid}.steps p{font-size:var(--text-md);max-width:var(--measure);padding-top:.35rem}.callout{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);grid-template-columns:auto 1fr;display:grid}.callout>div>*+*{margin-top:var(--space-2)}.callout--safety{background:var(--bg-safety);color:var(--text-safety);box-shadow:inset 0 0 0 2px var(--accent)}.callout--safety .icon{width:1.75rem;height:1.75rem;color:var(--text-safety-label)}.callout__label{font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-safety-label)}.callout--safety p{font-weight:var(--weight-bold);font-size:var(--text-md);line-height:var(--leading-snug)}.callout--variation{background:var(--bg-selected);box-shadow:inset 0 0 0 2px var(--accent-2)}.callout--variation .icon{width:1.75rem;height:1.75rem;color:var(--accent-2)}.callout--variation .callout__label{color:var(--accent-2)}.callout--info{background:var(--bg-surface);box-shadow:inset 0 0 0 2px var(--border-strong)}.callout--info .icon{width:1.75rem;height:1.75rem;color:var(--accent-2)}.callout--info .callout__label{color:var(--accent-2)}.note{max-width:28rem;margin-top:var(--space-5);padding:var(--space-5) var(--space-4) var(--space-4);background:var(--bg-note);border-radius:var(--radius-sm);box-shadow:var(--shadow-lift);position:relative;transform:rotate(-1.2deg)}.note:before{content:"";background:var(--color-gold-300);width:5.5rem;height:1.5rem;margin-left:-2.75rem;position:absolute;top:-.7rem;left:50%;transform:rotate(2deg)}.note__elf{right:var(--space-3);width:4rem;position:absolute;top:0;transform:translateY(-96%)}.note__label{font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--accent)}.note blockquote{margin:var(--space-1) 0 0;font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--text-xl);line-height:var(--leading-snug)}.note__hint{margin-top:var(--space-2);font-size:var(--text-sm)}.hub-links{gap:var(--space-2);display:grid}.page-head{padding-top:var(--space-5);gap:var(--space-3);max-width:var(--reading-max);display:grid}.page-head__lead{font-size:var(--text-md);max-width:var(--measure)}.prose{max-width:var(--reading-max)}.prose>*+*{margin-top:var(--space-4)}.prose h2{margin-top:var(--space-6)}.prose ul{padding-left:1.25em}.prose li+li{margin-top:var(--space-2)}.panel{background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:inset 0 0 0 2px var(--border);padding:var(--space-4)}.empty{justify-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);text-align:center;background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:inset 0 0 0 2px var(--border);display:grid}.empty img{width:10rem}.count{color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.explorer{gap:var(--space-5);margin-top:var(--space-5);display:grid}.filters{gap:var(--space-4);display:grid}.filters fieldset{border:0;min-width:0;margin:0;padding:0}.filters legend{margin-bottom:var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);padding:0}.filters__bar{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.filters__body{gap:var(--space-4);display:grid}.filters[data-open=false] .filters__body{display:none}.planner-tools{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.calendar{gap:var(--space-2);grid-template-columns:minmax(0,1fr);display:grid}.day{gap:var(--space-2);padding:var(--space-3);background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:inset 0 0 0 2px var(--border);display:grid}.day--weekend{box-shadow:inset 0 0 0 2px var(--border-strong);background:var(--bg-note)}.day__date{align-items:baseline;gap:var(--space-2);font-family:var(--font-display);font-weight:var(--weight-semibold);display:flex}.day__num{font-size:var(--text-xl);line-height:1}.day__wd{font-size:var(--text-sm);color:var(--text-muted);font-family:var(--font-body);font-weight:var(--weight-bold)}.day__idea{font-weight:var(--weight-bold);line-height:var(--leading-snug)}.day select{width:100%;min-height:var(--touch-min);padding:0 var(--space-2);border:2px solid var(--border-control);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--text-sm)}.shopping{gap:var(--space-2);padding-left:0;list-style:none;display:grid}.shopping li{padding:var(--space-2) var(--space-3);background:var(--bg-surface);border-radius:var(--radius-sm);box-shadow:inset 0 0 0 2px var(--border);gap:.1rem;display:grid}.shopping small{color:var(--text-muted);font-size:var(--text-xs)}.sheets{gap:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}.sheet{gap:var(--space-3);padding:var(--space-5) var(--space-4);background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:inset 0 0 0 2px var(--border), var(--shadow-paper);align-content:start;display:grid}.sheet__paper{padding:var(--space-5) var(--space-4);border:3px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-page);gap:var(--space-3);display:grid}.sheet__paper h3{font-size:var(--text-xl);text-align:center}.sheet__line{border-bottom:2px solid var(--border-control);min-height:2rem}.sheet__text{font-family:var(--font-display);font-size:var(--text-md);text-align:center}.staples{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.staple{gap:var(--space-2);padding:var(--space-4);background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:inset 0 0 0 2px var(--border);display:grid}.staple h3{font-size:var(--text-md)}.staple ul{gap:var(--space-1) var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}@media (min-width:40rem){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.cards--4,.hubs{grid-template-columns:repeat(4,minmax(0,1fr))}.tonight{padding:var(--space-6);margin-top:7rem}.tonight__elf{width:7.5rem;right:var(--space-7)}.criteria{gap:var(--space-3);max-width:40rem}.crit{gap:var(--space-2);font-size:var(--text-md);flex-direction:row}.tonight__results,.cards--rows{grid-template-columns:repeat(3,minmax(0,1fr))}.card--row{flex-direction:column}.card--row .card__img{width:100%}.feature{grid-template-columns:1.15fr 1fr;align-items:center}.feature__body{padding:var(--space-5)}.signup{padding:var(--space-6)}.signup__form{grid-template-columns:1fr auto;align-items:end}.signup__form label{grid-column:1/-1}.facts,.footer-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.hub-links{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar,.sheets,.staples{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:60rem){.site-header__inner{flex-wrap:nowrap}.site-nav{margin:0;padding:0;overflow:visible}.idea{gap:var(--space-7);grid-template-columns:minmax(0,24rem) minmax(0,1fr);align-items:start}.idea__art{grid-row:1/span 2;position:sticky;top:5.5rem}.idea__head,.idea__main{grid-column:2}.explorer{grid-template-columns:17rem minmax(0,1fr);align-items:start}.explorer .filters{max-height:calc(100dvh - 6.5rem);padding:var(--space-1);position:sticky;top:5.5rem;overflow-y:auto}.explorer .filters[data-open=false] .filters__body{display:grid}.filters__toggle{display:none}.calendar{grid-template-columns:repeat(4,minmax(0,1fr))}.staples{grid-template-columns:repeat(3,minmax(0,1fr))}}@media print{.site-header,.site-footer,.skip-link,.no-print,.signup{display:none!important}body{background:var(--color-snow)}.day select{display:none}.calendar{grid-template-columns:repeat(4,minmax(0,1fr))}.print-only-one .sheet:not(.is-printing){display:none}.print-only-one .print-hide,.print-only-one .sheet__meta{display:none!important}.print-only-one .sheet{padding:0}.sheet{box-shadow:none;break-inside:avoid}}
