@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(./rajdhani-latin-600-normal-CXCVEoA9.woff2)format("woff2"),url(./rajdhani-latin-600-normal-Dx02qI2_.woff)format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(./rajdhani-latin-700-normal-BPDUZo87.woff2)format("woff2"),url(./rajdhani-latin-700-normal-e0Uj8ZlN.woff)format("woff")}@font-face{font-family:Orbitron Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(./orbitron-latin-wght-normal-Du7j2Vp2.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#3f2a1d;--bgDeep:#1f140d;--surface:#1f140db8;--surfaceStrong:#1a110be6;--sand:#e3d5b8;--sandDim:#e3d5b8bd;--green:#22c55e;--olive:#6b7a3a;--danger:#e0452f;--ice:#7fd4ff;--cyan:#7ff6ff;--font-display:"Orbitron Variable", sans-serif;--font-ui:"Rajdhani", sans-serif;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--r-card:22px;--shadow:0 10px 28px #0006;--ease:cubic-bezier(.2, .9, .25, 1);--spring:cubic-bezier(.3, 1.5, .5, 1);--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--edge-t:calc(var(--safe-t) + 14px);--edge-r:calc(var(--safe-r) + 14px);--edge-b:calc(var(--safe-b) + 14px);--edge-l:calc(var(--safe-l) + 14px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;background:var(--bg);height:100dvh;color:var(--sand);font-family:var(--font-ui);overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased;margin:0;font-weight:600;overflow:hidden}canvas#game{touch-action:none;transition:filter .4s ease-out;display:block;position:fixed;inset:0}body.desat canvas#game{filter:saturate(.15)sepia(.45)brightness(.8)}#ui{pointer-events:none;position:fixed;inset:0}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.screen{justify-content:center;align-items:center;gap:var(--s4);padding:calc(var(--safe-t) + 24px) calc(var(--safe-r) + 20px) calc(var(--safe-b) + 24px) calc(var(--safe-l) + 20px);pointer-events:auto;text-align:center;animation:screen-in .32s var(--ease) both;flex-direction:column;display:flex;position:absolute;inset:0;overflow-y:auto}.screen>*{animation:rise .36s var(--ease) both}.screen>:nth-child(2){animation-delay:40ms}.screen>:nth-child(3){animation-delay:80ms}.screen>:nth-child(4){animation-delay:.12s}.screen>:nth-child(5){animation-delay:.16s}.screen>:nth-child(6){animation-delay:.2s}.screen.dim{-webkit-backdrop-filter:blur(6px);background:radial-gradient(circle at 50% 40%,#3f2a1dc7,#120b07eb)}.screen.leaving{animation:.24s ease-in both screen-out}@keyframes screen-in{0%{opacity:0;transform:scale(.96)}}@keyframes screen-out{to{opacity:0;transform:scale(1.02)}}@keyframes rise{0%{opacity:0;transform:translateY(12px)scale(.98)}}.screen.title{padding-bottom:calc(var(--safe-b) + 40px);background:linear-gradient(#1f140d00 30%,#1f140dd9 100%);justify-content:flex-end}.logo-wrap{aspect-ratio:1;place-items:center;width:min(78vw,44vh,420px);margin-top:max(2vh,8px);margin-bottom:auto;display:grid;position:relative}.logo-wrap .dust{background:radial-gradient(circle,#1f140dbf 35%,#1f140d00 70%);border-radius:50%;animation:7s ease-in-out infinite dust;position:absolute;inset:-12%}@keyframes dust{50%{opacity:.8;transform:scale(1.08)rotate(6deg)}}.logo{object-fit:contain;filter:drop-shadow(0 18px 34px #0000008c);width:100%;height:100%;animation:logo-in .9s var(--spring) both, float 6s .9s ease-in-out infinite;position:relative}@keyframes logo-in{0%{opacity:0;filter:blur(8px);transform:scale(.8)rotate(-4deg)}}@keyframes float{50%{transform:translateY(-6px)rotate(-1deg)}}.small-logo{aspect-ratio:1;width:min(32vw,20vh,160px);height:auto;animation:none}h2{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;text-shadow:0 0 18px #e3d5b859;margin:0;font-size:clamp(28px,6vw,40px);font-weight:800}h3{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:16px}.stack{gap:var(--s3);flex-direction:column;width:min(100%,340px);display:flex}.best-line{color:var(--sandDim);letter-spacing:.08em;margin:0;font-size:17px}.best-line b{font-family:var(--font-display);color:var(--sand);font-variant-numeric:tabular-nums}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;outline:none}.btn{min-height:52px;padding:0 var(--s5);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--sand);background:var(--surface);box-shadow:inset 0 0 0 1.5px #e3d5b859, var(--shadow);text-shadow:0 0 12px #e3d5b880;-webkit-backdrop-filter:blur(6px);transition:transform .16s var(--spring), box-shadow .16s, background .16s;border-radius:999px;font-size:17px;font-weight:700}.btn.primary{background:var(--sand);color:var(--bgDeep);text-shadow:none;box-shadow:0 0 0 1.5px var(--sand), 0 0 26px #e3d5b873, var(--shadow)}.btn.big{min-height:64px;font-size:22px}.btn.start{letter-spacing:.32em;min-height:72px;color:var(--sand);box-shadow:inset 0 0 0 2px #e3d5b88c, inset 0 0 22px #7ff6ff1f, 0 0 30px #e3d5b847, var(--shadow);background:radial-gradient(120% 140% at 50% 0,#6b7a3a52,#1f140dc7 62%);font-size:28px;font-weight:800;animation:2.4s ease-in-out infinite start-glow;position:relative}.btn.start .start-label{text-shadow:0 0 6px #fff8e6f2,0 0 16px #e3d5b8cc,0 0 34px #7ff6ff73;padding-left:.32em}.btn.start .btn-medal{width:52px;height:52px}.btn.start.focus,.btn.start:focus-visible{box-shadow:0 0 0 3px var(--bgDeep), 0 0 0 6px var(--sand), inset 0 0 22px #7ff6ff29, 0 0 40px #e3d5b899, var(--shadow)}@keyframes start-glow{50%{filter:brightness(1.16)}}@media (prefers-reduced-motion:reduce){.btn.start{animation:none}}.btn-in{align-items:center;gap:var(--s3);display:inline-flex}.btn-medal{filter:drop-shadow(0 2px 4px #0006);width:44px;height:44px;margin-left:-14px}.btn:active,.card:active{transform:scale(.95)}.btn.focus,.card.focus,.btn:focus-visible{box-shadow:0 0 0 3px var(--bgDeep), 0 0 0 6px var(--sand), 0 0 28px #e3d5b88c, var(--shadow);transform:scale(1.03)}.btn.toggle{justify-content:space-between;align-items:center;display:flex}.pill{background:#e3d5b824;border-radius:999px;min-width:56px;padding:4px 12px;font-size:14px}.pill.on{background:var(--green);color:var(--bgDeep)}.icon-btn{width:48px;height:48px;color:var(--sand);background:var(--surface);pointer-events:auto;transition:transform .16s var(--spring);border-radius:50%;place-items:center;display:grid;position:absolute;box-shadow:inset 0 0 0 1.5px #e3d5b84d}.icon-btn:active{transform:scale(.88)}.icon-btn svg{width:56%;height:56%}.mute{top:var(--edge-t);right:var(--edge-r);z-index:5}.panel{width:min(100%,560px);padding:var(--s4);border-radius:var(--r-card);background:var(--surface);box-shadow:inset 0 0 0 1px #e3d5b82e}.muted-line{color:var(--sandDim);max-width:34ch;margin:0;font-size:18px}.small{margin:var(--s2) 0 0;color:var(--sandDim);font-size:14px}.names{gap:var(--s3);flex-wrap:wrap;justify-content:center;display:flex}.names span{padding:var(--s2) var(--s5);font-family:var(--font-display);letter-spacing:.08em;background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--sand);border-radius:999px;font-size:20px}.controls{border-collapse:collapse;width:100%;font-size:15px}.controls th{font-family:var(--font-display);letter-spacing:.1em;color:var(--sandDim);text-align:left;padding:4px 6px;font-size:12px}.controls td{text-align:left;border-top:1px solid #e3d5b81a;padding:4px 6px}.up-panel{align-items:center;gap:var(--s2);flex-direction:column;display:flex}.scrap-line{align-items:center;gap:var(--s2);display:flex}.scrap-line svg{width:20px;height:20px}.upgrades{gap:var(--s3);grid-template-columns:repeat(3,1fr);width:100%;display:grid}.card{border-radius:var(--r-card);padding:var(--s3) var(--s2);transition:transform .16s var(--spring), opacity .2s;background:#3f2a1dd9;box-shadow:inset 0 0 0 1.5px #e3d5b84d}.card[disabled]{opacity:.45;cursor:default}.card.pop{animation:pop .42s var(--spring)}@keyframes pop{40%{box-shadow:0 0 0 3px var(--green), 0 0 30px #22c55e99;transform:scale(1.1)}}.card-in{flex-direction:column;align-items:center;gap:2px;display:flex}.card .art{place-items:center;height:64px;display:grid}.card .art img{filter:drop-shadow(0 4px 6px #00000080);height:64px}.art-icon svg{width:46px;height:46px;color:var(--sand)}.card b{font-family:var(--font-display);letter-spacing:.04em;font-size:13px}.card .effect{color:var(--green);font-size:15px}.card .picks{color:var(--sandDim);font-size:14px}.big-score{font-family:var(--font-display);font-variant-numeric:tabular-nums;text-shadow:0 0 30px #e3d5b873;font-size:clamp(52px,13vw,84px);font-weight:900;line-height:1}.results.win .end-title{color:var(--ice);text-shadow:0 0 24px #7fd4ff99}.results.broken .end-title,.results.caught .end-title{color:var(--sand)}.rows{gap:6px;width:min(100%,340px);font-size:17px;display:grid}.rows .row{justify-content:space-between;display:flex}.rows b{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:15px}.record{color:var(--green);font-family:var(--font-display);letter-spacing:.1em}.blink{animation:.5s steps(2,end) 4 blink}@keyframes blink{50%{opacity:.2}}.hud{pointer-events:none;font-family:var(--font-display);position:absolute;inset:0}.hud .top-left{top:var(--edge-t);left:var(--edge-l);opacity:0;transition:opacity .4s, transform .4s var(--spring);position:absolute;transform:translateY(-10px)}.hud .top-left.show{opacity:1;transform:none}.slots{gap:var(--s2);background:var(--surface);border-radius:999px;padding:6px;display:flex}.slot{color:#e3d5b82e;width:34px;height:34px;transition:all .4s var(--spring);background:#2a1b11;border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 2px 4px #00000080}.slot svg{width:16px;height:16px}.slot.on{background:var(--sand);color:var(--bg);transform:scale(1.08);box-shadow:0 0 16px #ffe7b0cc}.top-mid{top:var(--edge-t);justify-items:center;display:grid;position:absolute;left:50%;transform:translate(-50%)}.top-mid>*{grid-area:1/1}.compass{opacity:0;justify-items:center;gap:2px;transition:opacity .5s;display:grid}.compass.show{opacity:1}.compass.ping .band{animation:.7s ease-out 2 ping}@keyframes ping{40%{box-shadow:inset 0 0 0 1.5px var(--sand), 0 0 22px #e3d5b8b3}}.band{background:var(--surface);border-radius:999px;width:min(44vw,260px);height:34px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #e3d5b833}.band-inner>*{text-align:center;width:20px;color:var(--sandDim);margin-left:-10px;font-size:13px;line-height:34px;position:absolute;top:0;left:0}.band-inner .tick{background:#e3d5b859;width:2px;height:8px;margin-left:-1px;top:13px}.band-arrow{border-left:9px solid #0000;border-right:9px solid #0000;border-top:14px solid var(--sand);filter:drop-shadow(0 0 6px #ffe7b0e6);width:0;height:0;margin-left:-9px;position:absolute;top:3px;left:0}.band-dist{color:var(--sand);font-variant-numeric:tabular-nums;text-shadow:0 1px 3px #000000b3;font-size:14px}.chase{opacity:0;transition:opacity .3s, transform .6s var(--spring);justify-items:center;gap:6px;display:grid;transform:translateY(-60px)scale(.9)}.chase.show{opacity:1;transform:none}.timer{background:var(--surfaceStrong);font-variant-numeric:tabular-nums;letter-spacing:.06em;border-radius:999px;padding:2px 18px;font-size:28px;font-weight:800}.timer.low{color:var(--danger);animation:1s steps(2,end) infinite blink}.gap{align-items:center;gap:6px;display:flex}.gap-ico svg{width:22px;height:22px}.bar{background:#1f140dd9;border-radius:999px;width:min(36vw,180px);height:10px;overflow:hidden;box-shadow:inset 0 0 0 1px #e3d5b840}.bar .fill{background:var(--sand);transform-origin:100%;height:100%;transition:transform .15s linear}.chase.danger .fill{background:var(--danger)}.top-right{top:var(--edge-t);right:calc(var(--edge-r) + 58px);align-items:center;gap:var(--s3);display:flex;position:absolute}.money{background:var(--surface);font-variant-numeric:tabular-nums;opacity:0;border-radius:999px;align-items:center;gap:6px;height:40px;padding:0 14px 0 10px;font-size:18px;font-weight:700;transition:opacity .4s;display:flex}.money.show{opacity:1}.money .ico svg{width:20px;height:20px;display:block}.money.bump{animation:bump .4s var(--spring)}@keyframes bump{40%{transform:scale(1.1);box-shadow:0 0 18px #ffe7b0b3}}.pause-btn{box-shadow:none;background:0 0;width:52px;height:52px;position:relative}.pause-btn img{filter:drop-shadow(0 3px 6px #00000080);width:52px;height:52px}.speedo{left:var(--edge-l);bottom:var(--edge-b);width:150px;height:150px;position:absolute}.speedo svg{width:100%;height:100%;overflow:visible}.speedo .hull-bg{fill:#1f140dc7;stroke:#e3d5b81f;stroke-width:6px}.speedo .hull{fill:none;stroke:var(--green);stroke-width:6px;stroke-linecap:round;transition:stroke-dashoffset .3s var(--ease), stroke .3s}.speedo.hit .hull{animation:.18s steps(2,end) 3 hullblink}@keyframes hullblink{50%{stroke:var(--danger);opacity:.3}}.speedo .ticks line{stroke:#e3d5b88c;stroke-width:2px}.speedo .needle{transform-origin:60px 60px;transition:transform 80ms linear}.speedo .needle path{stroke:var(--sand);stroke-width:3.5px;stroke-linecap:round;filter:drop-shadow(0 0 4px #ffe7b0cc)}.speedo .needle circle{fill:var(--sand)}.kmh{justify-items:center;line-height:1;display:grid;position:absolute;bottom:30px;left:0;right:0}.kmh b{font-variant-numeric:tabular-nums;font-size:24px}.kmh span{font-family:var(--font-ui);color:var(--sandDim);font-size:14px}.robot{right:var(--edge-r);bottom:var(--edge-b);width:180px;height:150px;position:absolute}.robot .face{border-radius:14px;width:52px;height:52px;position:absolute;bottom:70px;right:98px;box-shadow:0 0 0 2px #7ff6ff66,0 0 18px #7ff6ff59}.scan-btn,.rope-btn{color:var(--sand);background:var(--surface);pointer-events:auto;opacity:0;transition:opacity .3s, transform .4s var(--spring);border-radius:50%;place-items:center;display:grid;position:absolute;transform:scale(.6)}.scan-btn.show,.rope-btn.show{opacity:1;transform:none}.scan-btn{width:88px;height:88px;bottom:0;right:0}.scan-btn .cd{position:absolute;inset:0}.cd-bg{fill:none;stroke:#e3d5b826;stroke-width:5px}.cd-fg{fill:none;stroke:var(--cyan);stroke-width:5px;stroke-linecap:round}.scan-btn .glyph svg{width:38px;height:38px}.scan-btn.ready .glyph{color:var(--cyan);filter:drop-shadow(0 0 6px #7ff6ffcc)}.scan-btn.charging{animation:.3s infinite alternate charge}@keyframes charge{to{box-shadow:0 0 26px #7ff6ffcc}}.scan-btn.call{animation:.9s ease-in-out infinite call}@keyframes call{50%{box-shadow:0 0 0 4px var(--sand), 0 0 30px #e3d5b8b3;transform:scale(1.12)}}.key{background:var(--sand);min-width:26px;height:26px;color:var(--bgDeep);border-radius:999px;place-items:center;padding:0 6px;font-size:13px;font-weight:800;display:grid;position:absolute;bottom:-4px;right:-4px}.rope-btn{width:60px;height:60px;bottom:0;right:100px}.rope-btn .glyph svg{width:28px;height:28px}.marker{opacity:0;justify-items:center;width:60px;margin:-20px 0 0 -30px;transition:opacity .3s;display:grid;position:absolute;top:0;left:0}.marker.on{opacity:1}.marker .diamond{border:3px solid var(--sand);width:20px;height:20px;animation:.9s infinite blink;transform:rotate(45deg);box-shadow:0 0 14px #ffe7b0e6}.marker b{text-shadow:0 1px 4px #000000e6;margin-top:6px;font-size:14px}.hint{background:var(--surfaceStrong);font-family:var(--font-ui);letter-spacing:.04em;opacity:0;transition:opacity .25s, transform .3s var(--spring);border-radius:999px;padding:8px 18px;font-size:19px;position:absolute;bottom:30%;left:50%;transform:translate(-50%)scale(.92)}.hint.on{opacity:1;transform:translate(-50%)scale(1)}.hold{opacity:0;background:#1f140dcc;border-radius:999px;width:160px;height:8px;margin-left:-80px;transition:opacity .2s;position:absolute;bottom:24%;left:50%;overflow:hidden}.hold.on{opacity:1}.hold div{background:var(--sand);transform-origin:0;height:100%;box-shadow:0 0 10px #ffe7b0e6}.gas-hint{right:calc(var(--edge-r) + 200px);bottom:calc(var(--edge-b) + 24px);background:var(--surfaceStrong);box-shadow:0 0 0 2px var(--sand), 0 0 24px #e3d5b880;opacity:0;transition:opacity .25s, transform .4s var(--spring);border-radius:999px;align-items:center;gap:8px;padding:10px 16px;display:flex;position:absolute;transform:scale(.8)}.gas-hint.on{opacity:1;animation:.8s ease-in-out .4s infinite nudge;transform:scale(1)}@keyframes nudge{50%{transform:scale(1.08)}}.gh-ico svg{width:30px;height:30px}.gas-hint .gh-key{background:var(--sand);color:var(--bgDeep);border-radius:999px;padding:2px 10px;font-size:18px;font-weight:800;position:static}.speedlines{opacity:0;pointer-events:none;background:repeating-conic-gradient(#e3d5b829 0deg .6deg,#0000 .6deg 7deg);transition:opacity .2s;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#0000 38%,#000 80%);mask-image:radial-gradient(circle,#0000 38%,#000 80%)}.vignette{opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0;box-shadow:inset 0 0 120px 30px #780a00bf}.vignette.on{animation:.9s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:1}}.flash{opacity:0;pointer-events:none;position:absolute;inset:0}.flash.red{background:radial-gradient(circle,#0000 40%,#e0452f99)}.flash.blue{background:#7fd4ff99}.flash.scan{background:#a0968c59}.flash.go{animation:.4s ease-out flash}@keyframes flash{0%{opacity:1}to{opacity:0}}body.no-shake .flash.red.go{animation:none}.touch-layer{display:none}@media (pointer:coarse){.touch-layer{pointer-events:auto;touch-action:none;display:block;position:absolute;inset:0}.stick{opacity:0;pointer-events:none;background:#1f140d73;border-radius:50%;place-items:center;width:120px;height:120px;margin:-60px 0 0 -60px;transition:opacity .15s;display:grid;position:absolute;box-shadow:inset 0 0 0 2px #e3d5b859}.stick.on{opacity:1}.knob{background:var(--sand);border-radius:50%;width:56px;height:56px;box-shadow:0 0 18px #e3d5b899}.pedals{right:var(--edge-r);bottom:var(--edge-b);pointer-events:none;grid-template-rows:64px 104px;grid-template-columns:76px 88px;gap:10px;display:grid;position:absolute}.pedal{background:var(--surface);color:var(--sand);border-radius:24px;align-content:center;place-items:center;gap:2px;transition:transform .1s,background .1s;display:grid;box-shadow:inset 0 0 0 1.5px #e3d5b859}.pedal svg{width:30px;height:30px}.pedal small{font-family:var(--font-ui);font-size:14px}.pedal.on{background:#e3d5b859;transform:scale(.94)}.pedal.gas{background:#22c55e47;border-radius:28px;grid-area:1/2/3}.pedal.brake{grid-area:2/1}.pedal.drift{grid-area:1/1}body.hint-gas .pedal.gas{animation:.9s ease-in-out infinite call}.gas-hint{display:none}.robot{bottom:calc(var(--edge-b) + 182px);width:160px;height:80px}.scan-btn{width:72px;height:72px}.scan-btn .glyph svg{width:32px;height:32px}.rope-btn{width:56px;height:56px;right:84px}.robot .face{width:44px;height:44px;bottom:12px;right:148px}.key{display:none}.speedo{width:116px;height:116px}.kmh{bottom:22px}.kmh b{font-size:20px}}body.portrait .top-mid{top:calc(var(--edge-t) + 62px)}@media (max-width:420px){.top-right{right:calc(var(--edge-r) + 54px);gap:6px}.pause-btn,.pause-btn img{width:48px;height:48px}.slot{width:30px;height:30px}}.wake{pointer-events:auto;background:#000;animation:.4s ease-out both wake-in;position:absolute;inset:0}@keyframes wake-in{0%{background:#000}to{background:0 0}}.wake .frost{-webkit-backdrop-filter:blur(10px);background:radial-gradient(#c8ebff8c,#8cc8e6eb 70%);position:absolute;inset:0}.wake svg{width:100%;height:100%;position:absolute;inset:0}.wake path{fill:none;stroke:#fffffff2;stroke-width:.5px;stroke-dasharray:80;stroke-dashoffset:80px;animation:.9s ease-out .3s forwards crack}@keyframes crack{to{stroke-dashoffset:0}}.wake.burst{animation:.7s ease-in forwards burst}@keyframes burst{to{opacity:0;filter:blur(6px);transform:scale(1.6)}}.memory,.intro{pointer-events:auto;background:#0d0805;place-items:center;animation:.3s ease-out both mem-in;display:grid;position:absolute;inset:0;overflow:hidden}@keyframes mem-in{0%{opacity:0;filter:brightness(3)}}.memory.leaving,.intro.leaving{animation:.34s ease-in both screen-out}.still{position:absolute;inset:0}.still canvas{object-fit:cover;width:100%;height:100%;animation:4.5s ease-out both kb}@keyframes kb{0%{transform:scale(1.12)}to{transform:scale(1)}}.grain{pointer-events:none;animation:.4s steps(4,end) infinite grain;position:absolute;inset:-50%}@keyframes grain{25%{transform:translate(-8%,4%)}50%{transform:translate(5%,-6%)}75%{transform:translate(-3%,7%)}}.mem-text{left:50%;bottom:calc(var(--safe-b) + 7vh);width:min(92vw,720px);padding:var(--s4) var(--s5);border-radius:var(--r-card);text-align:center;animation:rise .6s .3s var(--ease) both;background:#0f0905b8;position:absolute;transform:translate(-50%)}.mem-text small{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--sandDim);font-size:14px}.mem-text p{margin:6px 0 0;font-size:clamp(18px,2.4vw,22px)}.intro-stage{position:absolute;inset:0}.scene{place-items:center;animation:linear both scene-fade;display:grid;position:absolute;inset:0}@keyframes scene-fade{0%{opacity:0}8%{opacity:1}90%{opacity:1}to{opacity:0}}.still.kb canvas{animation:linear both kb2;animation-duration:inherit}@keyframes kb2{0%{transform:scale(1)}to{transform:scale(1.12)translate(-2%)}}.lines{text-align:center;width:min(90vw,760px);position:relative}.scene.still .lines{margin-bottom:calc(var(--safe-b) + 12vh);padding:var(--s4);border-radius:var(--r-card);background:#0f090599;align-self:end}.lines p{animation:rise .9s var(--ease) both;margin:8px 0;font-size:clamp(19px,2.8vw,26px)}.scene.text .lines p{font-family:var(--font-display);letter-spacing:.08em;font-size:clamp(22px,4.5vw,40px)}.btn.skip{right:calc(var(--edge-r) + 58px);top:var(--edge-t);min-height:48px;font-size:14px;position:absolute}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.still canvas,.grain,.scene{animation:none!important}}.exit-btn{left:var(--edge-l);bottom:calc(var(--edge-b) + 162px);background:var(--surface);height:52px;color:var(--sand);font-family:var(--font-ui);pointer-events:auto;opacity:0;visibility:hidden;transition:opacity .25s, transform .3s var(--spring);border-radius:999px;align-items:center;gap:8px;padding:0 18px 0 14px;font-size:17px;font-weight:700;display:flex;position:absolute}.exit-btn.show{opacity:.55;visibility:visible}.exit-btn.show.ready{opacity:1;box-shadow:0 0 0 2px var(--sand), 0 0 18px #e3d5b873}.exit-btn:active{transform:scale(.94)}.exit-btn .glyph svg{width:24px;height:24px;display:block}.exit-btn .key{margin-left:4px;position:static}.hp,.dust-chip,.crosshair,.lock,.fire-btn,body.on-foot .speedo,body.on-foot .robot,body.on-foot .pedals,body.on-foot .gas-hint{display:none}body.on-foot .hp{left:var(--edge-l);bottom:var(--edge-b);background:var(--surface);font-family:var(--font-ui);border-radius:18px;gap:6px;padding:10px 14px;display:grid;position:absolute}.hp-top{align-items:center;gap:6px;font-size:15px;display:flex}.hp-top b{font-family:var(--font-display);margin-left:auto;padding-left:10px;font-size:18px}.hp-ico svg{width:20px;height:20px;color:var(--green);display:block}.hp-segs{gap:4px;display:flex}.hp-segs span{background:#e3d5b826;border-radius:999px;width:26px;height:10px;transition:background .2s}.hp-segs span.on{background:var(--green)}.hp.low .hp-segs span.on{background:var(--danger)}.hp.hurt{animation:.18s steps(2,end) 4 hullblink}body.on-foot .dust-chip{top:calc(var(--edge-t) + 52px);right:calc(var(--edge-r) + 58px);background:var(--surface);border-radius:999px;align-items:center;gap:6px;height:36px;padding:0 14px 0 10px;font-size:16px;display:flex;position:absolute}.dust-chip .ico svg{width:20px;height:20px;display:block}body.on-foot .crosshair,body.on-foot .lock{display:block;position:absolute;top:0;left:0}.crosshair svg{fill:none;stroke:#e3d5b8d9;stroke-width:2.5px;width:40px;height:40px;margin:-20px 0 0 -20px;display:block}.crosshair.locked svg{stroke:var(--cyan)}.lock{width:56px;height:56px;box-shadow:inset 0 0 0 2.5px var(--cyan), 0 0 14px #7ff6ff99;opacity:0;border-radius:50%;margin:-28px 0 0 -28px;transition:opacity .15s}.lock.on{opacity:1}.car-ico svg{width:26px;height:26px;color:var(--green);filter:drop-shadow(0 0 6px #000c)}.floats{position:absolute;inset:0}.float{color:var(--sand);text-shadow:0 0 10px #ffe7b0cc,0 2px 4px #000c;animation:float-up 1s var(--ease) forwards;font-size:24px;font-weight:800;position:absolute;transform:translate(-50%,-50%)}@keyframes float-up{0%{opacity:0;transform:translate(-50%,-30%)scale(.6)}15%{opacity:1;transform:translate(-50%,-60%)scale(1.15)}to{opacity:0;transform:translate(-50%,-260%)scale(1)}}@media (pointer:coarse){.exit-btn{bottom:calc(var(--edge-b) + 128px)}.exit-btn .key{display:none}body.on-foot .exit-btn{left:auto;right:var(--edge-r);bottom:calc(var(--edge-b) + 128px)}body.on-foot .fire-btn{right:var(--edge-r);bottom:var(--edge-b);width:108px;height:108px;color:var(--sand);pointer-events:auto;touch-action:none;background:#7ff6ff38;border-radius:50%;align-content:center;place-items:center;gap:2px;transition:transform .1s;display:grid;position:absolute;box-shadow:inset 0 0 0 2px #7ff6ff99}.fire-btn svg{width:36px;height:36px}.fire-btn small{font-family:var(--font-ui);font-size:14px}.fire-btn.on{background:#7ff6ff66;transform:scale(.92)}}:root{--w-size:56px;--w-bottom:var(--edge-b)}.weapons,.pick-btn{display:none}body.on-foot .weapons{left:50%;bottom:var(--w-bottom);pointer-events:none;justify-items:center;gap:6px;display:grid;position:absolute;transform:translate(-50%)}.w-name{background:var(--surface);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--sand);border-radius:999px;padding:2px 12px;font-size:14px;font-weight:700}.w-row{align-items:center;gap:8px;display:flex}.w-slot,.w-drop{width:var(--w-size);height:var(--w-size);background:var(--surface);color:var(--sand);pointer-events:auto;touch-action:none;transition:transform .18s var(--spring), box-shadow .18s, background .18s;border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:inset 0 0 0 2px #e3d5b873}.w-slot:active,.w-drop:active{transform:scale(.9)}.w-slot .w-ico svg{width:30px;height:30px;display:block}.w-slot.empty .w-ico{display:none}.w-slot.on{box-shadow:inset 0 0 0 2.5px var(--sand), 0 0 18px #e3d5b8a6, 0 0 6px #7ff6ff80;background:#e3d5b83d;transform:scale(1.1)}.w-slot.on .w-ico{color:var(--cyan);filter:drop-shadow(0 0 4px #7ff6ffcc)}.w-slot.new{animation:w-new .52s var(--spring)}@keyframes w-new{0%{box-shadow:inset 0 0 0 2.5px var(--cyan), 0 0 0 #7ff6ff00;transform:scale(.7)}50%{box-shadow:inset 0 0 0 2.5px var(--cyan), 0 0 26px #7ff6ffe6;transform:scale(1.25)}}.w-num{background:var(--sand);min-width:20px;height:20px;color:var(--bgDeep);border-radius:999px;place-items:center;padding:0 5px;font-size:13px;font-weight:800;display:grid;position:absolute;top:-3px;left:-3px}.w-drop{width:calc(var(--w-size) - 8px);height:calc(var(--w-size) - 8px);margin-left:4px}.w-drop .w-ico svg{width:24px;height:24px;display:block}.w-drop.off{opacity:.4}.fire-btn.off{opacity:.45}body.on-foot .pick-btn{left:50%;bottom:calc(var(--w-bottom) + var(--w-size) + 44px);background:var(--surfaceStrong);height:52px;box-shadow:0 0 0 2px var(--cyan), 0 0 18px #7ff6ff73;color:var(--sand);font-family:var(--font-ui);pointer-events:auto;opacity:0;visibility:hidden;transition:opacity .2s, transform .26s var(--spring), visibility 0s .2s;border-radius:999px;align-items:center;gap:8px;padding:0 18px 0 14px;font-size:17px;font-weight:700;display:flex;position:absolute;transform:translate(-50%)scale(.9)}body.on-foot .pick-btn.show{opacity:1;visibility:visible;transition:opacity .2s, transform .26s var(--spring);transform:translate(-50%)scale(1)}.pick-btn .glyph svg{width:24px;height:24px;color:var(--cyan);display:block}.pick-btn .key{margin-left:4px;position:static}.toast{left:50%;top:max(24%, calc(var(--edge-t) + 110px));background:var(--surfaceStrong);font-family:var(--font-ui);white-space:nowrap;opacity:0;transition:opacity .25s, transform .3s var(--spring);pointer-events:none;border-radius:999px;padding:8px 18px;font-size:18px;font-weight:700;position:absolute;transform:translate(-50%)translateY(-6px)scale(.94);box-shadow:inset 0 0 0 1.5px #7ff6ff8c}.toast.on{opacity:1;transform:translate(-50%)translateY(0)scale(1)}@media (max-width:760px),(pointer:coarse){:root{--w-size:48px;--w-bottom:calc(var(--edge-b) + 84px)}.w-row{gap:6px}.w-slot .w-ico svg{width:26px;height:26px}.w-name{font-size:12px}}@media (pointer:coarse){.w-drop .w-num,.pick-btn .key{display:none}body.on-foot .exit-btn{bottom:calc(var(--w-bottom) + var(--w-size) + 44px)}body.on-foot .pick-btn{left:var(--edge-l);transform:scale(.9)}body.on-foot .pick-btn.show{transform:scale(1)}body.portrait{--w-bottom:calc(var(--edge-b) + 128px)}body.on-foot .hint{bottom:calc(var(--w-bottom) + var(--w-size) + 30px)}body.on-foot.portrait .hint{bottom:calc(var(--w-bottom) + var(--w-size) + 110px)}body.on-foot .hold{bottom:calc(var(--w-bottom) + var(--w-size) + 32px)}.toast{font-size:16px}}@media (prefers-reduced-motion:reduce){.w-slot.new{animation:none}}
