#ui{--brand:#e31837;--brand-2:#005daa;--accent:#ffd23a;--ink:#14161a;-webkit-user-select:none;user-select:none}#ui *{box-sizing:border-box}.hud-timer{letter-spacing:1px;border-bottom:4px solid var(--accent);font-variant-numeric:tabular-nums;text-shadow:0 2px #00000080;background:#14161ac7;border-radius:12px;padding:8px 18px 10px;font:900 44px/1 ui-monospace,SF Mono,Menlo,Consolas,monospace;position:absolute;top:14px;right:14px}.hud-list{width:min(300px,34vw);color:var(--ink);background:#faf7eaf0;border-radius:6px;padding:12px 14px;font:700 15px/1.25 system-ui,sans-serif;position:absolute;top:14px;left:14px;transform:rotate(-1.2deg);box-shadow:0 6px 18px #00000059}.hud-list h2{letter-spacing:2px;color:var(--brand-2);border-bottom:2px dashed #b9b29a;margin:0 0 8px;padding-bottom:7px;font:900 13px/1 system-ui,sans-serif}.hud-list ol{margin:0;padding:0;list-style:none}.hud-list li{gap:8px;padding:3px 0;display:flex}.hud-list li:before{content:"☐";flex:none}.hud-list li.got{color:#8b8672;text-decoration:line-through}.hud-list li.got:before{content:"☑";text-decoration:none}.hud-list li.next{color:var(--brand-2)}.hud-list li.next:before{content:"➜";color:#c8372d}.hud-list li.extra{color:#a3271e}.hud-goal{color:#55503f;border-top:2px dashed #b9b29a;margin-top:8px;padding-top:7px;font-size:13px}.hud-combo{text-align:right;color:var(--accent);text-shadow:0 4px #7a5a00,0 8px 18px #00000080;opacity:0;font:900 64px/.9 system-ui,sans-serif;transition:opacity .15s,transform .15s;position:absolute;top:46%;right:26px;transform:scale(.7)}.hud-combo small{letter-spacing:3px;color:#fff;text-shadow:0 2px #0009;font-size:18px;display:block}.hud-combo.on{opacity:1;transform:scale(1)}.hud-combo.pulse{animation:.45s ease-out combo-pulse}@keyframes combo-pulse{0%{color:#fff;transform:scale(1.7)rotate(-6deg)}to{transform:scale(1)rotate(0)}}.hud-toasts{flex-direction:column-reverse;align-items:center;gap:8px;display:flex;position:absolute;bottom:13%;left:50%;transform:translate(-50%)}.hud-toast{border-left:6px solid var(--accent);white-space:nowrap;background:#14161ad6;border-radius:8px;padding:9px 18px;font:800 22px/1.2 system-ui,sans-serif;animation:.2s ease-out toast-in}.hud-toast.bad{border-left-color:#e2483b}@keyframes toast-in{0%{opacity:0;transform:translateY(14px)scale(.9)}}.hud-pa{background:var(--brand);text-align:center;opacity:0;border:3px solid #fff;border-radius:10px;width:max-content;min-width:300px;max-width:min(720px,100vw - 660px);padding:10px 20px 11px;font:800 20px/1.3 system-ui,sans-serif;transition:opacity .3s,transform .3s;position:absolute;top:12px;left:50%;transform:translate(-50%,-60px)}.hud-pa.on{opacity:1;transform:translate(-50%)}.hud-pa b{letter-spacing:3px;color:#fff;opacity:.85;font-size:12px;display:block}.hud-phone{background:#101216;border:3px solid #2c3038;border-radius:26px;width:250px;padding:16px 16px 18px;font:600 16px/1.35 system-ui,sans-serif;transition:transform .35s cubic-bezier(.2,1.3,.4,1);position:absolute;top:92px;right:14px;transform:translate(140%)rotate(4deg);box-shadow:0 14px 40px #0009}.hud-phone.on{transform:translate(0)rotate(-2deg)}.hud-phone b{letter-spacing:2px;color:#7be08f;margin-bottom:6px;font-size:12px;display:block}.hud-phone p{background:#005daa;border-radius:14px 14px 14px 4px;margin:0;padding:10px 12px}.hud-speed{opacity:0;background:repeating-conic-gradient(at 50% 46%,#fff0 0deg 5deg,#ffffff29 5.4deg 6deg);transition:opacity .25s;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 50% 46%,#0000 42%,#000 82%);mask-image:radial-gradient(at 50% 46%,#0000 42%,#000 82%)}.hud-speed.on{opacity:1}.hud-go{color:var(--accent);text-shadow:0 8px #7a5a00,0 16px 40px #0009;place-items:center;font:900 180px/1 system-ui,sans-serif;animation:.9s ease-out forwards go;display:grid;position:absolute;inset:0}@keyframes go{0%{opacity:0;transform:scale(.3)}25%{opacity:1;transform:scale(1.15)}70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}.hud-hint{letter-spacing:.5px;background:#14161a99;border-radius:999px;padding:6px 14px;font:600 14px/1 system-ui,sans-serif;transition:opacity .6s;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.screen{pointer-events:auto;background:radial-gradient(#0a0e0c8c,#0a0e0ce0);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.screen.title{background:radial-gradient(#0a0e0c59,#0a0e0ccc)}.screen.title~.hud{visibility:hidden}.hud:has(~.screen.title){visibility:hidden}.receipt{width:min(420px,92vw);color:var(--ink);background:#fbf8ec;padding:26px 26px 22px;font:600 16px/1.4 ui-monospace,SF Mono,Menlo,Consolas,monospace;animation:.45s cubic-bezier(.2,1.2,.4,1) receipt-in;position:relative;box-shadow:0 20px 60px #0009}.receipt:after{content:"";background:linear-gradient(135deg,#fbf8ec 6px,#0000 0) 0 0/12px 12px,linear-gradient(-135deg,#fbf8ec 6px,#0000 0) 0 0/12px 12px;height:12px;position:absolute;bottom:-12px;left:0;right:0}@keyframes receipt-in{0%{opacity:0;transform:translateY(-40px)rotate(-3deg)}}.receipt h1{text-align:center;color:var(--brand);letter-spacing:0;margin:0;font:italic 900 32px/1 system-ui,sans-serif}.receipt .sub{text-align:center;letter-spacing:2px;color:#6b6756;margin:6px 0 14px;font-size:12px}.receipt hr{border:0;border-top:2px dashed #b9b29a;margin:12px 0}.receipt .row{justify-content:space-between;gap:12px;display:flex}.receipt .total{margin:4px 0;font:900 40px/1.1 ui-monospace,SF Mono,Menlo,Consolas,monospace}.receipt .badge{background:var(--accent);letter-spacing:1px;vertical-align:middle;border-radius:4px;margin-left:8px;padding:2px 8px;font:900 12px/1.4 system-ui,sans-serif;display:inline-block}.receipt .buttons{gap:10px;margin-top:16px;display:flex}.receipt button{cursor:pointer;border:0;border-radius:8px;flex:1;padding:13px 10px;font:900 16px/1 system-ui,sans-serif}.receipt button.primary{background:var(--brand-2);color:#fff}.receipt button.secondary{color:var(--ink);background:#e7e1c9}.receipt button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.receipt textarea{width:100%;height:78px;font:inherit;resize:none;margin-top:10px;font-size:13px}.receipt .keys{text-align:center;color:#6b6756;margin-top:10px;font-size:12px}.title-card{text-align:center;max-width:720px}.title-card .kicker{letter-spacing:4px;color:#fff;font:800 14px/1 system-ui,sans-serif}.title-card h1{letter-spacing:-2px;color:#fff;text-shadow:0 6px 0 var(--brand), 0 12px 0 var(--brand-2), 0 22px 50px #0009;margin:14px 0 10px;font:900 clamp(64px,13vw,150px)/.86 system-ui,sans-serif;transform:rotate(-2deg)}.title-card .pitch{margin:22px 0 14px;font:700 22px/1.3 system-ui,sans-serif}.title-card .daily{background:var(--brand-2);letter-spacing:1px;border:2px solid #fff;border-radius:8px;padding:7px 14px;font:800 14px/1 ui-monospace,SF Mono,Menlo,Consolas,monospace;display:inline-block}.title-card .controls{flex-wrap:wrap;justify-content:center;gap:10px 22px;margin:22px 0 0;font:600 15px/1.8 system-ui,sans-serif;display:flex}kbd{min-width:26px;color:var(--ink);text-align:center;background:#fbf8ec;border-bottom:3px solid #b9b29a;border-radius:5px;margin:0 2px;padding:2px 7px;font:800 13px/1.5 ui-monospace,SF Mono,Menlo,Consolas,monospace;display:inline-block}.title-card .press{letter-spacing:5px;color:var(--accent);margin-top:26px;font:900 22px/1 system-ui,sans-serif;animation:1.1s steps(2,jump-none) infinite blink}@keyframes blink{50%{opacity:.25}}.gate{background:#0d1b2e}.gate-card{text-align:center;width:min(420px,92vw);font:600 18px/1.45 system-ui,sans-serif}.gate-card h1{color:#fff;text-shadow:0 4px 0 var(--brand);margin:0 0 16px;font:900 44px/.95 system-ui,sans-serif}.gate-card .media{border:3px solid var(--accent);aspect-ratio:16/9;background:#0a1422;border-radius:12px;margin-bottom:16px;overflow:hidden}.gate-card .media img,.gate-card .media video{object-fit:cover;width:100%;height:100%;display:block}.gate-card button{background:var(--accent);width:100%;color:var(--ink);word-break:break-all;border:0;border-radius:10px;margin-top:12px;padding:14px;font:900 17px/1.2 system-ui,sans-serif}.hud-skip{background:#14161a99;border-radius:999px;padding:6px 12px;font:600 13px/1 system-ui,sans-serif;position:absolute;bottom:18px;right:18px}
