*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0}canvas,img,svg{max-width:100%}[hidden]{display:none!important}a{color:inherit}:root{--paper:#F2F5F1;--card:#FFFFFF;--ink:#142A26;--muted:#5A6D68;--line:#D5DED9;--ribbon:#C22B3E;--ribbon-ink:#FFFFFF;--tag:#E2AE48;--tag-ink:#3A2A08;--pine:#1F4A40;--soft:#E7EEEA;--ok:#2E7D5B;--warn:#A86400;--f-display:"Young Serif",Georgia,"Times New Roman",serif;--f-body:"Outfit Variable",system-ui,-apple-system,"Segoe UI",sans-serif;--f-mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;--r:14px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0E1C19;--card:#162824;--ink:#E8F0EC;--muted:#93A7A1;--line:#29403A;--ribbon:#E4576A;--ribbon-ink:#1A0A0D;--tag:#E8BA5A;--tag-ink:#2A1D04;--pine:#8CC6B4;--soft:#1C312C;--ok:#6CC59B;--warn:#E3A44A;color-scheme:dark}}:root[data-theme=dark]{--paper:#0E1C19;--card:#162824;--ink:#E8F0EC;--muted:#93A7A1;--line:#29403A;--ribbon:#E4576A;--ribbon-ink:#1A0A0D;--tag:#E8BA5A;--tag-ink:#2A1D04;--pine:#8CC6B4;--soft:#1C312C;--ok:#6CC59B;--warn:#E3A44A;color-scheme:dark}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.55;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:0 48px}.wrap{max-width:1120px;margin:0 auto}.narrow{max-width:560px}.mid,.narrow{margin:0 auto}.mid{max-width:760px}header.top{justify-content:space-between;gap:12px;padding-block:18px}.brand,header.top{display:flex;align-items:center}.brand{gap:10px;text-decoration:none;color:var(--ink);font-family:var(--f-display);font-size:22px}.brand svg{width:30px;height:30px}h1,h2,h3{font-family:var(--f-display);font-weight:400;text-wrap:balance;margin:0;line-height:1.15}h1{font-size:clamp(32px,6vw,50px)}h2{font-size:26px}h3{font-size:19px}p{margin:0}body{overflow-wrap:anywhere}.muted{color:var(--muted)}.small{font-size:14px}.tiny{font-size:12.5px}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:600}.stack{flex-direction:column;gap:14px}.row,.stack{display:flex}.row{gap:10px;flex-wrap:wrap;align-items:center}.between{justify-content:space-between}.btn{font:inherit;font-weight:600;border:0;border-radius:999px;padding:11px 20px;cursor:pointer;background:var(--ribbon);color:var(--ribbon-ink);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .12s,filter .12s;white-space:nowrap;overflow-wrap:normal;flex-shrink:0}.btn:hover{filter:brightness(1.07)}.btn:active{transform:translateY(1px)}.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}.btn.small{padding:7px 14px;font-size:14px}.btn.block{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed}.link{all:unset;cursor:pointer;color:var(--pine);font-weight:600;font-size:14px}.link:hover{text-decoration:underline}.link:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #1F5FBF;outline-offset:2px}.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--card);color:var(--ink);padding:10px 14px;border-radius:10px}.skip:focus{left:12px}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px}label{font-weight:600;font-size:14px;display:block;margin-bottom:6px}input,select,textarea{font:inherit;width:100%;padding:10px 12px;border-radius:10px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink)}textarea{min-height:76px;resize:vertical}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--ribbon)}.check{display:flex;gap:8px;align-items:center;font-weight:500;margin:0}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:560px){.grid2{grid-template-columns:1fr}}.choices{display:flex;flex-wrap:wrap;gap:8px}.choice{font:inherit;font-weight:600;font-size:14px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;padding:9px 14px;cursor:pointer}.choice[aria-pressed=true]{border-color:var(--ribbon);background:var(--soft);background:color-mix(in srgb,var(--ribbon) 10%,var(--card))}.optlist{display:flex;flex-direction:column;gap:8px}.opt{font:inherit;text-align:left;font-weight:600;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;padding:12px 14px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px}.opt[aria-pressed=true]{border-color:var(--ribbon);background:var(--soft);background:color-mix(in srgb,var(--ribbon) 10%,var(--card))}.opt:disabled{opacity:.5;cursor:not-allowed}.hero{padding-block:24px 8px;display:grid;grid-template-columns:1.2fr .8fr;grid-gap:24px;gap:24px;align-items:center}@media (max-width:700px){.hero{grid-template-columns:1fr}}.hero p.lede{font-size:19px;color:var(--muted);max-width:36ch;margin-top:12px}.hat{aspect-ratio:1/1;max-width:100%;width:260px;justify-self:center}.hat canvas{width:100%;height:100%}.tags{display:flex;flex-wrap:wrap;gap:10px}.tag{--h:38px;position:relative;display:inline-flex;align-items:center;gap:8px;height:var(--h);padding:0 14px 0 30px;background:var(--tag);color:var(--tag-ink);font-weight:600;-webkit-clip-path:polygon(16px 0,100% 0,100% 100%,16px 100%,0 50%);clip-path:polygon(16px 0,100% 0,100% 100%,16px 100%,0 50%);border-radius:0 8px 8px 0;white-space:nowrap}.tag:before{content:"";position:absolute;left:12px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--paper)}.tag.alt{background:var(--soft);color:var(--ink)}.progress{height:6px;border-radius:9px;background:var(--line);overflow:hidden}.progress span{display:block;height:100%;background:var(--ribbon);transition:width .3s}.list{flex-direction:column}.item,.list{display:flex}.item{align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.item:last-child{border-bottom:0}.grow{flex:1 1;min-width:0;overflow-wrap:anywhere}.pill{font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--soft);color:var(--muted);white-space:nowrap}.pill.ok{color:var(--ok)}.pill.warn{color:var(--warn)}.pill.red{color:var(--ribbon)}.note{padding:12px 14px;border-radius:10px;background:var(--soft);font-size:14px}.note.err{box-shadow:inset 3px 0 0 var(--ribbon)}.meta{display:flex;flex-direction:column;gap:8px;font-size:14px}.meta div{display:flex;gap:10px;align-items:center;padding:8px 12px;background:var(--soft);border-radius:10px}.dash{display:grid;grid-template-columns:1fr 1.15fr 1fr;grid-gap:16px;gap:16px;align-items:start}@media (max-width:980px){.dash{grid-template-columns:1fr 1fr}.dash .col3{grid-column:1/-1}}@media (max-width:680px){.dash{grid-template-columns:1fr}}.dash>div{gap:16px;min-width:0}.dash>div,.steps-v{display:flex;flex-direction:column}.steps-v{gap:0}.stepv{display:grid;grid-template-columns:26px 1fr;grid-gap:10px;gap:10px;padding:10px 0;position:relative}.stepv .dot{width:22px;height:22px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--card);z-index:1}.stepv.done .dot{background:var(--ok);border-color:var(--ok);color:var(--card)}.stepv.now .dot{border-color:var(--ribbon);color:var(--ribbon)}.stepv:not(:last-child):after{content:"";position:absolute;left:10px;top:34px;bottom:-8px;width:2px;background:var(--line)}.wishbar{display:flex;gap:4px}.wishbar i{width:18px;height:18px;border-radius:4px;background:var(--soft);border:1px solid var(--line)}.wishbar i.on{background:var(--tag);border-color:var(--tag)}.msg{padding:10px 12px;background:var(--soft);border-radius:10px}.chip,.msg b{font-size:14px}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:var(--soft)}.chip button{all:unset;cursor:pointer;opacity:.6}.chip button:hover{opacity:1}.wish{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px dashed var(--line)}.wish:last-child{border-bottom:0}.wish a{color:var(--pine);font-size:14px;overflow-wrap:anywhere}.wish.reserved .wt{text-decoration:line-through;color:var(--muted)}.code{font-family:var(--f-mono);font-size:13px;background:var(--paper);border:1px dashed var(--line);border-radius:8px;padding:10px 12px;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:all;-moz-user-select:all;user-select:all}.slot{height:96px;border-radius:var(--r);background:var(--pine);color:var(--paper);display:grid;place-items:center;font-family:var(--f-display);font-size:34px;overflow:hidden;position:relative;text-align:center;padding:0 12px}.slot.spin span{animation:blur .09s linear infinite}@keyframes blur{50%{opacity:.35;transform:translateY(6px)}}.slot.done{background:var(--ribbon);color:var(--ribbon-ink)}@media (prefers-reduced-motion:reduce){.slot.spin span{animation:none}}.toast{background:var(--ink);color:var(--paper);padding:10px 18px;border-radius:999px;font-weight:600;font-size:14px;z-index:20;max-width:calc(100% - 32px);text-align:center}.how{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;counter-reset:s}@media (max-width:700px){.how{grid-template-columns:1fr 1fr}}.how div{counter-increment:s;padding:16px;border-radius:var(--r);background:var(--soft);font-size:14px}.how div:before{content:counter(s);font-family:var(--f-display);font-size:26px;color:var(--ribbon);display:block}.how strong{display:block;margin-bottom:2px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:14px;gap:14px}.ideas{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px}.ideas a{display:block;padding:10px 12px;border-radius:10px;background:var(--soft);color:var(--ink);text-decoration:none;font-size:14px;font-weight:500}.ideas a:hover{background:var(--soft);background:color-mix(in srgb,var(--tag) 30%,var(--soft))}.sheet{position:fixed;inset:0;background:color-mix(in srgb,var(--ink) 45%,transparent);display:grid;place-items:center;z-index:15;padding:16px}@supports not (background:color-mix(in srgb,red 50%,blue)){.sheet,.winner{background:rgba(10,20,18,.5)}}.sheet .panel{width:min(520px,100%);max-height:85vh;overflow:auto}.navlink{color:var(--ink);text-decoration:none;font-weight:600;font-size:14px;padding:6px 8px;border-radius:8px}.navlink:hover,.navlink[aria-current=page]{background:var(--soft)}@media (max-width:560px){header.top{flex-wrap:wrap}.navlink{padding:6px 5px;font-size:13px}}.watch{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px}.watch i{width:8px;height:8px;border-radius:50%;background:var(--ok);display:inline-block}.live{font-size:13px;font-weight:700;color:var(--ribbon);letter-spacing:.08em;text-transform:uppercase}.xmas{--x-bg:#0F3328;--x-bg2:#0A251D;--x-ink:#F7F2E7;--x-mute:#C9D8CF;--x-gold:#EDC25E;--x-red:#D9384B;--x-green:#3E9A6B;position:relative;overflow:hidden;border-radius:22px;background:radial-gradient(120% 90% at 80% 10%,#17493A 0,var(--x-bg) 45%,var(--x-bg2) 100%);color:var(--x-ink);margin-top:6px;padding-block:44px 36px;padding-left:clamp(20px,4vw,48px);padding-right:clamp(20px,4vw,48px);isolation:isolate}.xmas:after{content:"";left:0;right:0;bottom:-1px;height:46px;background:linear-gradient(#F4F7F5,#F4F7F5) 0 100%/100% 14px no-repeat,radial-gradient(22% 70% at 6% 100%,#F4F7F5 98%,transparent 100%),radial-gradient(26% 95% at 28% 100%,#F4F7F5 98%,transparent 100%),radial-gradient(22% 75% at 50% 100%,#F4F7F5 98%,transparent 100%),radial-gradient(28% 100% at 74% 100%,#F4F7F5 98%,transparent 100%),radial-gradient(20% 70% at 96% 100%,#F4F7F5 98%,transparent 100%);opacity:.95}.xmas .snow,.xmas:after{position:absolute;z-index:0}.xmas .snow{inset:0;width:100%;height:100%;pointer-events:none}.xmas .lights{position:absolute;top:0;left:0;right:0;height:34px;z-index:2;display:flex;justify-content:space-around;pointer-events:none}.xmas .lights:before{content:"";position:absolute;left:-2%;right:-2%;top:-14px;height:30px;border-bottom:2px solid #2b4a3f;border-radius:0 0 50% 50%}.xmas .lights span{position:relative;top:12px;width:11px;height:16px;border-radius:50% 50% 50% 50%/40% 40% 60% 60%;background:var(--c);box-shadow:0 0 12px 3px var(--c);animation:twinkle 2.4s ease-in-out infinite;animation-delay:var(--d)}.xmas .lights span:before{content:"";position:absolute;top:-5px;left:3px;width:5px;height:5px;background:#3A5248;border-radius:1px}@keyframes twinkle{0%,to{opacity:1}50%{opacity:.35;box-shadow:0 0 4px 1px var(--c)}}.xmas .inner{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;grid-gap:24px;gap:24px;align-items:center}@media (max-width:720px){.xmas .inner{grid-template-columns:1fr}.xmas .hat{width:220px}}.xmas .kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--x-gold)}.xmas h1{color:var(--x-ink);font-size:clamp(36px,6.4vw,62px);margin-top:10px}.xmas h1 em{font-style:normal;color:var(--x-gold)}.xmas .lede{font-size:19px;color:var(--x-mute);max-width:36ch;margin-top:14px}.xmas .btn{background:var(--x-gold);color:#2A1D04}.xmas .btn.ghost{background:transparent;color:var(--x-ink);box-shadow:inset 0 0 0 1.5px rgba(247,242,231,.45)}.xmas .btn.ghost:hover{background:rgba(247,242,231,.08)}.countdown{display:flex;gap:8px;margin-top:24px;flex-wrap:wrap}.countdown div{min-width:72px;padding:10px 12px;border-radius:12px;background:rgba(247,242,231,.08);border:1px solid rgba(247,242,231,.16);text-align:center}.countdown b{display:block;font-family:var(--f-display);font-weight:400;font-size:30px;line-height:1;color:var(--x-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.countdown span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--x-mute)}.countdown-label{font-size:14px;color:var(--x-mute);margin-top:10px}.xmas .hat{width:300px;max-width:100%;aspect-ratio:1/1;justify-self:center}.xmas .hat canvas{width:100%;height:100%}.holly{display:inline-block;width:18px;height:18px}@media (prefers-reduced-motion:reduce){.xmas .lights span{animation:none}}.xmas-sm{border-radius:18px;padding-block:40px 30px;margin-top:0}.xmas-sm:after{height:30px}.xmas-sm .lights span{width:9px;height:13px}.xmas-sm h1{font-size:clamp(28px,5vw,44px);margin-top:6px}.xmas-sm .lede{font-size:16px;margin-top:8px}.xmas-sm .inner1{position:relative;z-index:1}.xmas-sm .meta-x{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.xmas-sm .meta-x span{padding:6px 12px;border-radius:999px;background:rgba(247,242,231,.1);border:1px solid rgba(247,242,231,.18);font-size:14px;color:var(--x-ink)}.xmas-sm .meta-x b{color:var(--x-gold);font-weight:700}.xmas-strip{height:74px;padding-block:0}.xmas-strip .inner1{height:100%;display:flex;align-items:center;justify-content:center;padding-top:10px}.brand .b-x,.xmas-strip:after{display:none}.xmas-on .brand .b-x{display:block}.xmas-on .brand .b-n{display:none}.xmas-on .progress{height:8px}.xmas-on .progress span{background:repeating-linear-gradient(45deg,#D9384B 0 8px,#FBF6EC 8px 16px)}.panel.gift{position:relative;overflow:hidden}.xmas-on .panel.gift{border-color:#E7A3AC;border-color:color-mix(in srgb,#D9384B 35%,var(--line))}.xmas-on .panel.gift:before{top:0;bottom:0;left:22px;width:8px}.xmas-on .panel.gift:after,.xmas-on .panel.gift:before{content:"";position:absolute;background:#EDC25E;opacity:.9}.xmas-on .panel.gift:after{left:0;right:0;top:22px;height:8px}.xmas-on .panel.gift>*{position:relative;z-index:1;margin-left:24px}.xmas-on .panel.gift>h3{margin-top:14px}.xmas-on .slot{background:linear-gradient(90deg,transparent calc(50% - 7px),#EDC25E calc(50% - 7px) calc(50% + 7px),transparent calc(50% + 7px)),linear-gradient(0deg,transparent calc(50% - 7px),#EDC25E calc(50% - 7px) calc(50% + 7px),transparent calc(50% + 7px)),#C62F42;color:#FFFFFF}.xmas-on .slot span{background:rgba(15,51,40,.88);padding:4px 16px;border-radius:10px;position:relative;z-index:1}.xmas-on .slot.done{background:radial-gradient(circle at 50% 50%,#17493A,#0F3328)}.xmas-on .slot.done span{background:#EDC25E;color:#2A1D04}.xmas-on .tag.alt{background:#D3E8DC;background:color-mix(in srgb,#3E9A6B 18%,var(--soft))}.xmas-on .wishbar i.on{background:#D9384B;border-color:#D9384B}.xmas-on .stepv.done .dot{background:#3E9A6B;border-color:#3E9A6B}.xmas-on .choice[aria-pressed=true],.xmas-on .opt[aria-pressed=true]{border-color:#D9384B}.card-x{position:relative}.xmas-on .card-x{border-top:4px solid #d9384b}.card-x .bow{position:absolute;top:-14px;right:16px;width:30px;height:22px;display:none}.xmas-on .card-x .bow{display:block}.f-x{display:none}.xmas-on .f-x{display:inline}.xmas-on .f-n{display:none}.xmas-on footer{position:relative;padding-top:18px}.orn{position:relative;flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:15px;color:#fff;margin-top:6px;background:radial-gradient(circle at 32% 30%,rgba(255,255,255,.55) 0 3px,transparent 4px),radial-gradient(circle at 50% 60%,var(--oc) 0 60%,var(--oc) 100%);background:radial-gradient(circle at 32% 30%,rgba(255,255,255,.55) 0 3px,transparent 4px),radial-gradient(circle at 50% 60%,var(--oc) 0 60%,color-mix(in srgb,var(--oc) 70%,#000) 100%);box-shadow:0 2px 6px rgba(0,0,0,.18)}.orn:before{top:-6px;width:12px;margin-left:-6px;border-radius:2px 2px 1px 1px;background:linear-gradient(90deg,#B98A2E,#EDC25E,#B98A2E)}.orn:after,.orn:before{content:"";position:absolute;left:50%;height:7px}.orn:after{top:-11px;width:8px;margin-left:-4px;border:1.5px solid #b98a2e;border-bottom:0;border-radius:6px 6px 0 0}.orn-sm{width:30px;height:30px;font-size:13px}.wish-mini{display:flex;flex-direction:column;gap:6px}.wish-mini span{display:flex;gap:8px;align-items:center;font-size:14px;overflow-wrap:anywhere}.wish-mini span:before{content:"";flex:none;width:14px;height:12px;border-radius:2px;background:linear-gradient(90deg,transparent 5px,#EDC25E 5px 9px,transparent 9px),#D9384B}.xmas-on .panel.card-x .eyebrow{color:#C62F42}@media (prefers-color-scheme:dark){:root.xmas-on:not([data-theme=light]) .panel.card-x .eyebrow{color:#F2919C}}:root.xmas-on[data-theme=dark] .panel.card-x .eyebrow{color:#F2919C}.kidbadge{font-size:12px;font-weight:600;color:var(--muted)}.garland{display:none;position:relative;height:66px;margin:0 auto 6px;overflow:hidden}.garland svg,.xmas-on .garland{display:block}.garland svg{width:100%;height:100%;overflow:visible}.garland .wire{fill:none;stroke:#7d8a85;stroke:color-mix(in srgb,var(--ink) 55%,var(--paper));stroke-width:1.6;stroke-linecap:round}.garland .cap{fill:#5b5640;fill:color-mix(in srgb,var(--ink) 60%,#7a6a3a)}.garland .glass{fill:var(--c)}.garland .halo{fill:var(--c);opacity:.28;filter:blur(5px)}.garland .bulb .lit{animation:bulb 3.2s ease-in-out infinite;animation-delay:var(--d);transform-box:fill-box;transform-origin:center}@keyframes bulb{0%,to{opacity:1}45%{opacity:1}55%{opacity:.38}70%{opacity:.85}}.garland .bulb .halo{animation:halo 3.2s ease-in-out infinite;animation-delay:var(--d)}@keyframes halo{0%,to{opacity:.34}55%{opacity:.04}70%{opacity:.22}}.garland .shine{fill:#fff;opacity:.6}@media (prefers-reduced-motion:reduce){.garland .bulb .halo,.garland .bulb .lit{animation:none}}.burst{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:30}footer{margin-top:40px;font-size:13px;color:var(--muted);text-align:center}.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%)}.page{padding-block:8px 24px}.prose{max-width:720px;margin:0 auto}.prose h1{font-size:clamp(30px,5vw,42px);margin-bottom:14px}.prose h2{font-size:22px;margin:28px 0 8px}.prose li,.prose p{line-height:1.7;color:var(--ink)}.prose p{margin:0 0 12px}.prose .muted{color:var(--muted)}.prose table{width:100%;border-collapse:collapse;margin:16px 0;text-align:left;font-size:14px}.prose td,.prose th{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.prose th{background:var(--soft)}.prose td code{overflow-wrap:anywhere}.faq details{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}.faq summary:after{content:"+";font-weight:700;color:var(--ribbon)}.faq details[open] summary:after{content:"–"}.faq details p{margin:10px 0 0;color:var(--muted)}.section{margin-top:44px}.section>h2{margin-bottom:14px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px}.feature-grid .panel h3{margin-bottom:6px}.cta-band{margin-top:44px;text-align:center;padding:36px 20px;border-radius:18px;background:var(--soft)}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;margin-top:10px}.footer-links a{color:var(--muted);text-decoration:none;font-size:13px}.footer-links a:hover{color:var(--ink);text-decoration:underline}.crumb{font-size:14px}.picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-gap:20px;gap:20px;align-items:start}@media (max-width:820px){.picker{grid-template-columns:1fr}}.wheel-wrap{position:relative;aspect-ratio:1/1;width:100%;max-width:520px;margin:0 auto}.wheel-wrap canvas{width:100%;height:100%;display:block;cursor:pointer}.wheel-wrap .pointer{position:absolute;top:50%;right:-6px;transform:translateY(-50%);width:0;height:0;border-top:16px solid transparent;border-bottom:16px solid transparent;border-right:30px solid var(--ink);filter:drop-shadow(0 2px 2px rgba(0,0,0,.2))}.wheel-wrap .hub{position:absolute;inset:0;margin:auto;width:18%;height:18%;border-radius:50%;background:var(--card);box-shadow:0 2px 10px rgba(0,0,0,.18);display:grid;place-items:center;font-weight:700;font-size:clamp(13px,2.2vw,17px);cursor:pointer;border:0;color:var(--ink)}.winner{position:fixed;inset:0;display:grid;place-items:center;background:color-mix(in srgb,var(--ink) 45%,transparent);z-index:25;padding:16px}.winner .panel{text-align:center;max-width:440px;width:100%;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto}.winner .big{font-family:var(--f-display);font-size:clamp(34px,7vw,56px);line-height:1.1;margin:8px 0 6px;overflow-wrap:anywhere}.namebox{min-height:260px;font-family:var(--f-body)}.hist{display:flex;flex-wrap:wrap;gap:6px}.picker-hero{padding-block:18px 6px}.picker-hero h1{font-size:clamp(32px,5.6vw,52px)}.picker-hero p{font-size:18px;color:var(--muted);margin-top:8px;max-width:60ch}.picker-hero p.eyebrow{font-size:12px;margin-bottom:10px}.picker-guide>nav{font-size:14px;margin-bottom:24px}.picker-guide>.eyebrow{font-size:12px}.picker-guide li{margin-bottom:10px}.picker-guide a:not(.btn){color:var(--pine);text-underline-offset:3px}.santa-promo{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:18px 22px;border-radius:16px;background:linear-gradient(135deg,#0F3328,#17493A);color:#F7F2E7;margin-top:28px}.santa-promo b{font-family:var(--f-display);font-weight:400;font-size:22px;display:block}.santa-promo .btn{background:#EDC25E;color:#2A1D04}.land-hero{grid-template-columns:1fr;padding-block:32px 8px}.land-hero h1{font-size:clamp(32px,5.4vw,52px)}.land-hero h1 em{font-style:normal;color:var(--ribbon)}.prose-wide{max-width:760px}.prose-wide p{font-size:17px;line-height:1.7;margin:0 0 14px}.chip-links{display:flex;flex-wrap:wrap;gap:10px}.chip-links a{padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);text-decoration:none;font-size:14px;font-weight:600}.chip-links a:hover{border-color:var(--ribbon)}.idea-list{margin:8px 0 0;padding-left:18px;line-height:1.9}.idea-list a{color:var(--ink);-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line)}.idea-list a:hover{color:var(--ribbon)}.footer-links.more{margin-top:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (pointer:coarse){.btn.small,.chip-links a,.choice,button.link{min-height:40px}button.link{padding:8px 4px}.check{min-height:40px;align-items:center}input[type=checkbox],input[type=radio]{width:20px;height:20px}}.btn.google{background:#FFFFFF;color:#1F1F1F;box-shadow:inset 0 0 0 1px #747775;font-weight:600}.btn.google:hover{background:#F8F9FA;filter:none}.or{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.or:after,.or:before{content:"";flex:1 1;height:1px;background:var(--line)}.linkish{background:none;border:0;font:inherit;cursor:pointer}.gbtn{min-height:44px;display:flex;justify-content:center}.gift-finder,.wishlist-page{width:100%;max-width:1120px;margin-inline:auto}.eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--muted);margin:0 0 7px}.gift-hero{display:grid;grid-template-columns:1.5fr 1fr;grid-gap:30px;gap:30px;align-items:center;padding:34px 0 36px;border-bottom:1px solid var(--line)}.gift-hero h1{font-size:clamp(36px,5.5vw,61px);line-height:1.12;letter-spacing:-.035em;margin-bottom:18px}.gift-hero h1 em{color:var(--ribbon);font-style:normal}.gift-hero>div>p:not(.eyebrow){max-width:52ch;line-height:1.65;color:var(--muted);margin-bottom:20px}.gift-feature{font-size:12px;color:var(--pine)}.gift-hero .row{gap:18px}.gift-hero .link{font-size:13px}.gift-hero-art{position:relative;padding:12px 40px;border-radius:48% 48% 14px 14px;background:var(--soft)}.gift-hero-art svg{width:100%;display:block}.gift-hero-stamp{position:absolute;right:8px;bottom:10px;transform:rotate(-8deg);border:1px solid var(--ink);padding:12px 17px;background:var(--tag);border-radius:50%;font-size:11px;text-align:center;color:#142A26;line-height:1.7}.gift-search{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:var(--card);border-radius:14px;padding:8px 9px 8px 18px;margin-top:12px}.gift-search>span{font-size:30px;color:var(--muted)}.gift-search input{border:0;box-shadow:none;padding:8px 0;min-width:0;background:transparent}.gift-search .btn{flex-shrink:0}.gift-categories{display:flex;gap:6px;padding:18px 0 24px;overflow-x:auto;scrollbar-width:thin}.gift-categories button{white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:var(--card);font:inherit;font-size:12px;padding:8px 13px;cursor:pointer;color:var(--ink)}.gift-categories button[aria-pressed=true]{background:var(--pine);color:var(--paper);border-color:var(--pine)}.gift-browse-layout{display:grid;grid-template-columns:210px minmax(0,1fr);grid-gap:26px;gap:26px;align-items:start}.gift-filters{display:grid;grid-gap:24px;gap:24px;border-right:1px solid var(--line);padding-right:24px}.gift-filters h3{font-size:22px}.gift-filters label{font-size:12px}.gift-money-input{display:flex;align-items:center;border:1px solid var(--line);border-radius:9px;background:var(--card);overflow:hidden}.gift-money-input>span{padding-left:12px;color:var(--muted)}.gift-money-input input{border:0;background:transparent;min-width:0}.budget-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.budget-chips button{font:inherit;font-size:11px;border:1px solid var(--line);padding:6px 8px;background:var(--card);color:var(--muted);border-radius:6px;cursor:pointer}.budget-chips button[aria-pressed=true]{border-color:var(--pine);color:var(--ink);background:var(--soft)}.gift-how{font-size:12px;line-height:1.65;padding-top:20px;border-top:1px solid var(--line)}.gift-how p{color:var(--muted);margin-top:7px}.gift-results{min-width:0}.gift-results h2{font-size:clamp(22px,3vw,29px)}.gift-sort{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);font-weight:400}.gift-sort select{font-size:12px;width:145px;padding:7px}.gift-budget-line{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted);margin:14px 0}.budget-dot{height:6px;width:6px;border-radius:50%;background:var(--pine);flex-shrink:0}.gift-availability{display:flex;align-items:center;gap:20px;margin:16px 0 22px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--soft);font-size:12px;line-height:1.6}.gift-availability b{font-size:14px}.gift-availability p{margin-top:3px;color:var(--muted)}.gift-availability .btn{flex-shrink:0;font-size:11px;padding:8px 12px}.gift-availability+button{margin-bottom:16px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.product-card{min-width:0;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .15s,box-shadow .15s}.product-card:hover{border-color:color-mix(in srgb,var(--pine) 45%,var(--line));box-shadow:0 7px 24px #142a2609}.product-visual{position:relative;aspect-ratio:1.2;display:flex;align-items:center;justify-content:center;background:#f5f5ef;overflow:hidden}.product-visual>svg{width:100%;height:100%;padding:13px}.product-visual>img{width:100%;height:100%;object-fit:contain;background:#fff;padding:20px}.product-body{display:flex;flex-direction:column;align-items:stretch;gap:11px;padding:16px;flex:1 1}.product-body .eyebrow{font-size:8px;margin:0;letter-spacing:.12em}.product-body h3{font-family:var(--f-body);font-size:16px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.product-body h3 a{color:inherit;text-decoration:none}.product-body>p:not(.wish-estimate){font-size:12px;line-height:1.6;color:var(--muted);margin:0}.product-body>.btn{margin-top:auto;font-size:12px;padding:10px}.product-shop{display:block;color:var(--pine);font-size:11px;font-weight:600;text-decoration:none;text-align:center;padding:5px 0;line-height:1.5}.product-shop:hover{text-decoration:underline}.product-body>.tiny{font-size:9px}.favorite-label,.idea-label{position:absolute;top:12px;left:12px;background:var(--card);color:var(--ink);border-radius:20px;padding:4px 9px;font-size:9px;box-shadow:0 1px 7px #00000008}.favorite-label{background:#fce8e8;color:#972737;font-size:11px}.illustration-label{position:absolute;bottom:8px;right:10px;font-size:9px;color:#5a6d68}.product-price{display:flex;flex-direction:column;gap:3px}.product-price strong{font-size:22px}.product-price span{font-size:9px;color:var(--muted)}.price-details{margin-top:22px;line-height:1.7}.price-details summary{cursor:pointer}.price-details p{margin-top:10px;max-width:85ch}.gift-pagination{margin-top:22px}.gift-empty{padding:50px 25px;border:1px dashed var(--line);border-radius:14px;text-align:center}.gift-empty p{color:var(--muted);margin:12px auto 22px;max-width:42ch;line-height:1.6}.gift-skeleton{padding:14px;gap:12px;min-height:300px}.gift-skeleton div{aspect-ratio:1.2;background:var(--soft);border-radius:8px}.gift-skeleton span{height:14px;background:var(--soft);border-radius:4px}.gift-skeleton span:last-child{width:65%}.error-text{color:var(--ribbon)}.wish-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:8px 0}.wish-toolbar h2{font-size:26px;margin:0 0 6px}.wish-toolbar .row{flex-shrink:0}.wish-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.wish-card .product-visual{aspect-ratio:1.5}.wish-card.reserved{border-color:var(--pine)}.wish-actions{margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}.wish-actions .row{gap:8px}.wish-actions .btn{font-size:12px}.wish-actions .link{margin-left:auto}.wish-options{display:flex;flex-wrap:wrap;gap:7px;margin:0}.wish-options>div{display:flex;align-items:baseline;gap:5px;padding:5px 8px;border-radius:6px;background:var(--soft);font-size:11px;overflow-wrap:anywhere}.wish-options dt{color:var(--muted)}.wish-options dd{margin:0;font-weight:600}.wish-note{padding:10px 12px;background:var(--paper);border-radius:7px;white-space:pre-wrap}.wish-estimate{margin:0;display:flex;flex-direction:column;gap:4px}.wish-estimate b{font-size:22px}.wish-estimate span{font-size:10px;color:var(--muted)}.wish-budget{align-self:start;font-size:10px;color:var(--pine);background:var(--soft);padding:4px 8px;border-radius:5px}.wish-budget.over{background:#fff0da;color:#7c4a13}.wish-empty{text-align:center;border:1px dashed var(--line);background:var(--card);border-radius:16px;padding:40px 22px}.wish-empty>span{display:block;font-size:44px;color:var(--ribbon);margin-bottom:12px}.wish-empty h3{font-size:25px}.wish-empty p{max-width:52ch;color:var(--muted);line-height:1.7;margin:15px auto 22px}.wish-discovery{padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--card)}.wish-discovery .gift-browse-layout{grid-template-columns:180px minmax(0,1fr);gap:20px}.wish-discovery .gift-filters{padding-right:20px}.wish-product-preview{display:flex;align-items:center;gap:18px;background:var(--paper);border-radius:10px;padding:12px}.wish-product-preview>img,.wish-product-preview>svg{width:85px;height:85px;object-fit:contain}.wish-product-preview b{font-size:12px}.wish-favorite-toggle{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:9px;cursor:pointer}.wish-favorite-toggle input{width:18px;height:18px;margin:0;accent-color:var(--ribbon)}.wish-form textarea{min-height:75px}.wish-form label{font-size:13px}.wish-form label .muted{font-weight:400}.wish-form .tiny{margin-top:5px}.wish-form{gap:15px}.wish-form>.btn{margin-top:5px}@media(min-width:1000px){.wishlist-page>.panel{max-width:760px;width:100%;align-self:center}}@media(max-width:1000px){.gift-browse-layout{grid-template-columns:175px minmax(0,1fr);gap:18px}.gift-filters{padding-right:18px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-availability,.wish-toolbar{align-items:flex-start;flex-direction:column}.gift-hero-art{padding:10px 20px}.gift-sort{margin-top:8px}}@media(max-width:650px){.gift-hero{grid-template-columns:1fr;gap:0;padding:20px 0 25px}.gift-hero-art{display:none}.gift-hero h1{font-size:40px}.gift-hero>div>p:not(.eyebrow){font-size:14px;margin-bottom:16px}.gift-hero .row{gap:10px 16px}.gift-hero .link{width:100%}.gift-search{gap:8px;padding-left:12px}.gift-search input{font-size:12px}.gift-search .btn{font-size:11px;padding:10px}.gift-categories{padding-bottom:18px}.gift-browse-layout,.wish-discovery .gift-browse-layout{grid-template-columns:1fr;gap:24px}.gift-filters{border:1px solid var(--line);border-radius:12px;padding:14px!important;grid-template-columns:1fr 1fr;gap:14px}.gift-filters>div:first-child,.gift-how{display:none}.gift-filters>.tiny{grid-column:1/-1;font-size:10px}.gift-filters label{font-size:11px}.budget-chips{gap:4px}.budget-chips button{font-size:10px;padding:5px}.gift-filters select{font-size:12px}.gift-sort{font-size:10px}.gift-sort select{width:132px}.gift-results h2{font-size:24px}.gift-availability{gap:12px;padding:14px}.product-grid{gap:10px}.product-body{padding:12px;gap:9px}.product-body h3{font-size:14px}.product-body>p:not(.wish-estimate){font-size:11px}.product-body>.btn{font-size:11px;padding:9px 6px}.product-shop{font-size:10px}.product-visual>svg{padding:3px}.product-price strong{font-size:19px}.wish-grid .product-card{grid-column:1/-1;display:grid;grid-template-columns:125px minmax(0,1fr)}.wish-card .product-visual{aspect-ratio:auto;min-height:160px}.wish-grid .product-body{padding:15px}.wish-card .product-visual>svg{padding:0}.favorite-label{top:7px;left:5px;font-size:9px;padding:4px 6px}.wish-discovery{padding:12px}.wish-toolbar h2{font-size:24px}.wish-toolbar .btn{font-size:12px}.wish-toolbar .row{width:100%}.wish-toolbar .row .btn{flex:1 1}.wish-empty h3{font-size:22px}.wish-actions .btn{font-size:11px;padding:8px 10px}.wish-estimate b{font-size:18px}}@media(prefers-reduced-motion:reduce){.product-card{transition:none}}.gift-link-page{max-width:720px;padding:48px 0 64px;gap:24px}.gift-link-page>.eyebrow{margin:0}.gift-link-page h1{font-size:clamp(32px,5vw,46px)}.amazon-gift-link{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:28px;border:1px solid var(--line);border-radius:16px;background:var(--card)}.amazon-gift-link>p:first-child{max-width:60ch;color:var(--muted);line-height:1.75}.amazon-browse-button{background:#ffd666;color:#252116;padding:13px 22px;font-size:16px;white-space:normal;text-align:center;box-shadow:0 2px 4px #142a2610}.amazon-browse-button:hover{background:#ffcd40}.amazon-gift-link>.tiny{font-size:12px;line-height:1.7}.amazon-gift-link.compact{padding:8px;border:0;background:transparent}.gift-sharing{border:1px solid var(--line);border-radius:12px;background:var(--card);font-size:14px;line-height:1.7}.gift-sharing>summary{padding:16px 20px;cursor:pointer;font-weight:600}.gift-sharing>summary:focus-visible{outline:3px solid #1F5FBF;outline-offset:2px;border-radius:12px}.gift-sharing>div{padding:0 20px 20px}.gift-sharing ul{display:grid;grid-gap:16px;gap:16px;padding-left:20px;margin:0}.gift-sharing li{padding-left:3px}.gift-sharing a{color:var(--pine);text-underline-offset:3px}@media(max-width:650px){.gift-link-page{padding:26px 0 40px;gap:20px}.amazon-gift-link{padding:21px;gap:18px}.amazon-browse-button{width:100%;font-size:15px;padding:13px 15px}.amazon-gift-link>p:first-child{font-size:14px}}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/outfit-latin-ext-wght-normal.ee756101.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/outfit-latin-wght-normal.e96e1529.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"Young Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/young-serif-latin-ext-400-normal.69151fdd.woff2) format("woff2"),url(/_next/static/media/young-serif-latin-ext-400-normal.caedac76.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Young Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/young-serif-latin-400-normal.65297b85.woff2) format("woff2"),url(/_next/static/media/young-serif-latin-400-normal.861a9c12.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-cyrillic-ext-500-normal.d9de1144.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-ext-500-normal.02ec8c39.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-cyrillic-500-normal.ae6258df.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-500-normal.00657183.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-greek-500-normal.89c6cba8.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-greek-500-normal.96a101cf.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-vietnamese-500-normal.3bbdce79.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-vietnamese-500-normal.5b6505bb.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-latin-ext-500-normal.b7bedb53.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-ext-500-normal.d0559b71.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-latin-500-normal.af2e87f5.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-500-normal.24c9023a.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}