:root{--bg:#0b0f14;--fg:#f4f4f1;--gold:#d6a640;--red:#ff2a2a;--ice:#dfe9f2;--font:"Avenir Next", "Helvetica Neue", "Segoe UI", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, monospace}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--fg);font-family:var(--font);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0;overflow:hidden}#c{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#hud{pointer-events:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:fixed;inset:0}#score{top:calc(18px + env(safe-area-inset-top));text-align:center;letter-spacing:.04em;text-shadow:0 2px #00000059,0 0 24px #00000040;font-size:clamp(44px,9vmin,84px);font-weight:800;transition:transform .12s;position:absolute;left:0;right:0}#score.pop{transform:scale(1.18)}#mult{top:calc(18px + 9vmin + 10px + env(safe-area-inset-top));text-align:center;letter-spacing:.18em;color:var(--gold);opacity:0;font-size:clamp(16px,3vmin,26px);font-weight:800;transition:opacity .15s,transform .15s;position:absolute;left:0;right:0;transform:translateY(-6px)}#mult.show{opacity:1;transform:none}#mult.nitro{color:var(--ice);text-shadow:0 0 18px #9fd8ff;animation:.35s infinite alternate pulse}@keyframes pulse{0%{transform:scale(1)}to{transform:scale(1.08)}}#speed{left:calc(16px + env(safe-area-inset-left));top:calc(16px + env(safe-area-inset-top));font-family:var(--mono);opacity:.85;font-size:clamp(14px,2.6vmin,22px);position:absolute}#speed small{opacity:.7;font-size:.7em}#nitro{left:50%;bottom:calc(22px + env(safe-area-inset-bottom));background:#ffffff1f;border:1px solid #ffffff4d;border-radius:999px;width:min(52vw,360px);height:18px;position:absolute;overflow:hidden;transform:translate(-50%)}#nitro-fill{background:linear-gradient(90deg,#8fc8ff,#dfe9f2);border-radius:999px;width:0%;height:100%;transition:width .15s linear;box-shadow:0 0 14px #9fd8ffcc}#nitro.ready{border-color:#fff;animation:.55s infinite alternate barpulse;box-shadow:0 0 22px #9fd8ffe6,0 0 60px #9fd8ff80}#nitro.ready #nitro-fill{animation:.28s infinite alternate flash}@keyframes barpulse{0%{transform:translate(-50%)scale(1)}to{transform:translate(-50%)scale(1.06)}}@keyframes flash{0%{filter:brightness();background:linear-gradient(90deg,#8fc8ff,#dfe9f2)}to{filter:brightness(2.2);background:#fff}}#nitro.active #nitro-fill{background:linear-gradient(90deg,#fff,#9fd8ff)}@keyframes glow{0%{filter:brightness()}to{filter:brightness(1.7)}}#nitro-label{letter-spacing:.25em;color:#0009;mix-blend-mode:screen;place-items:center;font-size:11px;font-weight:800;display:grid;position:absolute;inset:0}#thrust-btn{left:50%;bottom:calc(54px + env(safe-area-inset-bottom));width:min(64vw,300px);height:clamp(64px,12vmin,88px);color:var(--fg);font:900 clamp(13px, 2.8vmin, 16px) var(--font);letter-spacing:.18em;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;background:#ffffff1f;border:2px solid #ffffff8c;border-radius:999px;justify-content:center;align-items:center;gap:12px;animation:.9s ease-in-out infinite alternate thrustpulse;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 0 24px #9fd8ff59,inset 0 0 0 1px #ffffff26}#thrust-btn .rocket{color:var(--ice);font-size:1.5em}#thrust-btn:active{background:#9fd8ff66;transform:translate(-50%)scale(.96)}#thrust-btn.quiet{opacity:.45;animation:none}#thrust-btn.quiet .label{display:none}#thrust-btn.quiet{width:clamp(64px,12vmin,88px)}@keyframes thrustpulse{0%{transform:translate(-50%)scale(1);box-shadow:0 0 18px #9fd8ff4d}to{transform:translate(-50%)scale(1.06);box-shadow:0 0 36px #9fd8ffb3}}#nitro-ready{bottom:calc(150px + env(safe-area-inset-bottom))}#nitro-btn{right:calc(18px + env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));width:clamp(64px,13vmin,96px);height:clamp(64px,13vmin,96px);color:var(--fg);font:800 clamp(18px, 3.4vmin, 26px) var(--font);letter-spacing:.05em;pointer-events:auto;opacity:.35;touch-action:none;background:#ffffff14;border:2px solid #ffffff59;border-radius:50%;transition:opacity .2s,transform .1s;position:absolute}#nitro-btn.ready{opacity:1;color:#fff;background:#9fd8ff59;border-color:#fff;animation:.4s infinite alternate btnpulse;box-shadow:0 0 30px #9fd8ff,0 0 80px #9fd8ff99}#nitro-btn.ready:before,#nitro-btn.ready:after{content:"";pointer-events:none;border:3px solid #bfe3ff;border-radius:50%;animation:1.1s ease-out infinite ripple;position:absolute;inset:-2px}#nitro-btn.ready:after{animation-delay:.55s}@keyframes btnpulse{0%{transform:scale(1)}to{transform:scale(1.12)}}@keyframes ripple{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.3)}}#nitro-btn:active{transform:scale(.94)}#nitro-btn[hidden]{display:none}#nitro-ready{left:50%;bottom:calc(52px + env(safe-area-inset-bottom));text-align:center;white-space:nowrap;animation:.5s steps(2,jump-none) infinite readyflash;position:absolute;transform:translate(-50%)}#nitro-ready .ready-title{letter-spacing:.14em;color:#fff;text-shadow:0 0 18px #9fd8ff,0 0 40px #5fb4ff;font-size:clamp(22px,4.6vmin,38px);font-weight:900;display:block}#nitro-ready .ready-hint{font-family:var(--mono);color:var(--ice);letter-spacing:.12em;margin-top:2px;font-size:clamp(12px,2.4vmin,16px);display:block}#nitro-ready .ready-hint b{color:#fff;border:1px solid #fff;border-radius:6px;padding:1px 7px}@keyframes readyflash{0%{opacity:1}to{opacity:.35}}#overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#06090d73;place-items:center;transition:opacity .2s;display:grid;position:absolute;inset:0}#overlay[hidden]{display:none}#overlay.kb{overflow:auto;align-items:start!important;padding:10px 0 0!important}#overlay.kb .card{max-height:none}.card{pointer-events:auto;text-align:center;background:#0b0f14c7;border:1px solid #ffffff24;border-radius:22px;max-width:min(92vw,460px);padding:28px 32px;box-shadow:0 30px 80px #00000080}.eyebrow{letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin:0 0 6px;font-size:12px}.card h1{letter-spacing:.02em;margin:0;font-size:clamp(40px,9vmin,72px);font-weight:900;line-height:.95}.sub{font-family:var(--mono);opacity:.8;margin:12px 0 6px;font-size:13px}.hint{opacity:.9;text-align:left;margin:14px 0 10px;padding:0;font-size:13.5px;line-height:1.7;list-style:none}.hint b{color:var(--ice)}.best{font-family:var(--mono);opacity:.75;margin:4px 0 14px;font-size:13px}.credit{opacity:.55;margin:14px 0 0;font-size:10.5px}.credit a{color:inherit}.card button{font:900 18px var(--font);letter-spacing:.2em;cursor:pointer;background:var(--fg);color:var(--bg);border:0;border-radius:999px;padding:14px 36px;transition:transform .1s;box-shadow:0 0 #f4f4f199}.card button:active{transform:scale(.96)}.card button:disabled{opacity:.55;cursor:wait;letter-spacing:.08em;font-size:14px}.card h2{letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin:14px 0 6px;font-size:12px}.card .ghost{color:var(--fg);background:0 0;border:1px solid #ffffff4d;margin-left:8px;padding:13px 22px}#score-form{justify-content:center;gap:8px;margin:10px 0 4px;display:flex}#score-form input{min-width:0;max-width:200px;color:var(--fg);font:700 16px var(--font);letter-spacing:.04em;background:#ffffff14;border:1px solid #ffffff4d;border-radius:999px;outline:none;flex:1;padding:12px 14px}#score-form input:focus{border-color:#9fd8ff;box-shadow:0 0 0 3px #9fd8ff40}#score-form button{padding:12px 20px;font-size:14px}#score-form button:disabled{opacity:.5}#submit-msg{min-height:1.2em;color:var(--ice);margin:4px 0 0}.board{max-height:32vh;font-family:var(--mono);text-align:left;margin:0 0 14px;padding:0;font-size:13px;list-style:none;overflow:auto}.board li{border-radius:8px;grid-template-columns:2.2em 1fr auto;gap:8px;padding:5px 10px;display:grid}.board li:nth-child(odd){background:#ffffff0d}.board li .rank{color:var(--gold);font-weight:700}.board li .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board li .pts{font-weight:700}.board li.me{background:#9fd8ff38;outline:1px solid #9fd8ff}.board li.empty{text-align:center;opacity:.6;display:block}.card{max-height:92vh;overflow:auto}#fatal{background:var(--bg);z-index:10;place-items:center;display:grid;position:fixed;inset:0}#fatal p:not(.eyebrow){margin:8px 0 18px;font-size:15px;line-height:1.5}[hidden]{display:none!important}@media (max-aspect-ratio:1){.hint{font-size:12.5px}#overlay{padding-bottom:calc(48px + env(safe-area-inset-bottom));align-items:end}.card{padding:22px 24px}}
