:root{--ink-900:#0a0b10;--ink-800:#0c0d13;--ink-700:#0e0f17;--ink-600:#14161f;--ink-500:#1b1e2a;--ink-400:#23273a;--ink-300:#2a2d3b;--ink-200:#3a3b4d;--ink-100:#676b8e;--fog-500:#6f6f85;--fog-400:#8b8b9e;--fog-300:#a8a8ba;--stone-200:#d3d1dc;--stone-100:#ececf3;--flame-core:#fff3d8;--flame-500:#ffcf7a;--flame-600:#f5b95c;--flame-ink:#2a1c05;--coral:#ff6b6b;--safe:#52e39f;--danger:#ff5252;--bg:var(--ink-800);--surface:var(--ink-600);--surface-raised:var(--ink-500);--stage:var(--ink-700);--border:var(--ink-300);--border-strong:var(--ink-100);--accent:var(--flame-500);--accent-hover:var(--flame-600);--on-accent:var(--flame-ink);--wall:var(--stone-200);--light:var(--flame-500);--light-core:var(--flame-core);--figure-caught:var(--danger);--ink:var(--ink-800);--ink-2:var(--ink-600);--ink-3:var(--ink-500);--stone:var(--stone-200);--glow:var(--flame-500);--figure:var(--coral);--figure-safe:var(--safe);--text:var(--stone-100);--muted:var(--fog-400);--line:var(--ink-300);--font-display:Georgia, "Times New Roman", serif;--font-ui:system-ui, -apple-system, "Segoe UI", sans-serif;--text-xs:.72rem;--text-sm:.8rem;--text-base:.92rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-display:clamp(1.9rem, 8vw, 2.6rem);--tracking-label:.22em;--tracking-badge:.14em;--leading-body:1.5;--leading-tight:1.2;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius-sm:12px;--radius-md:14px;--radius-lg:20px;--radius-pill:999px;--ease-out:cubic-bezier(.2, .7, .2, 1);--dur-fast:80ms;--dur-base:.15s;--dur-slow:.4s;--shadow-panel:0 24px 60px -30px #000, inset 0 1px 0 #ffffff0a;--safe-top:var(--safe-area-inset-top,env(safe-area-inset-top,0px));--safe-right:var(--safe-area-inset-right,env(safe-area-inset-right,0px));--safe-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px));--safe-left:var(--safe-area-inset-left,env(safe-area-inset-left,0px))}*{box-sizing:border-box}html,body{margin:0}html{background:var(--ink-800)}body{background:radial-gradient(120% 80% at 50% -10%, #191b27 0%, var(--ink) 60%);background-color:var(--ink);min-height:100%;color:var(--text);-webkit-tap-highlight-color:transparent;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.app{min-height:100vh;padding:calc(22px + var(--safe-top)) calc(16px + var(--safe-right)) calc(28px + var(--safe-bottom)) calc(16px + var(--safe-left));z-index:0;flex-direction:column;align-items:center;gap:16px;max-width:28rem;margin:0 auto;display:flex;position:relative}.app.fit{height:100dvh;overflow:hidden}.menu-ambient{z-index:-1;pointer-events:none;background-color:var(--ink-800);animation:.9s both ambient-rise;position:fixed;inset:0}.menu-ambient:before{content:"";background:radial-gradient(76% 32% at 50% 27%,#ffe7be80,#ffe7be00 74%);animation:11s ease-in-out infinite lamp-swing;position:absolute;inset:0 -8%}@keyframes lamp-swing{0%{transform:translate(0)}25%{transform:translate(1.6%)}50%{transform:translate(0)}75%{transform:translate(-1.6%)}to{transform:translate(0)}}@keyframes ambient-rise{0%{opacity:0;transform:translateY(-2%)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.menu-ambient,.menu-ambient:before{animation:none}}.screen-ambient{z-index:-1;pointer-events:none;background:radial-gradient(85% 32% at 50% 0,#ffe9be42,#0000 74%),radial-gradient(60% 22% at 50% 20%,#f6d49e21,#0000 78%),radial-gradient(85% 42% at 50% 100%,#0a0b108c,#0000 62%);animation:.9s both ambient-rise;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.screen-ambient{animation:none}}.title{letter-spacing:.01em;text-align:center;text-wrap:balance;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.9rem,8vw,2.6rem);font-weight:500}.title-logo{margin:0 auto;display:block}.app.leaving{opacity:0;pointer-events:none;transition:opacity .32s}@media (prefers-reduced-motion:reduce){.app.leaving{opacity:1;transition:none}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.subtitle{color:var(--muted);text-align:center;text-wrap:pretty;margin:0;font-size:.95rem;line-height:1.5}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--glow);opacity:.85;text-align:center;margin:0;font-size:.72rem}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:14px;padding:14px 18px;font-size:.95rem;font-weight:600;transition:transform 80ms,filter .15s,background .15s}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--glow);outline-offset:2px}.btn.primary{background:var(--glow);color:#2a1c05}.btn.primary:hover{filter:brightness(1.06)}.btn.primary:disabled{background:var(--ink-3);color:var(--muted);cursor:default}.btn.ghost{color:var(--text);border-color:var(--border-strong);background:0 0}.btn.ghost:hover{background:var(--ink-3)}.btn.ghost:disabled{color:var(--muted);border-color:var(--line);cursor:default;opacity:.6;background:0 0}.btn.ghost:disabled:hover{background:0 0}.btn.race-entry{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));color:var(--accent)}.btn.wide{width:100%}.menu{flex-direction:column;gap:12px;width:100%;margin-top:8px;display:flex}.corner-btn{top:calc(16px + var(--safe-top));z-index:5;border-radius:var(--radius-pill);background:var(--ink-2);border:1px solid var(--border-strong);width:44px;height:44px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;font-size:1.15rem;line-height:1;display:flex;position:absolute;box-shadow:0 8px 20px -10px #000}.corner-btn.left{left:calc(16px + var(--safe-left))}.corner-btn.right{right:calc(16px + var(--safe-right))}.corner-btn:hover{background:var(--ink-3)}.corner-btn:active{transform:translateY(1px)}.corner-btn:focus-visible{outline:2px solid var(--glow);outline-offset:2px}.toggle-row{color:var(--muted);justify-content:center;align-items:center;gap:10px;font-size:.85rem;display:flex}.toggle-row input{accent-color:var(--glow)}.play-chrome{flex:none;width:100%}.stage-slot{width:auto;min-height:0;margin-left:calc(-16px - var(--safe-left));margin-right:calc(-16px - var(--safe-right));flex:auto;justify-content:center;align-self:stretch;align-items:flex-end;display:flex}.play-footer{flex-direction:column;flex:none;gap:10px;width:100%;display:flex}.stage-shell{border:1px solid var(--line);background:var(--ink-2);border-left:0;border-right:0;border-radius:20px 20px 0 0;width:100%;max-width:100%;position:relative;overflow:hidden;box-shadow:0 24px 60px -30px #000,inset 0 1px #ffffff0a}canvas.stage{touch-action:none;cursor:grab;width:100%;height:auto;display:block}.hud{flex-direction:column;align-items:center;gap:6px;width:100%;font-size:.8rem;display:flex}.hud-left{justify-content:center;align-items:center;gap:8px;min-width:0;display:flex}.hud-name{white-space:nowrap;text-overflow:ellipsis;font-family:Georgia,serif;font-size:1rem;overflow:hidden}.badge{letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line);color:var(--glow);border-radius:999px;flex:none;padding:2px 7px;font-size:.6rem}.timer{font-variant-numeric:tabular-nums;align-items:center;gap:8px;width:100%;max-width:15rem;display:flex}.timer .bar{background:var(--ink-3);border-radius:3px;flex:auto;height:5px;display:block;position:relative;overflow:hidden}.timer .par-tick{background:var(--text);opacity:.55;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.timer .fill{background:linear-gradient(90deg, var(--glow), var(--figure));height:100%;display:block}.timer .num{text-align:right;flex:none;min-width:2.6ch}.controls{gap:10px;width:100%;display:flex}.controls .btn{flex:1}.controls .btn.ghost{flex:none;padding-inline:18px}.hint{color:var(--muted);text-align:center;text-wrap:pretty;min-height:1.3em;margin:0;font-size:.84rem}.shadow-commit{font:inherit;cursor:pointer;width:100%;color:var(--muted);border:1px dashed var(--border-strong);background:0 0;border-radius:12px;padding:10px 16px;font-size:.82rem;font-weight:600;transition:transform 80ms,filter .15s,background .15s,color .15s,border-color .15s}.shadow-commit:active{transform:translateY(1px)}.shadow-commit:hover{background:var(--ink-3)}.shadow-commit.active{color:var(--glow);border:1px solid var(--glow);background:color-mix(in srgb, var(--glow) 14%, transparent)}.shadow-commit:disabled{opacity:.4;cursor:default}.shadow-commit:disabled:hover{background:0 0}.shadow-result{justify-content:center;align-items:center;gap:8px;margin:0;font-size:.88rem;display:flex}.shadow-result.earned{color:var(--glow)}.shadow-result.spent{color:var(--muted)}.shadow-icon{font-size:1.1rem;line-height:1}.shadow-icon.dim{opacity:.5;filter:grayscale()}.shadow-hint{color:var(--muted);margin:0;font-size:.78rem}.lv-shadow{font-size:1rem;line-height:1}.lv-shadow.dim{opacity:.3;filter:grayscale()}.overlay{-webkit-backdrop-filter:blur(16px);z-index:10;background:#06070cd9;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.result{background:var(--ink-2);border:1px solid var(--line);text-align:center;border-radius:20px;flex-direction:column;gap:10px;width:100%;max-width:22rem;padding:26px 24px;display:flex}.result h2{margin:0;font-family:Georgia,serif;font-size:1.5rem;font-weight:500}.result.safe h2{color:var(--figure-safe)}.result.caught h2{color:var(--figure)}.result .stars{letter-spacing:.2em;color:var(--glow);margin:0;font-size:1.6rem}.result .sub{color:var(--muted);margin:0;font-size:.88rem}.result-actions{gap:10px;margin-top:8px;display:flex}.result-actions .btn{flex:1}.fun-ask{color:var(--muted);justify-content:center;align-items:center;gap:10px;margin-top:4px;font-size:.82rem;display:flex}.fun-btn{border:1px solid var(--border-strong);cursor:pointer;background:0 0;border-radius:10px;padding:6px 10px;font-size:1.1rem;line-height:1;transition:transform 80ms,background .15s}.fun-btn:active{transform:translateY(1px)}.fun-btn:hover{background:var(--ink-3)}.fun-thanks{color:var(--glow);margin:4px 0 0;font-size:.82rem}.level-section{width:100%}.pack-heading{letter-spacing:.2em;text-transform:uppercase;color:var(--glow);opacity:.85;text-align:left;width:100%;margin:18px 0 8px;font-size:.74rem}.pack-heading:first-of-type{margin-top:4px}.pack-tag{color:var(--muted);text-transform:none;letter-spacing:normal;font-weight:400}.pack-status{flex-direction:column;gap:4px;width:100%;margin:2px 0 10px;display:flex}.pack-status-label{color:var(--muted);text-transform:none;letter-spacing:normal;text-align:left;font-size:.72rem}.pack-progress{background:var(--ink-300);border-radius:2px;height:4px;display:block;overflow:hidden}.pack-progress-fill{background:var(--glow);border-radius:2px;height:100%;transition:width .24s;display:block}.level-grid{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.pack-locked{color:var(--muted);text-align:left;margin:0;font-size:.82rem}.level-card{text-align:left;background:var(--ink-2);border:1px solid var(--border-strong);color:var(--text);font:inherit;cursor:pointer;border-radius:14px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.level-card:disabled{opacity:.38;cursor:default}.level-card .lv-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-family:Georgia,serif;font-size:.95rem;line-height:1.3;display:-webkit-box;overflow:hidden}.level-card .lv-meta{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.level-card .lv-stars{align-items:center;gap:8px;height:1.2rem;display:flex}.level-card .lv-pips{color:var(--glow);letter-spacing:.15em;font-size:.85rem}.stat-section{width:100%}.stat-list{flex-direction:column;gap:8px;width:100%;display:flex}.stat-row{background:var(--ink-2);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 16px;font-size:.9rem;display:flex}.stat-row .k{color:var(--muted)}.stat-row .v{font-variant-numeric:tabular-nums;white-space:nowrap}.back-row{width:100%;display:flex}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.fps-overlay{z-index:5;color:var(--text);font-variant-numeric:tabular-nums;border-radius:var(--radius-sm);pointer-events:none;background:#06070c99;padding:3px 8px;font-size:.7rem;position:absolute;top:8px;left:8px}.debug-fab{left:calc(14px + var(--safe-left));bottom:calc(14px + var(--safe-bottom));z-index:20;border-radius:var(--radius-pill);background:var(--ink-2);border:1px solid var(--border);width:40px;height:40px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:flex;position:fixed;box-shadow:0 8px 20px -10px #000}.debug-fab:active{transform:translateY(1px)}.debug-panel{left:calc(14px + var(--safe-left));bottom:calc(60px + var(--safe-bottom));z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:10px;width:100%;max-width:18rem;max-height:70vh;padding:14px;display:flex;position:fixed;overflow-y:auto;box-shadow:0 24px 60px -30px #000}.debug-badge{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.68rem}.debug-row{color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;font-size:.82rem;display:flex}.debug-row input{accent-color:var(--accent)}.debug-jump{flex-wrap:wrap;gap:6px;display:flex}.debug-jump .btn{justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:.72rem;display:flex}.lab-stars{justify-content:center;gap:4px;display:flex}.lab-star{color:var(--glow);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:1.3rem;line-height:1}.lab-note{font:inherit;background:var(--ink-3);border:1px solid var(--border);color:var(--text);border-radius:10px;width:100%;padding:8px 10px;font-size:.82rem}.lab-note::placeholder{color:var(--muted)}.coach-mark{z-index:20;max-width:220px;font:inherit;text-align:center;cursor:pointer;color:var(--ink);background:var(--glow);border:none;border-radius:12px;padding:9px 12px;font-size:.8rem;line-height:1.3;position:fixed;transform:translate(-50%,calc(-100% - 12px));box-shadow:0 10px 30px -12px #000}.coach-mark:after{content:"";border:6px solid #0000;border-top-color:var(--glow);border-bottom:0;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}@keyframes coach-pulse{0%,to{transform:translate(-50%,calc(-100% - 12px))scale(1)}50%{transform:translate(-50%,calc(-100% - 12px))scale(1.04)}}.coach-mark.pulse{animation:1.6s ease-in-out infinite coach-pulse}@media (prefers-reduced-motion:reduce){.coach-mark.pulse{animation:none}}.about-body{text-align:left;gap:12px;width:100%;max-width:380px;margin:4px auto;line-height:1.5;display:grid}.about-body strong{color:var(--glow)}.about-note{color:var(--muted);text-align:center;max-width:380px;margin:8px auto 0;font-size:.8rem}.pack-complete{gap:8px;width:100%;max-width:340px;margin:8px auto 4px;display:grid}.pack-complete .pc-row{border:1px solid var(--line);background:var(--ink-2);border-radius:12px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.pack-complete .k{color:var(--muted);font-size:.85rem}.pack-complete .v{font-variant-numeric:tabular-nums;font-size:1rem}.trophy{text-align:center;color:var(--glow);font-variant-numeric:tabular-nums;margin:2px 0 6px;font-size:.95rem}.settings{text-align:left;gap:10px;width:100%;max-width:340px;margin:4px auto;display:grid}.settings-h{color:var(--glow);margin:8px 0 0;font-family:Georgia,serif;font-size:1rem;font-weight:500}.how-to{color:var(--muted);gap:6px;margin:0;padding-left:1.2em;font-size:.9rem;line-height:1.4;display:grid}.settings-note{color:var(--muted);margin:0;font-size:.82rem;line-height:1.4}.settings-credits{color:var(--muted);margin:10px 0 0;font-size:.72rem}.support-id{-webkit-user-select:text;user-select:text;overflow-wrap:anywhere}.reset-confirm{gap:8px;display:grid}.reset-actions{gap:10px;display:flex}.reset-actions .btn{flex:1}.btn.danger{color:#ff5252;border:1px solid #ff525280}.pause-card{background:var(--ink-2);border:1px solid var(--line);text-align:center;border-radius:20px;flex-direction:column;gap:14px;width:100%;max-width:20rem;padding:26px 24px;display:flex}.pause-card h2{margin:0;font-family:Georgia,serif;font-size:1.4rem;font-weight:500}.result-sheet{z-index:10;padding:16px calc(16px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(16px + var(--safe-left));background:linear-gradient(#06070c00,#06070ceb 60%);justify-content:center;animation:.25s ease-out sheet-rise;display:flex;position:fixed;bottom:0;left:0;right:0}@keyframes sheet-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.result-sheet{animation:none}}.home-eyebrow{flex-direction:column;align-items:center;gap:6px;margin-bottom:-8px;display:flex}.beta-tag{width:fit-content;color:var(--glow);border:1px solid var(--border-strong);letter-spacing:.18em;cursor:pointer;opacity:.8;background:0 0;border-radius:999px;padding:2px 10px;font-size:.62rem}.beta-tag:hover{background:var(--ink-3);opacity:1}.beta-tag:focus-visible{outline:2px solid var(--glow);outline-offset:2px}.feedback{text-align:left;gap:12px;width:100%;max-width:380px;margin:4px auto;display:grid}.feedback-intro{color:var(--muted);margin:0;font-size:.9rem;line-height:1.45}.feedback-label{color:var(--glow);gap:6px;font-size:.8rem;display:grid}.feedback-text,.feedback-input{background:var(--ink-800);border:1px solid var(--border-strong);width:100%;color:var(--text);font:inherit;border-radius:10px;padding:10px;font-size:.9rem}.feedback-text{resize:vertical;min-height:96px}.feedback-text:focus-visible,.feedback-input:focus-visible{outline:2px solid var(--glow);outline-offset:1px}.feedback-micro{color:var(--muted);margin:-4px 0 0;font-size:.75rem}.feedback-privacy{color:var(--muted);margin:0;font-size:.75rem;line-height:1.4}.feedback-error{color:#ff5252;margin:0;font-size:.82rem}.feedback-thanks{color:var(--muted);text-align:center;max-width:340px;margin:4px auto;font-size:.9rem}.turnstile{min-height:65px}.beta-intro-backdrop{background:color-mix(in srgb, var(--ink-800) 82%, transparent);z-index:50;padding:calc(22px + var(--safe-top)) calc(22px + var(--safe-right)) calc(22px + var(--safe-bottom)) calc(22px + var(--safe-left));place-items:center;display:grid;position:fixed;inset:0}.beta-intro-card{background:var(--ink-800);border:1px solid var(--line);text-align:center;border-radius:16px;gap:12px;width:min(360px,90vw);padding:22px;display:grid}.beta-intro-title{color:var(--text);margin:0;font-family:Georgia,serif;font-size:1.25rem;font-weight:500}.beta-intro-body{color:var(--muted);margin:0;font-size:.9rem;line-height:1.5}.beta-intro-actions{gap:8px;margin-top:4px;display:grid}.support-link{width:fit-content;color:var(--muted);border-bottom:1px solid #0000;margin:10px auto 0;font-size:.82rem;text-decoration:none;display:block}.support-link:hover{color:var(--glow);border-bottom-color:color-mix(in srgb, var(--glow) 50%, transparent)}.support-link:focus-visible{outline:2px solid var(--glow);outline-offset:2px;border-radius:3px}.get-app-qr{flex-direction:column;align-items:center;gap:6px;margin:10px auto 0;display:flex}.store-qr{border-radius:8px;display:block}.qr-caption{color:var(--muted);text-align:center;max-width:14rem;margin:0;font-size:.76rem}.gelopard-credit{justify-content:center;align-items:center;gap:var(--space-2);width:fit-content;margin:var(--space-3) auto 0;color:var(--muted);font-size:var(--text-xs);text-decoration:none;display:flex}.gelopard-credit:hover{color:var(--text)}.gelopard-credit:focus-visible{outline:2px solid var(--glow);outline-offset:3px;border-radius:3px}.gelopard-credit img{width:auto;height:18px;display:block}.toast{left:50%;bottom:calc(1rem + var(--safe-bottom));background:var(--surface-raised,#14141cf5);width:min(92vw,26rem);color:var(--text,#f4f4f6);z-index:60;border-radius:.75rem;align-items:center;gap:.75rem;padding:.75rem 1rem;animation:.28s ease-out toast-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 30px #00000073}.toast-msg{flex:1;min-width:0;font-size:.95rem}.toast-cta{background:var(--accent,#6ea8fe);color:#10121a;cursor:pointer;border:none;border-radius:.5rem;padding:.4rem .75rem;font-weight:600}.toast-close{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;font-size:1.2rem;line-height:1}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,1rem)}to{opacity:1;transform:translate(-50%)}}.toast.toast-top{top:calc(72px + var(--safe-top));animation:.28s ease-out toast-in-top;bottom:auto}@keyframes toast-in-top{0%{opacity:0;transform:translate(-50%,-1rem)}to{opacity:1;transform:translate(-50%)}}.unlock-overlay{z-index:70;padding:calc(1.5rem + var(--safe-top)) calc(1.5rem + var(--safe-right)) calc(1.5rem + var(--safe-bottom)) calc(1.5rem + var(--safe-left));-webkit-backdrop-filter:blur(8px);background:radial-gradient(circle at 50% 38%,#606ca029,#0000 62%),#08090efb;place-items:center;animation:.35s ease-out unlock-fade;display:grid;position:fixed;inset:0}.unlock-card{text-align:center;flex-direction:column;align-items:center;gap:.6rem;max-width:22rem;display:flex}.unlock-eyebrow{text-transform:uppercase;letter-spacing:.18em;opacity:.7;margin:0;font-size:.72rem;animation:.45s ease-out 80ms both unlock-rise}.unlock-glyph{font-size:4.5rem;line-height:1;animation:.5s cubic-bezier(.2,1.3,.5,1) both unlock-pop,2.4s ease-in-out .5s infinite unlock-glow}.unlock-title{margin:.2rem 0 0;font-size:2rem;animation:.5s ease-out .16s both unlock-rise}.unlock-sub{opacity:.82;margin:0;animation:.5s ease-out .24s both unlock-rise}.unlock-actions{gap:.75rem;margin-top:1rem;animation:.5s ease-out .32s both unlock-rise;display:flex}@keyframes unlock-fade{0%{opacity:0}to{opacity:1}}@keyframes unlock-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes unlock-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes unlock-glow{0%,to{filter:drop-shadow(0 0 6px #6ea8fe59)}50%{filter:drop-shadow(0 0 22px #6ea8feb3)}}@media (prefers-reduced-motion:reduce){.unlock-eyebrow,.unlock-glyph,.unlock-title,.unlock-sub,.unlock-actions{animation:none}}.mode-locked{justify-content:center;align-items:center;gap:.5rem;display:inline-flex;position:relative}.mode-mystery{letter-spacing:.25em;opacity:.6}.mode-ring{background:conic-gradient(var(--accent,#6ea8fe) calc(var(--warm,0) * 360deg), #ffffff24 0);width:1.1rem;height:1.1rem;box-shadow:0 0 calc(6px + var(--warm,0) * 14px) rgba(110, 168, 254, calc(.15 + var(--warm,0) * .5));border-radius:50%;transition:box-shadow .4s}.mode-entry{flex-direction:column;gap:.15rem;display:flex;position:relative}.mode-tagline{opacity:.6;font-size:.72rem;font-weight:400}.mode-buy{color:var(--accent,#6ea8fe);font-size:.72rem;font-weight:700}.mode-new{letter-spacing:.12em;background:var(--accent,#6ea8fe);color:#10121a;vertical-align:middle;border-radius:.4rem;margin-left:.5rem;padding:.1rem .4rem;font-size:.64rem;font-weight:700}.pack-new{letter-spacing:.12em;background:var(--accent,#6ea8fe);color:#10121a;vertical-align:middle;border-radius:.4rem;margin-left:.5rem;padding:.08rem .36rem;font-size:.6rem;font-weight:700}.celebration-canvas{pointer-events:none;z-index:80;position:fixed;inset:0}.result .stars .star{display:inline-block}.result .stars .star.empty{opacity:.35}.result .stars .star.earned{animation:.42s cubic-bezier(.2,1.3,.5,1) both star-pop;animation-delay:calc(.12s + var(--i) * .13s)}@keyframes star-pop{0%{opacity:0;transform:scale(.2)}60%{transform:scale(1.25)}to{opacity:1;transform:scale(1)}}.result .shadow-result.earned .shadow-icon{animation:.5s cubic-bezier(.2,1.3,.5,1) .5s both star-pop;display:inline-block}@media (prefers-reduced-motion:reduce){.result .stars .star.earned,.result .shadow-result.earned .shadow-icon{animation:none}}@keyframes shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(3px)}30%,50%,70%{transform:translate(-5px)}40%,60%{transform:translate(5px)}}.app.impact{animation:.4s both shake}.caught-flash{background:var(--figure);pointer-events:none;animation:.42s ease-out both flash-out;position:absolute;inset:0}@keyframes flash-out{0%{opacity:.32}to{opacity:0}}@media (prefers-reduced-motion:reduce){.app.impact{animation:none}.caught-flash{opacity:0;animation:none}}.home-top{flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:10px;width:100%;min-height:0;display:flex;overflow:hidden}@media (height<=720px){.home-top .subtitle{display:none}}.home-actions{flex-direction:column;flex:none;gap:10px;width:100%;display:flex}.home-chips{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.chip-btn{font:inherit;cursor:pointer;color:var(--muted);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:0 0;padding:12px 16px;font-size:.8rem}.chip-btn:hover{background:var(--ink-3);color:var(--text)}.chip-btn:active{transform:translateY(1px)}.chip-btn:focus-visible{outline:2px solid var(--glow);outline-offset:2px}.mode-rail{scroll-snap-type:x mandatory;scrollbar-width:none;flex:none;align-self:stretch;gap:10px;width:auto;margin-inline:-16px;padding:2px 16px 8px;display:flex;overflow-x:auto}.mode-rail::-webkit-scrollbar{display:none}.rail-card{scroll-snap-align:center;text-align:left;background:var(--ink-3);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-md);font:inherit;cursor:pointer;flex-direction:column;flex:0 0 66%;gap:3px;padding:12px 14px;font-size:.9rem;font-weight:600;display:flex}.rail-card:active{transform:translateY(1px)}.rail-card:focus-visible{outline:2px solid var(--glow);outline-offset:2px}.rail-card.mode-locked{color:var(--fog-500);border-style:dashed;flex-direction:row;justify-content:center;align-items:center;gap:.5rem}.rail-included{color:var(--muted);font-size:.72rem;font-weight:600}.rail-status{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:400}.rail-card .pack-progress{margin-top:2px}.tester-gate{justify-content:center}.tester-gate .sub{color:var(--muted);margin:0;font-size:.9rem;line-height:1.4}.say{text-align:center;gap:8px;margin-top:6px;display:grid}.say-q{color:var(--text);margin:0;font-size:.9rem;line-height:1.4}.say-chips,.say-faces{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.say .chip{color:var(--text);border:1px solid var(--line);min-height:44px;font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:8px 14px;font-size:.85rem}.say-face{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:12px;width:48px;height:48px;font-size:1.4rem;line-height:1}.say .chip.on,.say-face.on{border-color:var(--glow);color:var(--glow);background:color-mix(in srgb, var(--glow) 12%, transparent)}.say .chip:focus-visible,.say-face:focus-visible{outline:2px solid var(--glow);outline-offset:2px}.say-text{background:var(--ink-3);color:var(--text);border:1px solid var(--line);font:inherit;resize:vertical;border-radius:12px;min-height:44px;padding:10px 12px;font-size:.9rem}.say-thanks{color:var(--muted);margin:6px 0 0;font-size:.88rem}
