:root{--bg:#e6ecf4;--bg2:#f9fbfe;--ink:#172031;--muted:#5a6477;--surface:#fff;--surface2:#eef2f8;--line:#d4dce8;--accent:#2f5bea;--accent-ink:#fff;--gold:#f5c21b;--scrim:#121a2861;--shadow:0 18px 50px -18px #17203159, 0 2px 6px #1720310f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;box-sizing:border-box}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#111a29;--bg2:#1e2a40;--ink:#eef2f9;--muted:#9ba7bc;--surface:#1c2639;--surface2:#26324a;--line:#33415a;--accent:#7090ff;--accent-ink:#0d1424;--gold:#f5c21b;--scrim:#0408108c;--shadow:0 18px 50px -18px #000000b3, 0 2px 6px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#111a29;--bg2:#1e2a40;--ink:#eef2f9;--muted:#9ba7bc;--surface:#1c2639;--surface2:#26324a;--line:#33415a;--accent:#7090ff;--accent-ink:#0d1424;--gold:#f5c21b;--scrim:#0408108c;--shadow:0 18px 50px -18px #000000b3, 0 2px 6px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:inherit}html{height:100%}body{overscroll-behavior:none;color:var(--ink);background:radial-gradient(120% 75% at 50% 32%, var(--bg2), var(--bg));-webkit-font-smoothing:antialiased;margin:0;font-family:Bricolage Grotesque Variable,ui-rounded,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.4;position:fixed;inset:0;overflow:hidden}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.app{height:100%;position:relative;overflow:hidden}#stage{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.top{padding:calc(14px + env(safe-area-inset-top,0px)) 14px 0;pointer-events:none;z-index:2;flex-direction:column;gap:10px;display:flex;position:absolute;top:0;left:0;right:0}.toprow{justify-content:space-between;align-items:center;gap:12px;display:flex}.newbtn{pointer-events:auto;border:1.5px solid var(--line);background:var(--surface);border-radius:999px;align-items:center;gap:5px;height:34px;padding:0 13px 0 10px;font-size:14px;font-weight:600;transition:transform .15s,background .2s;display:inline-flex}.newbtn:active{transform:scale(.95)}.newbtn svg{width:15px;height:15px}body.gift .newbtn{display:none}.brand{letter-spacing:-.02em;align-items:center;gap:9px;font-size:22px;font-weight:800;display:flex}.logo{width:32px;height:32px;color:var(--accent);flex:none}.models{scrollbar-width:none;pointer-events:auto;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.models::-webkit-scrollbar{display:none}.chip{border:1.5px solid var(--line);background:var(--surface);border-radius:999px;flex:none;padding:7px 14px;font-size:14px;font-weight:600;transition:background .2s,border-color .2s,color .2s,transform .15s}.chip:active{transform:scale(.96)}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--surface)}.models{align-self:flex-end;align-items:center;max-width:100%}.chip#textChip{align-items:center;gap:6px;display:inline-flex}@media (width<=519px){.chip .wide{display:none}.cc-txt small{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.models{align-self:stretch}.models>.chip{flex:auto;justify-content:center}.chip#catChip{flex:auto;gap:6px;min-width:0;padding-right:10px}.cc-txt{min-width:0}.cc-txt b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.chip{padding:7px 12px}}@media (width>=720px){.top{flex-direction:row;justify-content:space-between;align-items:center}.toprow{gap:16px}.models{align-self:auto}}.chip#catChip{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 6px 16px -8px var(--accent);align-items:center;gap:8px;padding:4px 12px 4px 4px;display:inline-flex}.chip#catChip[aria-pressed=false]{background:var(--surface);color:var(--ink);box-shadow:none}.cc-ico{background:#ffffff38;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.chip#catChip[aria-pressed=false] .cc-ico{background:var(--accent);color:var(--accent-ink)}.cc-txt{text-align:left;flex-direction:column;align-items:flex-start;line-height:1.1;display:flex}.cc-txt small{opacity:.85;font-size:11px;font-weight:600}.cc-txt b{font-size:14px;font-weight:800}.cc-chev{flex:none;transition:transform .3s}.chip#catChip:hover .cc-chev{transform:translateY(2px)}.chip#catChip.nudge{animation:1.4s ease-in-out 1.5s 2 nudge}@keyframes nudge{0%,to{transform:none}15%{transform:translateY(-3px)scale(1.05)}30%{transform:none}45%{transform:translateY(-1px)scale(1.02)}60%{transform:none}}.chip.upload{border-style:dashed;align-items:center;gap:6px;display:inline-flex}.chip[hidden]{display:none}.chip.upload input{opacity:0;width:1px;height:1px;position:absolute}.hint{background:color-mix(in srgb,var(--surface) 78%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--muted);white-space:nowrap;pointer-events:none;border-radius:999px;align-items:center;gap:6px;padding:7px 14px 7px 10px;font-size:13px;font-weight:600;transition:opacity .5s,transform .5s cubic-bezier(.3,1.3,.5,1);display:inline-flex;position:absolute;bottom:calc(100% + 14px);left:50%;transform:translate(-50%);box-shadow:0 6px 18px -12px #17203166}.hint.off{opacity:0;transform:translate(-50%,8px)}.hint .hand{width:18px;height:18px;animation:1.8s ease-in-out infinite swipe}.hint .arrows{opacity:.6;width:18px;height:9px}@keyframes swipe{0%,to{transform:translate(-3px)rotate(-8deg)}50%{transform:translate(4px)rotate(6deg)}}.panel{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));background:var(--surface);max-width:560px;box-shadow:var(--shadow);z-index:2;border-radius:24px;flex-direction:column;gap:12px;margin:0 auto;padding:12px;display:flex;position:absolute}.seg{background:var(--surface2);--i:0;border-radius:14px;grid-template-columns:repeat(3,1fr);padding:4px;display:grid;position:relative}.seg .thumb{background:var(--surface);width:calc(33.3333% - 2.66667px);transform:translateX(calc(var(--i)*100%));border-radius:11px;transition:transform .45s cubic-bezier(.3,1.4,.5,1);position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 2px 8px #1720311f}.seg button{color:var(--muted);background:0 0;border:0;border-radius:11px;padding:9px 4px;font-size:14px;font-weight:600;transition:color .25s;position:relative}.seg button[aria-selected=true]{color:var(--ink)}.kitrow{align-items:center;gap:10px;display:flex}.kitrow .edit{border:1.5px solid var(--line);background:var(--surface);border-radius:12px;flex:none;align-items:center;gap:6px;height:34px;padding:0 12px 0 10px;font-size:13px;font-weight:600;transition:transform .15s,background .2s;display:inline-flex}.kitrow .edit:active{transform:scale(.96)}.kitrow .edit svg{width:15px;height:15px}.kitrow>span{color:var(--muted);flex:none;min-width:7.2em;font-size:12.5px}.seg.sm{border-radius:12px;flex:1;padding:3px}.seg.sm .thumb{border-radius:9px;width:calc(33.3333% - 2px);top:3px;bottom:3px;left:3px}.seg.sm button{padding:6px 2px;font-size:13px}.seg.two{grid-template-columns:repeat(2,1fr)}.seg.two .thumb{width:calc(50% - 3px)}.kitrow[hidden],.fact[hidden],.price[hidden]{display:none}.steps{grid-template-columns:44px 1fr 44px 44px;align-items:center;gap:10px;display:grid}.steps[hidden]{display:none}.round{border:1.5px solid var(--line);background:var(--surface);border-radius:50%;place-items:center;width:44px;height:44px;transition:transform .15s,opacity .2s;display:grid}.round:active{transform:scale(.92)}.round:disabled{opacity:.35;cursor:default}.round svg{width:18px;height:18px}.round.go{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}body.gift .steps{grid-template-columns:44px 1fr 44px 64px}.ffwd .pp{display:none}.ffwd[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--surface)}.ffwd[aria-pressed=true] .ff{display:none}.ffwd[aria-pressed=true] .pp{display:block}body.gift #next{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:64px;height:64px}body.gift #next svg{width:22px;height:22px}.stepinfo{min-width:0}.stepinfo strong{font-size:16px;font-weight:800;display:block}.bar{background:var(--surface2);border-radius:6px;height:6px;margin:6px 0 7px;overflow:hidden}.bar i{background:var(--accent);border-radius:6px;width:0;height:100%;transition:width .5s cubic-bezier(.2,.8,.2,1);display:block}.need{color:var(--muted);flex-wrap:wrap;gap:6px;font-size:12.5px;display:flex}.need span{background:var(--surface2);border-radius:8px;align-items:center;gap:5px;padding:3px 7px;display:inline-flex}.need em{align-self:center;font-style:normal}.sw{border-radius:3px;flex:none;width:12px;height:12px;box-shadow:inset 0 0 0 1px #00000026}.facts{flex-direction:column;gap:10px;display:flex}.fact b{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:800;line-height:1;display:block}.fact span{color:var(--muted);font-size:12.5px}.custom{background:var(--surface2);border-radius:16px;align-items:center;gap:12px;padding:5px 5px 5px 12px;display:flex}.fact.count{text-align:left;background:0 0;border:0;border-radius:8px;flex-direction:column;flex:none;align-items:flex-start;gap:2px;padding:0;line-height:1.2;transition:transform .15s;display:flex}.fact.count:active{transform:scale(.95)}.fact.count span{align-items:center;gap:1px;display:inline-flex}.fact.count span svg{width:12px;height:12px}.size{flex-direction:column-reverse;flex:1;gap:0;min-width:0;display:flex}.size .cap{color:var(--muted);text-align:center;font-size:12.5px;line-height:1.2}.track{color:var(--muted);align-items:center;gap:2px;display:flex}.s-step{width:26px;height:30px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;transition:transform .25s cubic-bezier(.3,1.6,.5,1),color .2s,opacity .2s;display:grid}.s-step:active{transform:scale(.82)}.s-step:disabled{opacity:.35;cursor:default;transform:none}.s-step .s-min{width:14px;height:14px}.s-step .s-max{width:20px;height:20px}@media (hover:hover){.s-step:not(:disabled):hover{color:var(--ink)}}.rail{--p:.5;flex:1;align-items:center;min-width:0;display:flex;position:relative}.rail:before,.rail .fill{content:"";pointer-events:none;border-radius:3px;height:6px;margin-top:-3px;position:absolute;top:50%;left:0}.rail:before{background:var(--line);right:0}.rail .fill{width:calc(11px + var(--p)*(100% - 22px));background:var(--accent);transition:width .35s cubic-bezier(.3,1.3,.5,1)}.rail.ultra .fill{background:linear-gradient(90deg,var(--accent) 55%,var(--gold))}.rail.ultra #kitRange::-webkit-slider-thumb{border-color:var(--gold)}.rail.ultra #kitRange::-moz-range-thumb{border-color:var(--gold)}.size .cap.ultra{color:var(--ink);font-weight:700}#kitRange{appearance:none;cursor:pointer;touch-action:pan-x;background:0 0;flex:1;min-width:0;height:26px;margin:0;position:relative}#kitRange::-webkit-slider-runnable-track{background:0 0;height:6px}#kitRange::-moz-range-track{background:0 0;height:6px}#kitRange::-webkit-slider-thumb{-webkit-appearance:none;background:var(--surface);border:2.5px solid var(--accent);border-radius:50%;width:22px;height:22px;margin-top:-8px;transition:transform .2s cubic-bezier(.3,1.5,.5,1);box-shadow:0 3px 10px -3px #17203166}#kitRange::-moz-range-thumb{background:var(--surface);border:2.5px solid var(--accent);border-radius:50%;width:17px;height:17px;transition:transform .2s cubic-bezier(.3,1.5,.5,1);box-shadow:0 3px 10px -3px #17203166}#kitRange:active::-webkit-slider-thumb{transform:scale(1.18)}#kitRange:active::-moz-range-thumb{transform:scale(1.18)}.colors{border:1.5px solid var(--line);background:var(--surface);border-radius:12px;flex:none;align-items:center;gap:6px;height:38px;padding:0 12px 0 10px;font-size:14px;font-weight:600;transition:transform .15s;display:inline-flex}.colors:active{transform:scale(.96)}.colors svg{width:18px;height:18px}.btn{border:1.5px solid var(--line);background:var(--surface);border-radius:14px;padding:11px 12px;font-weight:600;transition:transform .15s,background .2s}.btn:active{transform:scale(.97)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.guide{grid-template-columns:auto auto 1fr;gap:8px;display:grid}.gstep{border:1.5px solid var(--line);background:var(--surface);color:var(--muted);border-radius:14px;align-items:center;gap:6px;padding:0 11px 0 8px;font-size:14px;font-weight:600;transition:transform .15s,border-color .25s,color .25s,background .25s;display:inline-flex}.gstep:active{transform:scale(.96)}.guide i{background:var(--surface2);width:20px;height:20px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:11.5px;font-style:normal;font-weight:800;transition:background .25s,color .25s;display:grid}.gstep.done{color:var(--ink)}.gstep.done i{background:var(--accent);color:var(--accent-ink)}.gstep.next{border-color:var(--accent);color:var(--ink);animation:2.4s ease-in-out 1s infinite nudgeStep}.gstep.next i{background:var(--accent);color:var(--accent-ink)}.gsend{white-space:nowrap;justify-content:center;align-items:center;gap:7px;min-width:0;display:inline-flex}.gsend i{color:inherit;background:#ffffff47}.gstep .short{display:none}@media (width<=400px){.gstep .long{display:none}.gstep .short{display:inline}.gstep{padding:0 9px 0 7px}.gsend i{display:none}}@keyframes nudgeStep{0%,to{transform:none}50%{transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.gstep.next{animation:none}}.choose{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:6px;display:grid}.choose button{text-align:left;border:1.5px solid var(--line);background:var(--surface2);font:inherit;color:inherit;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 12px;transition:transform .15s,border-color .2s;animation:.35s cubic-bezier(.3,1.4,.5,1) both pop;display:flex}.choose button[hidden]{display:none}.choose button:nth-child(2){animation-delay:40ms}.choose button:nth-child(3){animation-delay:80ms}.choose button:nth-child(4){animation-delay:.12s}.choose button:hover{border-color:var(--accent)}.choose button:active{transform:scale(.97)}.choose svg{width:26px;height:26px;color:var(--accent);margin-bottom:4px}.choose b{font-size:15px}.choose small{color:var(--muted);font-size:12.5px;line-height:1.3}.exitgift{top:calc(14px + env(safe-area-inset-top,0px));z-index:3;border:1.5px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 14px;font-size:14px;font-weight:600;position:absolute;right:14px}.exitgift[hidden]{display:none}.spin{border:1.5px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--ink);border-radius:50%;place-items:center;padding:0;transition:transform .15s,background .2s;display:grid;position:absolute;bottom:calc(100% + 10px);right:4px;box-shadow:0 6px 18px -10px #17203173}.sello{color:var(--muted);white-space:nowrap;margin:0;font-size:12px;font-weight:500;transition:opacity .4s;position:absolute;bottom:calc(100% + 22px);left:8px}.sello a{color:inherit;text-decoration:none}.sello a:hover,.sello a:focus-visible{text-underline-offset:2px;text-decoration:underline}.hint:not(.off)~.sello{opacity:0;pointer-events:none}@media (width>=1000px){.sello{left:20px;bottom:calc(18px + env(safe-area-inset-bottom,0px));position:fixed}.hint:not(.off)~.sello{opacity:1;pointer-events:auto}}.spin:active{transform:scale(.94)}.spin .ico{width:16px;height:16px;display:grid}.spin svg{grid-area:1/1;width:16px;height:16px;transition:transform .35s cubic-bezier(.3,1.5,.5,1),opacity .2s}.spin .i-play{opacity:0;transform:scale(.4)rotate(-90deg)}.spin[aria-pressed=true] .i-pause{opacity:0;transform:scale(.4)rotate(90deg)}.spin[aria-pressed=true] .i-play{opacity:1;transform:none}.spin.recenter{right:52px}.spin.recenter svg{width:18px;height:18px;transition:transform .35s cubic-bezier(.3,1.5,.5,1)}.spin.recenter.go svg{animation:.5s cubic-bezier(.3,1.5,.5,1) recenter}@keyframes recenter{40%{transform:scale(.6)}}.spin.recenter{transition:transform .15s,opacity .3s}@media (width<=520px){.hint:not(.off)~.recenter{opacity:0;pointer-events:none}}body.gift .models,body.gift .seg,body.gift .facts{display:none}body.gift .brand{min-height:34px}body.gift.waiting .panel{display:none}.card{background:var(--surface);width:min(88vw,380px);box-shadow:var(--shadow);z-index:6;text-align:center;opacity:0;pointer-events:none;border-radius:26px;padding:26px 22px 20px;transition:transform .5s cubic-bezier(.3,1.35,.5,1),opacity .3s;position:fixed;top:50%;left:50%;transform:translate(-50%,-46%)scale(.92)}.card.show{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.card{overscroll-behavior:contain;max-height:calc(100% - 24px);overflow-y:auto}.card h2{letter-spacing:-.02em;margin:6px 0 8px;font-size:26px;font-weight:800;line-height:1.1}.card p{color:var(--muted);margin:0 0 18px}.card .msg{color:var(--ink);margin:6px 0 8px;font-size:19px;line-height:1.35}.card .from{margin-bottom:20px;font-size:14px}.card .row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.card .row.one{grid-template-columns:1fr}.card .note.watch{margin:-8px 0 16px}.whenpick{margin:-4px 0 12px}.whenpick[hidden],.card .count[hidden],.card .btn[hidden]{display:none}.advcal{z-index:1;padding:calc(64px + env(safe-area-inset-top,0px)) 16px calc(24px + env(safe-area-inset-bottom,0px));background:radial-gradient(120% 75% at 50% 20%,var(--bg2),var(--bg));text-align:center;position:fixed;inset:0;overflow-y:auto}.advcal[hidden]{display:none}.advcal h2{letter-spacing:-.02em;margin:0 0 4px;font-size:24px;font-weight:800}.advcal>p{max-width:420px;color:var(--muted);margin:0 auto 16px}.doors{grid-template-columns:repeat(4,1fr);gap:8px;max-width:520px;margin:0 auto;padding:0;list-style:none;display:grid}@media (width>=600px){.doors{grid-template-columns:repeat(6,1fr)}}.door{aspect-ratio:1;width:100%;color:var(--muted);background:var(--surface2);border:0;border-radius:14px;padding:0;font-size:22px;font-weight:800;transition:transform .2s cubic-bezier(.3,1.5,.5,1),background .2s;position:relative;box-shadow:inset 0 -3px #0000000f}.door:disabled{cursor:default;opacity:.55}.door .lock{opacity:.6;width:13px;height:13px;position:absolute;bottom:5px;right:6px}.door.ready{background:var(--accent);color:var(--accent-ink);animation:2.4s ease-in-out infinite knock}.door.ready:active{transform:scale(.94)}.door.open{background:var(--surface);color:var(--ink)}.door.open img{object-fit:contain;width:84%;height:70%;position:absolute;inset:8% 8% 22%}.door.open span{color:var(--muted);font-size:12px;position:absolute;bottom:4px;left:0;right:0}.door.last,.door.last.ready{background:var(--gold);color:#3a2a00}.door.opening{animation:.5s cubic-bezier(.3,1.3,.5,1) swing}@keyframes knock{0%,86%,to{transform:none}90%{transform:rotate(-4deg)scale(1.04)}95%{transform:rotate(4deg)scale(1.04)}}@keyframes swing{0%{transform:perspective(300px)rotateY(0)}60%{transform:perspective(300px)rotateY(-70deg)}to{transform:perspective(300px)rotateY(0)}}.doorimg{object-fit:contain;width:150px;height:150px;margin:-6px auto 0;animation:.5s cubic-bezier(.3,1.5,.5,1) popin;display:block}@keyframes popin{0%{opacity:0;transform:scale(.4)}}.calback{left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:3;border:1.5px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:999px;padding:11px 20px;font-weight:700;position:fixed;transform:translate(-50%)}.calback[hidden],body.calview .panel{display:none}#advModeSeg{margin-bottom:6px}.card .row.one .btn+.btn{margin-top:8px}.sheet input[type=datetime-local]{border:1.5px solid var(--line);background:var(--surface2);width:100%;min-height:46px;font:inherit;color:inherit;border-radius:14px;padding:10px 13px}.whenpick .note{margin-top:6px}div.count{justify-content:center;gap:8px;margin:4px 0 14px;display:flex}div.count span{background:var(--surface2);min-width:62px;color:var(--muted);border-radius:14px;padding:8px 6px;font-size:12px;display:grid}div.count b{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:28px;font-weight:800;line-height:1.1}div.count span:last-child b{animation:1s ease-out infinite tick;display:inline-block}@keyframes tick{0%{transform:scale(1.12)}40%{transform:scale(1)}}.statusbox[hidden]{display:none}.timeline{text-align:left;margin:0 0 18px;padding:0;list-style:none}.timeline[hidden],.timeline li[hidden]{display:none}.timeline li{grid-template-columns:22px 1fr;column-gap:12px;padding:0 0 14px;display:grid;position:relative}.timeline li:last-child{padding-bottom:0}.timeline li:before{content:"";background:var(--line);border-radius:1px;width:2px;position:absolute;top:22px;bottom:2px;left:10px}.timeline li:last-child:before{display:none}.timeline li.done:before{background:var(--accent)}.timeline i{border:2px solid var(--line);background:var(--surface);border-radius:50%;grid-row:span 2;width:22px;height:22px;transition:transform .45s cubic-bezier(.3,1.6,.5,1),background .3s,border-color .3s;transform:scale(.85)}.timeline li.done i{border-color:var(--accent);background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat;transform:none}.timeline b{font-weight:700;line-height:22px}.timeline span{color:var(--muted);font-size:13px}.timeline li:not(.done) b{color:var(--muted)}.box{width:64px;height:54px;margin:0 auto 4px;position:relative}.box i{border-radius:6px;position:absolute}.box .b1{background:var(--accent);height:30px;bottom:0;left:6px;right:6px}.box .b2{background:var(--gold);height:12px;top:12px;left:0;right:0}.box .b3{background:var(--gold);border-radius:2px;width:8px;top:12px;bottom:0;left:28px}.card.show .box{animation:1.8s ease-in-out .5s infinite wiggle}@keyframes wiggle{0%,60%,to{transform:rotate(0)}70%{transform:rotate(-6deg)}80%{transform:rotate(5deg)}90%{transform:rotate(-3deg)}}.scrim{background:var(--scrim);opacity:0;pointer-events:none;z-index:4;transition:opacity .3s;position:fixed;inset:0}.scrim.show{opacity:1;pointer-events:auto}.sheet,.card{scrollbar-width:thin;scrollbar-color:var(--line) transparent}.sheet::-webkit-scrollbar{width:10px}.card::-webkit-scrollbar{width:10px}.sheet::-webkit-scrollbar-track{background:0 0;margin:24px 0}.card::-webkit-scrollbar-track{background:0 0;margin:24px 0}.sheet::-webkit-scrollbar-thumb{background:var(--line);border:3px solid var(--surface);border-radius:10px}.card::-webkit-scrollbar-thumb{background:var(--line);border:3px solid var(--surface);border-radius:10px}.sheet::-webkit-scrollbar-thumb:hover{background:var(--muted)}.card::-webkit-scrollbar-thumb:hover{background:var(--muted)}.sheet{background:var(--surface);max-width:560px;max-height:82%;padding:10px 18px calc(22px + env(safe-area-inset-bottom,0px));z-index:5;border-radius:26px 26px 0 0;margin:0 auto;transition:transform .45s cubic-bezier(.2,.9,.25,1);position:fixed;bottom:0;left:0;right:0;overflow:auto;transform:translateY(105%)}@supports (height:100dvh){.sheet{max-height:82dvh}}.sheet.show{transform:translateY(0)}.grab{background:var(--line);border-radius:5px;width:42px;height:5px;margin:0 auto 12px}.sheet h3{letter-spacing:-.01em;margin:0 0 4px;font-size:21px;font-weight:800}.sheet .sub{color:var(--muted);margin:0 0 14px;font-size:14px}.invacts{grid-template-columns:1fr 1fr;gap:8px;margin:0 0 6px;display:grid}.invacts .btn{justify-content:center;align-items:center;gap:7px;font-size:14px;display:inline-flex}.invacts svg{flex:none;width:17px;height:17px}.inv{margin:0 0 16px;padding:0;list-style:none}.inv li{border-bottom:1px solid var(--line);grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:9px 0;display:grid}.inv .piece{border-radius:4px;height:22px;margin-top:4px;position:relative;box-shadow:inset 0 -3px #00000024}.inv .piece:before{content:"";background:inherit;border-radius:2px 2px 0 0;height:4px;position:absolute;top:-4px;left:4px;right:4px;-webkit-mask:repeating-linear-gradient(90deg,#000 0 6px,#0000 6px 9px);mask:repeating-linear-gradient(90deg,#000 0 6px,#0000 6px 9px)}.inv .nm{font-weight:600}.inv .nm small{color:var(--muted);font-size:13px;font-weight:400;display:block}.inv .ct{font-variant-numeric:tabular-nums;font-size:17px;font-weight:800}.price{background:var(--surface2);border-radius:18px;padding:14px 16px}.price div{font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;padding:3px 0;display:flex}.price .tot{border-top:1px solid var(--line);margin-top:6px;padding-top:9px;font-size:18px;font-weight:800}.note{color:var(--muted);margin:10px 0 0;font-size:12.5px}label.f{margin:4px 0 6px;font-weight:600;display:block}.sheet textarea,.sheet input[type=text],.sheet input[type=email]{border:1.5px solid var(--line);background:var(--surface2);resize:none;border-radius:14px;width:100%;margin-bottom:12px;padding:11px 13px}.sheet .btn{width:100%}.sheet .btn+.btn{margin-top:8px}#ttlSeg{margin-bottom:14px}.linkbox{gap:8px;margin-bottom:6px;display:flex}.linkbox[hidden]{display:none}.linkbox a.btn{color:inherit;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.sheet .linkbox input[type=text]{flex:1;min-width:0;margin:0;font-size:14px}.sheet .linkbox .btn{flex:none;width:auto}.note[hidden]{display:none}.legal{text-align:center;color:var(--muted);margin:14px 0 0;font-size:12.5px}.legal a{color:inherit}#linkNote{margin:0 0 12px}.swatches{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.fonts{grid-template-columns:1fr 1fr;gap:8px;margin:0 0 16px;display:grid}.fontopt{border:1.5px solid var(--line);background:var(--surface);text-align:left;border-radius:16px;flex-direction:column;gap:3px;padding:10px 11px 11px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.fontopt:active{transform:scale(.97)}.fontopt[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.fontopt b{font-size:14px;font-weight:800}.fontopt small{color:var(--muted);font-size:12px;line-height:1.3}.fontopt .cost{font-variant-numeric:tabular-nums;margin-top:4px;font-size:13px;font-weight:700;transition:opacity .2s}.fontopt .cost.busy{opacity:.4}.fprev{width:100%;height:26px;color:var(--ink);margin-bottom:4px}.fprev rect{transform-box:fill-box;transform-origin:50%;animation:.35s cubic-bezier(.3,1.4,.5,1) both pop}.swatch{border:2px solid #0000;border-radius:10px;flex:none;width:34px;height:34px;padding:0;transition:transform .2s cubic-bezier(.3,1.5,.5,1),border-color .2s;box-shadow:inset 0 0 0 1px #00000026}.swatch:active{transform:scale(.9)}.swatch[aria-pressed=true]{border-color:var(--ink);transform:scale(1.1)}.swatch.rainbow{background:conic-gradient(#cf2a3b,#f5c21b,#2f9a4c,#1e5ed3,#7a4bb5,#cf2a3b)}.crow{border-bottom:1px solid var(--line);padding:10px 0}.crow .hd{align-items:center;gap:10px;margin-bottom:8px;font-weight:600;display:flex}.crow .hd small{color:var(--muted);margin-left:auto;font-weight:400}.crow .swatches{scrollbar-width:none;flex-wrap:nowrap;margin:0;padding:4px 2px;overflow-x:auto}.crow .swatches::-webkit-scrollbar{display:none}.crow .swatch{width:30px;height:30px}#colorSheet{max-height:46%}@supports (height:100dvh){#colorSheet{max-height:46dvh}}body.recolor .scrim{background:0 0}@media (width>=900px){#colorSheet{border-radius:22px;width:380px;max-width:none;max-height:none;margin:0;inset:76px 16px 16px auto;transform:translate(calc(100% + 24px));box-shadow:0 18px 50px -20px #00000073}#colorSheet.show{transform:none}#colorSheet .grab{display:none}body.recolor .panel{right:412px}}#catSheet{max-height:88%}.tabs{scrollbar-width:none;gap:6px;margin:0 -18px 6px;padding:2px 18px 6px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{border:1.5px solid var(--line);background:var(--surface);border-radius:999px;flex:none;padding:6px 12px;font-size:13px;font-weight:600;transition:background .2s,color .2s,border-color .2s}.tab[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.cathead{color:var(--muted);margin:14px 0 8px;font-size:13px;font-weight:600}.grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}@media (width>=520px){.grid{grid-template-columns:repeat(4,1fr)}}.item{background:var(--surface2);text-align:center;animation:.45s cubic-bezier(.3,1.4,.5,1) both pop;animation-delay:var(--d,0s);border:0;border-radius:18px;flex-direction:column;align-items:center;gap:2px;padding:6px 6px 10px;font-size:13px;font-weight:600;line-height:1.2;transition:transform .15s;display:flex}.item:active{transform:scale(.95)}.item[aria-current=true]{box-shadow:inset 0 0 0 2px var(--accent)}.item .th{aspect-ratio:1;place-items:center;width:100%;display:grid}.item img{object-fit:contain;opacity:0;width:94%;height:94%;transition:opacity .35s,transform .5s cubic-bezier(.3,1.4,.5,1);transform:scale(.8)translateY(6px)}.item img.in{opacity:1;transform:none}@keyframes pop{0%{opacity:0;transform:translateY(10px)scale(.94)}}#colorList{margin-bottom:14px}.toast{left:50%;top:calc(env(safe-area-inset-top,0px) + 70px);background:var(--ink);color:var(--surface);opacity:0;z-index:7;pointer-events:none;white-space:nowrap;border-radius:999px;padding:9px 16px;font-size:14px;font-weight:600;transition:opacity .3s,transform .4s cubic-bezier(.3,1.4,.5,1);position:fixed;transform:translate(-50%,-20px)}.toast.show{opacity:1;transform:translate(-50%)}.confetti{pointer-events:none;z-index:5;position:fixed;inset:0;overflow:hidden}.confetti span{border-radius:2px;width:16px;height:9px;animation:linear forwards fall;position:absolute;top:-30px}.confetti span:before{content:"";background:inherit;border-radius:1px;width:4px;height:3px;position:absolute;top:-3px;left:2px;box-shadow:8px 0}@keyframes fall{to{transform:translate(var(--dx),110vh) rotate(var(--r))}}.fail{text-align:center;color:var(--muted);place-items:center;padding:30px;display:grid;position:absolute;inset:0}.fail[hidden]{display:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (height<=740px){.panel{bottom:calc(10px + env(safe-area-inset-bottom,0px));gap:9px;padding:10px}.facts{gap:8px}.seg button{padding:7px 4px}.btn{padding:9px 10px}.fact b{font-size:23px}.custom{padding:4px 4px 4px 10px}}.linkbtn{font:inherit;color:var(--accent);text-underline-offset:3px;background:0 0;border:0;padding:8px 4px;font-size:14px;font-weight:600;text-decoration:underline}.sheet .linkbtn{margin:4px auto 10px;display:block}.note.strong{color:var(--ink);font-weight:600}#giftIntro.boxed{top:auto;bottom:calc(18px + env(safe-area-inset-bottom,0px));transform:translate(-50%,30px)scale(.96)}#giftIntro.boxed.show{transform:translate(-50%)scale(1)}#giftIntro.boxed .box{display:none}#giftIntro.boxed h2{font-size:24px}#giftEnd .from{margin-bottom:14px}.payback{background:var(--surface2);text-align:left;border-radius:16px;flex-direction:column;gap:3px;margin:0 0 10px;padding:12px 14px;display:flex}.payback[hidden]{display:none}.payback b{font-size:15px}.payback span{color:var(--muted);font-size:13px}.endacts{gap:8px;display:grid}.endacts .btn{width:100%;min-height:48px;font-size:15.5px}.endacts .btn[hidden]{display:none}.endmore{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:0 16px;margin-top:8px;display:flex}.endmore>span[aria-hidden]{display:none}.gifbtn[aria-busy=true]{opacity:.75;cursor:progress}#giftEnd.show .payback,#giftEnd.show .endacts{animation:.5s cubic-bezier(.3,1.4,.5,1) .55s both pop}.btn.shine{position:relative;overflow:hidden}.btn.shine:after{content:"";background:linear-gradient(100deg,#0000 30%,#ffffff73 50%,#0000 70%);animation:2.6s ease-in-out 1.4s infinite shine;position:absolute;inset:0;transform:translate(-120%)}@keyframes shine{0%{transform:translate(-120%)}45%,to{transform:translate(120%)}}#giftSent .plane{width:58px;height:58px;margin:0 auto 2px}#giftSent.show .plane{animation:1.1s cubic-bezier(.3,1.3,.5,1) both fly}@keyframes fly{0%{opacity:0;transform:translate(-40px,30px)rotate(-20deg)scale(.6)}}#giftSent .linkbox input{border:1.5px solid var(--line);background:var(--surface2);min-width:0;font:inherit;color:inherit;border-radius:12px;flex:1;padding:9px 11px;font-size:13.5px}#giftSent .linkbox .btn{flex:none}#giftSent .note{text-align:left;margin:4px 0 10px}#giftSent .statusbox{background:var(--surface2);border-radius:14px;margin-bottom:12px;padding:4px 10px 6px}#giftSent .statusbox .linkbox input{background:var(--surface)}#giftSent .row{margin-top:4px}#catName.swap{animation:.45s cubic-bezier(.3,1.4,.5,1) swapin}@keyframes swapin{0%{opacity:0;transform:translateY(8px)}}.advpill{z-index:2;left:14px;top:calc(110px + env(safe-area-inset-top,0px));border:1.5px solid var(--line);background:var(--surface);height:36px;color:var(--ink);border-radius:999px;align-items:center;gap:7px;padding:0 6px 0 10px;font-size:13.5px;font-weight:700;animation:.6s cubic-bezier(.3,1.4,.5,1) .8s both pillin;display:inline-flex;position:absolute;box-shadow:0 8px 20px -12px #141e3c80}.advpill[hidden],body.gift .advpill{display:none}.advpill svg{width:20px;height:20px;animation:2.4s ease-in-out infinite twinkle}.advpill em{color:#fff;background:#e5484d;border-radius:999px;padding:3px 8px;font-size:11px;font-style:normal;font-weight:800}.advpill:active{transform:scale(.96)}@keyframes pillin{0%{opacity:0;transform:translateY(-8px)scale(.9)}}@keyframes twinkle{0%,to{transform:rotate(0)scale(1)}50%{transform:rotate(14deg)scale(1.12)}}@media (width>=720px){.advpill{top:calc(70px + env(safe-area-inset-top,0px))}}.advmodes{gap:8px;margin-bottom:14px;display:grid}.advopt{text-align:left;border:1.5px solid var(--line);background:var(--surface);color:inherit;font:inherit;border-radius:16px;grid-template-rows:auto auto;grid-template-columns:62px 1fr;align-items:center;column-gap:12px;padding:10px 12px;transition:border-color .2s,background .2s,transform .15s;display:grid}.advopt svg{grid-row:1/3;width:62px;height:46px}.advopt b{font-size:15px}.advopt small{color:var(--muted);font-size:12.5px;line-height:1.3}.advopt[aria-checked=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--surface));box-shadow:0 0 0 1.5px var(--accent) inset}.advopt:active{transform:scale(.98)}.advfinal{border:1.5px solid var(--line);border-radius:16px;align-items:center;gap:12px;margin-bottom:12px;padding:8px 10px;display:flex}.advfinal img{object-fit:contain;flex:none;width:52px;height:52px}.advfinal span{flex-direction:column;flex:1;min-width:0;display:flex}.advfinal b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.advfinal small{color:var(--muted);font-size:12px}.sheet .advfinal .btn{flex:none;width:auto;padding:8px 12px}.advpick{grid-template-columns:repeat(3,1fr);gap:8px;margin:-4px 0 14px;display:grid}.advpick[hidden]{display:none}.advpick button{border:1.5px solid var(--line);background:var(--surface2);font:inherit;color:inherit;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;font-size:13px;font-weight:600;transition:transform .15s,border-color .2s;animation:.35s cubic-bezier(.3,1.4,.5,1) both pop;display:flex}.advpick button:nth-child(2){animation-delay:40ms}.advpick button:nth-child(3){animation-delay:80ms}.advpick button:hover{border-color:var(--accent)}.advpick button:active{transform:scale(.96)}.advpick svg{width:22px;height:22px;color:var(--accent)}.advdays{border-radius:14px;gap:6px;max-height:300px;margin:8px 0 0;padding:0;list-style:none;display:grid;overflow:auto}.advdays li{align-items:center;gap:8px;display:flex}.advdays .d{background:var(--accent);width:30px;height:30px;color:var(--accent-ink);border-radius:9px;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid}.sheet .advdays input[type=text]{margin:0;padding:8px 11px;font-size:14px}.advdays .dm{border:1.5px solid var(--line);background:var(--surface2);border-radius:10px;flex:none;place-items:center;width:40px;height:40px;padding:3px;transition:transform .15s,border-color .2s;display:grid}.advdays .dm:hover,.advdays .dm[aria-expanded=true]{border-color:var(--accent)}.advdays .dm:active{transform:scale(.92)}.advdays .dm img{object-fit:contain;width:100%;height:100%}.advdays .dm img:not([src]){visibility:hidden}.advdays li.dmpick{background:var(--surface2);border-radius:14px;padding:8px;animation:.3s cubic-bezier(.3,1.4,.5,1) both pop;display:block}.dmpick p{color:var(--muted);margin:0 0 6px 4px;font-size:12.5px;font-weight:700}.dmpick div{grid-template-columns:repeat(auto-fill,minmax(68px,1fr));gap:6px;max-height:220px;display:grid;overflow:auto}.dmpick button{background:var(--surface);font:inherit;color:inherit;border:1.5px solid #0000;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:5px 3px;font-size:11px;line-height:1.15;display:flex}.dmpick button[aria-pressed=true]{border-color:var(--accent)}.dmpick button img{object-fit:contain;width:40px;height:40px}.dmpick button img:not([src]){visibility:hidden}.advsum{border:1.5px solid var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface));text-align:left;width:100%;font:inherit;color:inherit;border-radius:16px;align-items:center;gap:12px;padding:10px 12px;display:flex}.advsum .advico{flex:none;width:38px;height:38px}.advsum span:not(.go){flex-direction:column;flex:1;min-width:0;display:flex}.advsum small{color:var(--muted);font-size:12.5px}.advsum .go{color:var(--accent);font-size:14px;font-weight:700}.sheet .btn.print3d{justify-content:center;align-items:center;gap:8px;margin:0 0 12px;display:flex}.print3d svg{width:19px;height:19px}.stlopt{text-align:left;border:1.5px solid var(--line);background:var(--surface);width:100%;font:inherit;color:inherit;border-radius:16px;align-items:center;gap:12px;margin-bottom:8px;padding:12px;transition:transform .15s,border-color .2s;display:flex}.stlopt:hover{border-color:var(--accent)}.stlopt:active{transform:scale(.98)}.stlopt svg{flex:none;width:48px;height:48px}.stlopt span{flex-direction:column;gap:2px;display:flex}.stlopt small{color:var(--muted);font-size:12.5px;line-height:1.3}.stlopt em{color:var(--accent);font-size:12px;font-style:normal;font-weight:700}.stlopt.stlfig{cursor:default;margin-bottom:8px}.stlopt.stlfig:hover{border-color:var(--line)}.stlopt.stlfig:active{transform:none}.stlsizes{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 14px;display:grid}.stlsizes button{border:1.5px solid var(--line);background:var(--surface2);font:inherit;color:inherit;border-radius:14px;flex-direction:column;align-items:center;gap:1px;padding:10px 6px;transition:transform .15s,border-color .2s;display:flex}.stlsizes button:hover{border-color:var(--accent)}.stlsizes button:active{transform:scale(.96)}.stlsizes b{font-size:14.5px}.stlsizes small{color:var(--accent);font-size:13px;font-weight:700}.stlsizes em{color:var(--muted);text-align:center;font-size:11.5px;font-style:normal;line-height:1.25}@media (prefers-reduced-motion:reduce){.btn.shine:after,.advpill svg{animation:none}}.notify[hidden]{display:none}.notify{margin-top:12px}.notify label small{color:var(--muted);font-weight:500}.notify .note{margin:-6px 0 4px}.topacts{align-items:center;gap:8px;display:flex}.fbbtn{color:var(--muted)}.fbbtn:hover,.fbbtn:focus-visible{color:var(--ink)}.fbbtn svg{width:16px;height:16px}body.gift .fbbtn{display:none}@media (width<=359px){.fbbtn span{display:none}.fbbtn{padding:0 9px}}.fbtypes{flex-wrap:wrap;gap:8px;margin:2px 0 14px;display:flex}.fbtypes button{border:1.5px solid var(--line);background:var(--surface2);font:inherit;color:inherit;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:14px;font-weight:600;transition:transform .15s,background .2s,border-color .2s,color .2s;display:inline-flex}.fbtypes button:active{transform:scale(.95)}.fbtypes button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--surface);animation:.35s cubic-bezier(.3,1.4,.5,1) fbpress}@keyframes fbpress{50%{transform:scale(1.08)}}.fbtypes span{font-size:15px;line-height:1}#fbSheet label small{color:var(--muted);font-weight:500}#fbSheet textarea{min-height:104px}#fbSheet .btn:disabled{opacity:.5}#fbSheet .legal{text-align:left;line-height:1.45}.note.err{color:#d93a3f;margin:-4px 0 10px}.trap{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.endfb{margin:6px 0 0}.endfb .linkbtn{color:var(--muted);font-size:13.5px;font-weight:500}@media (prefers-reduced-motion:reduce){.fbtypes button[aria-pressed=true]{animation:none}}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-opsz-normal-D9N6E8K1.woff2)format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-opsz-normal-IcJDqblK.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-opsz-normal-Cre6nC2_.woff2)format("woff2-variations");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}
