@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/orbitron-latin-700-normal-4jsRXGGJ.woff2)format("woff2"),url(/assets/orbitron-latin-700-normal-DmYOh-W9.woff)format("woff")}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/orbitron-latin-900-normal-DrIi7unX.woff2)format("woff2"),url(/assets/orbitron-latin-900-normal-BbJatbhp.woff)format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-latin-500-normal-ByNUCHrt.woff2)format("woff2"),url(/assets/rajdhani-latin-500-normal-DfvNI-Td.woff)format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-latin-700-normal-BPDUZo87.woff2)format("woff2"),url(/assets/rajdhani-latin-700-normal-e0Uj8ZlN.woff)format("woff")}:root{--cyan:#16f4ff;--magenta:#ff2bd6;--gold:#ffc93c;--violet:#8a5bff;--red:#ff2648;--bg:#06030f;--text:#ece6ff;--panel:#0c061ab3;--line:#a082ff4d}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-user-select:none;user-select:none;touch-action:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;font-family:Rajdhani,system-ui,sans-serif;overflow:hidden}#scene{width:100%;height:100%;display:block;position:fixed;inset:0}.hidden{display:none!important}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}button:focus-visible,input:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.touch-only{display:none}@media (pointer:coarse){.touch-only{display:inline}.keys-only{display:none!important}}#hud{pointer-events:none;padding:max(14px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 16px max(16px, env(safe-area-inset-left));font-family:Orbitron,sans-serif;position:fixed;inset:0}.hud-top{justify-content:space-between;align-items:flex-start;padding-right:52px;display:flex}.panel .label{letter-spacing:.25em;opacity:.75;font-size:11px}.panel .value{font-variant-numeric:tabular-nums;font-size:clamp(22px,4vw,38px);font-weight:900;line-height:1.1}.score .value{color:#fff;text-shadow:0 0 10px var(--magenta), 0 0 24px var(--magenta)}.mult-row{align-items:center;gap:8px;margin-top:4px;display:flex}.mult{color:var(--gold);text-shadow:0 0 10px var(--gold);font-size:17px;font-weight:900}.mult.bump{animation:.35s ease-out bump}@keyframes bump{40%{transform:scale(1.45)}}.chain{gap:4px;display:flex}.chain i{border:1px solid #ffc93c99;width:14px;height:5px;transform:skew(-20deg)}.chain i.on{background:var(--gold);box-shadow:0 0 8px var(--gold)}.panel.right{text-align:right}.panel.right .value{color:var(--cyan);text-shadow:0 0 12px var(--cyan)}.panel.right small{letter-spacing:.15em;margin-left:6px;font-size:.38em}.progress{background:#ffffff26;width:120px;height:4px;margin:6px 0 0 auto}.progress i{background:var(--cyan);height:100%;box-shadow:0 0 8px var(--cyan);transform-origin:0;display:block;transform:scaleX(0)}.pause-btn{top:max(14px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));pointer-events:auto;border:1px solid var(--line);background:#0c061a80;justify-content:center;align-items:center;gap:6px;width:40px;height:40px;display:flex;position:absolute}.pause-btn i{background:var(--text);width:4px;height:15px}.drift{opacity:0;white-space:nowrap;text-align:center;flex-direction:column;align-items:center;transition:opacity .15s;display:flex;position:absolute;top:0;left:0;transform:translate(-50%,-100%)}.drift.on{opacity:1}.drift b{letter-spacing:.2em;font-size:13px;font-weight:900}.drift span{font-variant-numeric:tabular-nums;color:#fff;font-size:20px;font-weight:900}.drift.razor b,.drift.razor span{color:var(--gold);text-shadow:0 0 10px var(--gold), 0 0 22px #ffc93c99}.drift.tight b{color:var(--cyan);text-shadow:0 0 10px var(--cyan)}.drift.clean b{color:#fff}.drift.wide b{color:#ffffff80}#popups{flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute;top:24%;left:0;right:0}.popup{letter-spacing:.1em;color:#fff;text-shadow:0 0 12px var(--magenta);text-align:center;font-size:clamp(16px,3.4vw,26px);font-weight:900;animation:1.3s ease-out forwards popup}.popup small{letter-spacing:.2em;opacity:.85;font-size:.58em;display:block}.popup.razor{color:var(--gold);text-shadow:0 0 14px var(--gold), 0 0 34px #ffc93cb3;font-size:clamp(22px,5vw,38px)}.popup.tight{color:var(--cyan);text-shadow:0 0 12px var(--cyan)}.popup.gate{color:var(--cyan);font-size:clamp(14px,2.8vw,20px)}.popup.bad{color:var(--red);text-shadow:0 0 12px var(--red);font-size:clamp(14px,2.8vw,20px)}.popup.mult{color:var(--gold)}@keyframes popup{0%{opacity:0;transform:translateY(10px)scale(.85)}12%{opacity:1;transform:translateY(0)scale(1.06)}25%{transform:scale(1)}75%{opacity:1}to{opacity:0;transform:translateY(-22px)}}.hint-box{left:0;right:0;bottom:max(3%, calc(env(safe-area-inset-bottom) + 12px));text-align:center;opacity:0;transition:opacity .2s;position:absolute}.hint-box.show{opacity:1}.hint-box b{letter-spacing:.18em;color:#fff;text-shadow:0 0 14px var(--cyan);font-size:clamp(20px,4.5vw,34px);font-weight:900;display:block}.hint-box span{letter-spacing:.05em;opacity:.85;font-family:Rajdhani,sans-serif;font-size:16px}#flash{pointer-events:none;opacity:0;mix-blend-mode:screen;background:var(--flash,#fff);position:fixed;inset:0}#flash.go{animation:.32s ease-out flash}@keyframes flash{0%{opacity:.55}to{opacity:0}}.calm-flash #flash{background:radial-gradient(ellipse at center, transparent 55%, var(--flash,#fff))}.calm-flash #flash.go{animation:.9s ease-in-out glow}@keyframes glow{0%,to{opacity:0}40%{opacity:.28}}.overlay{padding:max(18px, env(safe-area-inset-top)) 16px max(18px, env(safe-area-inset-bottom));text-align:center;touch-action:pan-y;background:radial-gradient(#06030f8c,#06030feb);flex-direction:column;justify-content:center;align-items:center;gap:14px;font-family:Orbitron,sans-serif;display:flex;position:fixed;inset:0;overflow-y:auto}.overlay h2{letter-spacing:.12em;color:#fff;text-shadow:0 0 16px var(--magenta), 0 0 40px var(--magenta);font-size:clamp(28px,6vw,52px);font-weight:900}.menu{background:linear-gradient(#06030fd1,#06030f59 45%,#06030fd9);justify-content:flex-start;gap:12px}.menu-top{justify-content:space-between;align-items:center;width:100%;max-width:560px;display:flex}.menu-actions{gap:8px;display:flex}.star-total{letter-spacing:.15em;color:var(--gold);text-shadow:0 0 8px #ffc93c99;font-size:13px;font-weight:700}.title{letter-spacing:.08em;color:#fff;text-shadow:0 0 18px var(--magenta), 0 0 50px var(--magenta);margin-top:clamp(0px,3vh,28px);font-size:clamp(40px,11vw,84px);font-weight:900;line-height:.95}.title span{letter-spacing:.42em;color:var(--cyan);text-shadow:0 0 16px var(--cyan), 0 0 40px var(--cyan);margin-right:-.42em;font-size:.62em;display:block}.courses{gap:6px;width:100%;max-width:460px;margin-top:clamp(4px,2vh,18px);list-style:none;display:grid}.course{text-align:left;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--accent,var(--cyan));grid-template-columns:1fr auto;align-items:center;gap:2px 12px;width:100%;padding:8px 14px;transition:transform .12s,background .12s;display:grid}.course:hover{background:#1e103cbf}.course.sel{border-color:var(--accent,var(--cyan));box-shadow:0 0 16px color-mix(in srgb, var(--accent,var(--cyan)) 45%, transparent), inset 0 0 18px #ffffff0a;background:#281450d9;transform:translate(4px)}.course .name{letter-spacing:.12em;font-size:15px;font-weight:900}.course .sub{opacity:.7;grid-column:1;font-family:Rajdhani,sans-serif;font-size:14px}.course .meta{text-align:right;letter-spacing:.1em;grid-area:1/2/span 2;font-size:11px}.course .stars{letter-spacing:.08em;color:#ffffff38;font-size:16px}.course .stars b{color:var(--gold);font-weight:inherit;text-shadow:0 0 8px var(--gold)}.course .best{opacity:.8;font-variant-numeric:tabular-nums}.course.locked{opacity:.45}.drive-btn{letter-spacing:.3em;color:#07020f;background:var(--gold);min-width:220px;box-shadow:0 0 18px var(--gold), 0 0 40px #ffc93c66;clip-path:polygon(6% 0,100% 0,94% 100%,0 100%);padding:14px 36px;font-size:clamp(16px,2.6vw,22px);font-weight:900}.drive-btn:hover{filter:brightness(1.15)}.drive-btn:disabled{color:#ffffffa6;box-shadow:none;cursor:default;background:#fff3}.menu .drive-btn{margin-top:6px}.ghost-btn{letter-spacing:.2em;border:1px solid var(--line);background:#0c061a66;padding:10px 18px;font-size:12px;font-weight:700}.ghost-btn:hover{border-color:var(--cyan);color:var(--cyan)}.small-btn{letter-spacing:.15em;border:1px solid var(--cyan);min-width:64px;color:var(--cyan);padding:6px 14px;font-size:11px;font-weight:700}.small-btn.on{background:#16f4ff29;box-shadow:0 0 10px #16f4ff59}.controls{letter-spacing:.02em;max-width:520px;font-family:Rajdhani,sans-serif;font-size:16px;line-height:1.35}.controls b{color:var(--cyan);font-weight:700}.controls.dim{opacity:.7;font-size:14px}.controls.dim b{color:var(--gold)}.row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.col{flex-direction:column;align-items:center;gap:14px;display:flex}.hint{opacity:.75;max-width:460px;font-family:Rajdhani,sans-serif;font-size:15px}.hint.keys{letter-spacing:.2em;font-family:Orbitron,sans-serif;font-size:11px}.settings{background:var(--panel);border:1px solid var(--line);letter-spacing:.15em;text-align:left;gap:16px;width:100%;max-width:440px;padding:18px;font-size:12px;display:grid}.settings label{grid-template-columns:96px 1fr 34px;align-items:center;gap:10px;display:grid}.settings .row{flex-wrap:nowrap;justify-content:space-between}.settings em{text-align:right;color:var(--cyan);font-variant-numeric:tabular-nums;font-style:normal}input[type=range]{width:100%;accent-color:var(--cyan);touch-action:pan-x}.notice-title{font-size:clamp(20px,4.4vw,36px)!important}.notice-text{max-width:560px;font-family:Rajdhani,sans-serif;font-size:17px;line-height:1.4}#over h2{text-shadow:0 0 16px var(--red), 0 0 40px var(--red)}#over.win h2{text-shadow:0 0 16px var(--cyan), 0 0 40px var(--cyan)}.reason{opacity:.8;margin-top:-6px;font-family:Rajdhani,sans-serif;font-size:17px}.final .label{letter-spacing:.3em;opacity:.7;font-size:11px}#final-score{font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 0 14px var(--magenta), 0 0 34px var(--magenta);font-size:clamp(40px,10vw,72px);font-weight:900}.stars-big{letter-spacing:.15em;color:#fff3;font-size:34px}.stars-big b{color:var(--gold);font-weight:inherit;text-shadow:0 0 12px var(--gold)}.stars-big small{letter-spacing:.15em;color:var(--text);opacity:.7;font-size:11px;display:block}.best{letter-spacing:.18em;opacity:.85;font-size:13px}.best.new{color:var(--gold);opacity:1;text-shadow:0 0 10px var(--gold);animation:.6s ease-out 2 bump}.stats{grid-template-columns:repeat(3,minmax(84px,1fr));gap:8px;width:100%;max-width:420px;display:grid}.stats div{background:var(--panel);border:1px solid var(--line);padding:8px 4px}.stats b{font-variant-numeric:tabular-nums;font-size:17px;display:block}.stats span{letter-spacing:.18em;opacity:.7;font-size:9px}@media (height<=820px){.menu{gap:8px}.title{margin-top:0;font-size:clamp(36px,10vw,64px)}.courses{gap:5px;margin-top:2px}.course{padding:6px 12px}.menu .drive-btn{margin-top:2px;padding:12px 36px}.controls{font-size:15px}.controls.dim{font-size:13px}}@media (height<=560px){.title{margin-top:0;font-size:38px}.courses{grid-template-columns:1fr 1fr;max-width:760px}.course .sub,.controls.dim{display:none}.overlay{gap:8px}#final-score{font-size:40px}}@media (width<=420px){.menu-actions .ghost-btn{letter-spacing:.14em;padding:9px 11px;font-size:11px}.course{padding:7px 10px}.course .name,.course .sub{font-size:13px}.controls{font-size:15px}.stats{grid-template-columns:repeat(3,1fr)}}
