:root{color:#ecfcff;font-synthesis:none;background:#060b18;font-family:Segoe UI,Arial,sans-serif}*{box-sizing:border-box}:root{--accent:#6ce9ea}:root[data-theme=lime]{--accent:#b4f77a}:root[data-theme=violet]{--accent:#cca7ff}body{touch-action:manipulation;margin:0;overflow:hidden}button,input{font:inherit}button{color:#e5faff;cursor:pointer;touch-action:none;background:#112237eb;border:1px solid #54758e;border-radius:6px;min-height:48px;padding:12px 20px;font-weight:600}button:hover{background:#20445a;border-color:#67edf5}button:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #ffcf80}button.primary{background:var(--accent);color:#081824;border-color:var(--accent)}button.primary:hover{background:#a5ffff}#world{touch-action:none;outline:none;width:100%;height:100%;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}:where(#ui) button,:where(#ui) input,:where(#ui) label,.panel{pointer-events:auto}.brand{top:max(22px, env(safe-area-inset-top));left:max(28px, env(safe-area-inset-left));letter-spacing:3px;color:#79b1c7;font-size:12px;position:absolute}.panel{background:#081323ee;border:1px solid #274960;border-left:3px solid #6ce9ea;border-radius:8px;flex-direction:column;gap:12px;width:min(470px,88vw);max-height:calc(100dvh - 90px);padding:26px 32px;display:flex;position:absolute;top:50%;left:6vw;overflow-y:auto;transform:translateY(-50%);box-shadow:0 20px 80px #0009}.panel h1{letter-spacing:-2px;white-space:pre-line;margin:4px 0 8px;font-size:clamp(36px,5.5vw,72px);line-height:.94}.panel p{margin:0}.eyebrow{color:#77ece9;letter-spacing:3px;font-size:10px}.tagline{color:#d3e5f0;font-size:20px}.hint{color:#a2b7c9;padding:2px 0 8px;font-size:14px;line-height:1.5}.fine{color:#7c9bb1;font-size:11px;line-height:1.5}.row{gap:10px;display:flex}.row>*{flex:1}.panel label{justify-content:space-between;align-items:center;gap:10px;min-height:48px;display:flex}input[type=range]{accent-color:#6ce9ea;max-width:48%}input[type=checkbox]{accent-color:#6ce9ea;width:24px;height:24px}.hud{background:#081323d9;border-bottom:1px solid #33586a;border-radius:8px;gap:34px;padding:10px 24px;display:flex;position:absolute;top:18px;left:50%;transform:translate(-50%)}.stat{flex-direction:column;min-width:60px;display:flex}.stat small{color:#79b1c7;text-transform:uppercase;letter-spacing:2px;font-size:9px}.stat strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:23px}.pause{position:absolute;top:22px;right:22px}.controls{white-space:nowrap;color:#bdd4e2;background:#081323d9;border-radius:6px;padding:12px 18px;font-size:12px;position:absolute;bottom:25px;left:50%;transform:translate(-50%)}.turn-cue{color:#8bffff;text-shadow:0 2px 15px #000;font-size:30px;font-weight:800;position:absolute;top:105px;left:50%;transform:translate(-50%)}.touch-controls{bottom:max(14px, env(safe-area-inset-bottom));left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right));gap:10px;display:flex;position:absolute}.touch-controls[hidden]{display:none}.touch-controls button{background:#10253bd9;min-width:54px;min-height:54px;font-size:24px}.touch-controls button:nth-child(5){margin-left:auto}.fullscreen{min-height:44px;padding:8px 12px;font-size:11px;position:absolute;bottom:16px;right:20px}.controls:has(+.touch-controls:not([hidden])){bottom:84px}.touch-controls:not([hidden])~.fullscreen{bottom:82px}.rotate{display:none}.result-score{color:#6ce9ea;padding:10px 0;font-size:25px}.wallet{color:#bdff9b;font-size:15px}.panel a{color:#9cdee8;min-height:36px;font-size:12px}.run-status{text-align:center;color:#c5d3ed;text-shadow:0 2px 8px #000;width:min(600px,76vw);font-size:12px;position:absolute;top:92px;left:50%;transform:translate(-50%)}.energy{color:#b7c8e8;text-transform:uppercase;letter-spacing:2px;flex-direction:column;gap:5px;width:100px;font-size:10px;display:flex;position:absolute;top:86px;right:22px}.energy meter{accent-color:#b4ff91;width:100%;height:12px}.turn-cue{white-space:nowrap;top:126px}.brake-cue{color:#ffd194}.collected strong{color:#bbff9b}.touch-controls{gap:8px}.touch-controls button{flex:0 54px;width:54px;min-width:44px;padding:0}@media (width<=1100px){#ui:has(.hud) .brand{display:none}}@media (height<=520px){.brand{font-size:9px;top:12px;left:20px}.panel{gap:8px;width:min(570px,88vw);max-height:calc(100dvh - 55px);padding:16px 22px;left:4vw}.panel h1{white-space:normal;margin:0;font-size:36px}.panel button{min-height:44px;padding:8px 14px}.hint{padding:0;font-size:12px}.tagline{font-size:16px}.hud{gap:18px;padding:6px 16px;top:10px}.stat strong{font-size:19px}.pause{top:10px;right:14px}.controls{white-space:normal;text-align:center;max-width:85vw;font-size:10px;bottom:78px}.turn-cue{font-size:24px;top:104px}.run-status{width:68vw;font-size:10px;top:72px}.energy{width:70px;top:66px;right:16px}}@media (pointer:coarse) and (orientation:portrait){.rotate{pointer-events:auto;text-align:center;z-index:10;background:#081323;flex-direction:column;justify-content:center;align-items:center;padding:32px;font-size:22px;display:flex;position:fixed;inset:0}.rotate-icon{color:#6ce9ea;font-size:80px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto}}button:disabled{opacity:.45;cursor:default}.shop-item{border:1px solid #34536a;border-radius:6px;gap:10px;padding:14px;display:grid}.shop-item button{width:100%}.star-results{color:#ffdd8e;font-size:13px;line-height:1.7}[data-theme=lime] .hud strong,[data-theme=violet] .hud strong{color:var(--accent)}[data-theme=lime] .hud,[data-theme=violet] .hud{border-color:var(--accent)}
