*{box-sizing:border-box}body{margin:0;background:#050811;color:#f4f7ff;font-family:Inter,Arial,sans-serif;overflow:hidden}button{font:inherit;cursor:pointer;color:inherit;border:0}#game{position:relative;width:100%;max-width:560px;height:100dvh;min-height:480px;margin:auto;overflow:hidden;background:#101a2b;touch-action:none}#view,#view canvas,.vignette,#flash{position:absolute;inset:0;width:100%;height:100%}.vignette{pointer-events:none;background:linear-gradient(#050b18b0,transparent 32%,transparent 66%,#050b18dd)}header{position:absolute;top:0;width:100%;padding:25px 22px;display:flex;align-items:center;gap:10px;z-index:2}.brand{font:900 28px 'Barlow Condensed',Impact,sans-serif;letter-spacing:-1px;flex:1}.brand span{color:#c7ff5c}.brand small{display:block;font:9px Inter,Arial;letter-spacing:2px;color:#99a7b9;margin-top:5px}header button{background:#ffffff0e;border:1px solid #ffffff28;border-radius:6px;padding:10px;font-size:9px;letter-spacing:1px}#pause{font-size:17px;padding:6px 12px}#hud{position:absolute;top:108px;left:24px;right:24px;display:flex;justify-content:space-between}#hud[hidden]{display:none}small{display:block;font-size:9px;letter-spacing:2px;color:#a6b7c9}#hud strong{font:700 42px 'Barlow Condensed',Impact,sans-serif}.right{text-align:right}#panel{position:absolute;inset:22% 25px auto}.eyebrow{font-size:9px;letter-spacing:3px;color:#c7ff5c}h1{font:900 clamp(66px,15vw,94px)/.89 'Barlow Condensed',Impact,sans-serif;letter-spacing:-2px;margin:19px 0}h1 em{font-style:normal;color:#c7ff5c}p{font-size:12px;line-height:1.8;color:#b9c6d8;margin:20px 0 28px}.primary{width:100%;background:#c7ff5c;color:#122009;font-weight:800;font-size:13px;letter-spacing:1px;padding:19px 20px;border-radius:5px;text-align:left;box-shadow:0 0 35px #c7ff5c18}.primary span{float:right;font-size:21px;line-height:15px}.instructions{font-size:8px;letter-spacing:1px;margin:17px 0;color:#b7c5d6;text-align:center}.instructions span{padding:0 5px;color:#c7ff5c}.best{border-top:1px solid #ffffff20;margin-top:26px;padding-top:15px;font-size:9px;letter-spacing:2px;color:#8e9db2}.best b{float:right;color:white;font-size:14px}footer{position:absolute;bottom:18px;left:24px;right:24px;display:flex;justify-content:space-between;font-size:7px;letter-spacing:1px;color:#8090a8}#mission{position:absolute;bottom:52px;left:24px;right:24px;background:#08111cba;border:1px solid #ffffff1d;padding:13px;border-radius:7px;display:none}#mission span{font-size:8px;color:#c7ff5c;letter-spacing:2px}#mission b{display:block;font-size:12px;margin:5px 0 9px}#mission>div{height:3px;background:#ffffff20}#progress{display:block;height:100%;width:0;background:#c7ff5c;transition:width .2s}#combo{position:absolute;top:26%;width:100%;text-align:center;color:#c7ff5c;font:800 28px 'Barlow Condensed',Impact;pointer-events:none}#flash{pointer-events:none;background:#ff6338;opacity:0}#toast{position:absolute;top:20%;width:100%;text-align:center;font-size:12px;color:#c7ff5c}#result{font:700 45px 'Barlow Condensed',Impact;margin-bottom:24px}#error{position:absolute;inset:35% 30px;color:white;background:#111;padding:25px}button:focus-visible{outline:3px solid white;outline-offset:3px}[hidden]{display:none!important}@media(min-width:600px){#game{box-shadow:0 0 100px #13203d}body{background:radial-gradient(ellipse at center,#152039,#050811)}}@media(max-height:650px){#panel{top:19%}h1{font-size:62px}p{margin:14px 0}.best{margin-top:15px}}

body{background:#0e1920}#game{max-width:none;width:min(100vw,56.25dvh);min-height:0;height:100dvh;border-inline:1px solid #ffffff15}header{padding: max(15px,env(safe-area-inset-top)) 18px 12px}header button{letter-spacing:0}#sound{display:none}.brand{font-size:27px}.brand small{font-size:8px}#panel{inset:21% 22px auto}h1{font-size:clamp(48px,10dvh,86px);margin:16px 0}p{margin:16px 0;font-size:12px}#panel{padding:17px;border-radius:12px;background:linear-gradient(120deg,#08121aee,#08121abc);border:1px solid #ffffff24;backdrop-filter:blur(8px)}.eyebrow{font-size:8px;letter-spacing:2px}.best{margin-top:14px;padding-top:10px}.instructions{font-size:8px;margin:12px 0}footer{bottom:max(10px,env(safe-area-inset-bottom));left:18px;right:18px;font-size:6px}#hud{top:85px;left:22px;right:22px}#hud strong{font-size:34px}.selectrow{display:flex;gap:10px;margin:14px 0 10px}.selectrow label{flex:1;min-width:0;font-size:8px;letter-spacing:1px;color:#b9c6d8}select{width:100%;display:block;background:#1e303a;color:#fff;border:1px solid #526370;border-radius:5px;padding:10px 5px;margin-top:5px;font:600 11px Arial}nav{display:flex;gap:10px}nav button{flex:1;padding:11px;background:#ffffff13;border:1px solid #ffffff25;border-radius:5px;font-size:10px;font-weight:bold}#meters{position:absolute;top:151px;left:22px;right:22px;display:flex;flex-wrap:wrap;gap:8px 12px;font-size:9px;color:#e3efd9}#meters>span{flex:1}#health{text-align:right;color:#ffbe9c}#meters label{width:calc(50% - 6px);font-size:8px;letter-spacing:1px}meter{display:block;width:100%;height:10px;accent-color:#c7ff5c}#actions{position:absolute;bottom:max(25px,env(safe-area-inset-bottom));left:16px;right:16px;display:flex;gap:9px;z-index:3}#actions button{flex:1;background:#0c222de8;border:1px solid #a5c2c783;border-radius:12px;min-height:58px;font-size:12px;font-weight:800;touch-action:none;user-select:none}#actions button:last-child{background:#c7ff5c;color:#132009}#actions small{font:7px Arial;color:inherit;letter-spacing:1px;margin-top:6px}#actions button:active,#actions button.active{background:#ffbd69;color:#101c22;transform:translateY(2px)}#mission{bottom:96px;padding:9px 12px}#mission b{font-size:10px}#combo{top:31%;font-size:24px;text-shadow:0 2px 8px #000}#toast{top:25%;padding:0 20px;font-size:11px;text-shadow:0 2px 6px #000;pointer-events:none}dialog{width:calc(100% - 30px);max-width:410px;max-height:85dvh;background:#10232d;color:#f1f8f5;border:1px solid #4a616d;border-radius:16px;padding:26px 20px;box-shadow:0 30px 100px #000a}dialog::backdrop{background:#061018aa;backdrop-filter:blur(6px)}dialog h2{font:900 34px Impact,Arial;margin:5px 0 12px;color:#c7ff5c}dialog h3{font-size:14px;margin:12px 0 5px}dialog p{font-size:12px;margin:8px 0 16px;line-height:1.6}dialog button{background:#c7ff5c;color:#14220e;border-radius:6px;padding:12px;font-weight:bold}#closeDialog{position:absolute;right:12px;top:12px;background:#ffffff15;color:white;padding:8px}.card{padding:12px;border:1px solid #ffffff25;border-radius:8px;margin:9px 0}.card button{width:100%;margin-top:6px}.card.selected{border-color:#c7ff5c}dialog label{display:block;font-size:13px;padding:12px 0}dialog input[type=range]{width:100%;accent-color:#c7ff5c}#result{font-size:32px;margin:12px 0}.primary{padding:16px}.vignette{background:linear-gradient(#06101885,transparent 40%,transparent 64%,#06101899)}@media(max-height:700px){#panel{top:16%;padding:12px}h1{font-size:52px;margin:12px 0}p{margin:10px 0;font-size:11px}.best{margin-top:8px}.instructions{margin:8px 0}.selectrow{margin:10px 0}#menuOptions nav button{padding:8px}header{padding-top:12px}}@media(max-width:350px){header{gap:5px;padding-inline:12px}#panel{left:12px;right:12px}.brand{font-size:24px}h1{font-size:48px}.instructions{font-size:7px}}

#meters>span{flex:none;width:calc(50% - 6px)}#meters label{flex:none}#pause[hidden]{display:none}#dialogBody>small{padding-right:30px}dialog{overscroll-behavior:contain;touch-action:pan-y}

#speedFX{position:absolute;inset:0;pointer-events:none;opacity:0;background:repeating-conic-gradient(from 3deg at 50% 35%,transparent 0deg 14deg,#89f2ff40 14.2deg 14.6deg,transparent 15deg 25deg);mask-image:radial-gradient(ellipse at 50% 35%,transparent 30%,black 100%);transition:opacity .2s}.boosting #speedFX{opacity:1;animation:boostPulse .18s infinite alternate}@keyframes boostPulse{to{transform:scale(1.06);opacity:.5}}@media(prefers-reduced-motion:reduce){.boosting #speedFX{animation:none}}

#roadInfo{position:absolute;top:135px;width:100%;text-align:center;font-size:11px;letter-spacing:2px;color:#ffcf5c;pointer-events:none}body:has(#panel:not([hidden])) #roadInfo{display:none}

/* MAX: live threat radar and four-thumb controls */
#radar{position:absolute;left:18px;right:18px;top:198px;display:flex;gap:5px;pointer-events:none}#radar>div{flex:1;min-width:0;padding:6px 2px;border:1px solid #81a4b649;border-radius:5px;background:#08121cce;text-align:center;color:#adc3ce}#radar b{display:block;font-size:8px;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#radar small{font-size:9px;letter-spacing:1px;margin-top:3px;color:inherit}#radar .imminent{border-color:#ff9065;background:#502826e6;color:#ffca9c}#radar .caution{border-color:#eec76b80;color:#ffdf93}#radar .clear{color:#81a5a2}#condition{position:absolute;top:254px;width:100%;text-align:center;color:#bd9aff;font-size:10px;letter-spacing:1px;pointer-events:none}body:has(#panel:not([hidden])) #radar,body:has(#panel:not([hidden])) #condition{display:none}#actions{gap:6px;left:12px;right:12px}#actions button{font-size:10px;min-width:44px}#actions small{font-size:6px;letter-spacing:.4px}#toast{top:36%;font-weight:bold}#combo{top:42%}.lowGrip #view{filter:saturate(.8)}@media(max-height:700px){#radar{top:182px}#radar>div{padding:3px 2px}#condition{top:226px}#toast{top:43%}#combo{top:48%}#meters{top:139px}#roadInfo{top:122px}}

/* Racing presentation: sharper road, brighter boost, actual model previews. */
body{background:radial-gradient(ellipse at 50% 30%,#173657,#050a17 70%)}.brand span{color:#7affc7;text-shadow:0 0 18px #48ffc254}.primary{background:linear-gradient(115deg,#c7ff5c,#74ffb6);box-shadow:0 0 26px #7dffc52e}#speed{color:#b0f4ff;text-shadow:0 0 18px #54b9ff70}.boosting #speed{color:white;text-shadow:0 0 16px #55d8ff}#speedFX{background:repeating-conic-gradient(from 3deg at 50% 35%,transparent 0deg 12deg,#78eaff68 12.2deg 12.65deg,transparent 13deg 21deg);mask-image:radial-gradient(ellipse at 50% 35%,transparent 43%,black 100%)}.boosting #speedFX{opacity:.85}.carPreview{display:block;width:100%;height:auto;max-height:140px;background:radial-gradient(ellipse,#2a435a66,transparent 70%)}.carStats{font-size:10px;letter-spacing:1px;color:#8ceeff;padding:7px 0;border-block:1px solid #77dfff25}.card.selected{box-shadow:inset 0 0 22px #62ffc310}.card>small{font-size:8px;color:#7dffd0}.vignette{background:linear-gradient(#06101888,transparent 40%,transparent 66%,#040b1888)}

/* Three single-use powers, with touch targets kept separate from driving. */
#powers{position:absolute;bottom:max(92px,calc(env(safe-area-inset-bottom) + 72px));left:12px;right:12px;display:flex;gap:6px;z-index:3}#powers button{flex:1;min-width:0;min-height:44px;border:1px solid #65d7ff8c;border-radius:9px;background:#10293fe8;color:#9eeaff;font-size:10px;font-weight:bold;touch-action:manipulation}#powers small{font:6px Arial;color:inherit;margin-top:5px;letter-spacing:.5px}#powers button:disabled{opacity:.38;cursor:default}#powers button.active{opacity:1;border-color:#a7ffd7;background:#174142;color:#c1ffe6}#powers button:active:not(:disabled){background:#53608b}#mission{bottom:147px}#powerFX{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:0;border:3px solid #76f3ff;box-shadow:inset 0 0 55px #53d9ff50}.clearRoad #powerFX{opacity:.6}.teleporting #powerFX{animation:warpFlash .36s ease-out}@keyframes warpFlash{0%{opacity:1;box-shadow:inset 0 0 100px #af86ffcc}100%{opacity:0}}@media(max-height:700px){#mission{top:246px;bottom:auto;left:70px;right:70px;padding:4px 8px;background:#08111c9c;border-radius:4px}#mission span{display:none}#mission b{font-size:8px;line-height:10px;margin:0 0 3px}#mission>div{height:2px}#toast{top:291px;font-size:10px}#combo{top:320px;font-size:20px}}@media(prefers-reduced-motion:reduce){.teleporting #powerFX{animation:none}.clearRoad #powerFX{box-shadow:none}}
