@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;800;900&family=Rajdhani:wght@600;700&display=swap";:root{--primary:#00f0ff;--primary-glow:#00f0ff66;--accent:#f07;--accent-glow:#f076;--gold:#ffbe0b;--gold-glow:#ffbe0b80;--bg-dark:#0a0614;--panel-bg:#0e0b1ab8;--panel-border:#ffffff1f;--text-main:#f8fafc;--text-muted:#94a3b8}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;margin:0;padding:0}html,body{background-color:var(--bg-dark);width:100%;height:100%;color:var(--text-main);font-family:Outfit,sans-serif;overflow:hidden}#game-container{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}#screenshot-flash{z-index:40;pointer-events:none;opacity:0;background:#fff0;place-items:center;display:grid;position:fixed;inset:0}#screenshot-flash.active{animation:.85s ease-out both screenshotFlash}#screenshot-flash span{color:#fff;letter-spacing:3px;background:#080812c7;border:2px solid #fff;border-radius:12px;padding:12px 24px;font:900 clamp(24px,5vw,48px) Rajdhani,sans-serif;transform:rotate(-5deg)scale(.7);box-shadow:0 0 24px #ffffffbf}#screenshot-flash.active span{animation:.85s cubic-bezier(.2,.8,.2,1) both screenshotCaption}@keyframes screenshotFlash{0%{opacity:0;background:#fff0}8%{opacity:1;background:#fffffff5}22%{opacity:.9;background:#ffffffb8}to{opacity:0;background:#fff0}}@keyframes screenshotCaption{0%,14%{opacity:0;transform:rotate(-5deg)scale(.7)}28%,72%{opacity:1;transform:rotate(-5deg)scale(1)}to{opacity:0;transform:rotate(-5deg)scale(.9)}}canvas{display:block;width:100%!important;height:100%!important}#hud{z-index:10;pointer-events:none;flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:24px 32px;transition:opacity .3s;display:flex;position:absolute;top:0;left:0}.hud-top{justify-content:space-between;align-items:flex-start;width:100%;display:flex}.hud-card{background:var(--panel-bg);-webkit-backdrop-filter:blur(14px);border:1px solid var(--panel-border);border-radius:14px;flex-direction:column;padding:12px 20px;display:flex;box-shadow:0 8px 32px #0006}.hud-score-card{border-left:4px solid var(--primary)}.hud-distance-card{border-top:3px solid var(--accent);align-items:center}.hud-highscore-card{border-right:4px solid var(--gold);align-items:flex-end}.hud-label{letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase;font-family:Rajdhani,sans-serif;font-size:13px;font-weight:700}.hud-value{letter-spacing:.5px;margin-top:2px;font-size:28px;font-weight:800;line-height:1.1}.hud-score-card .hud-value{color:#fff;text-shadow:0 0 16px var(--primary-glow)}.hud-distance-card .hud-value{color:#fff;font-size:22px}.hud-highscore-card .hud-value{color:var(--gold);text-shadow:0 0 14px var(--gold-glow)}.hud-actions{pointer-events:auto;gap:10px;margin-top:10px;display:flex}.hud-btn{color:var(--text-main);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;padding:6px 12px;font-size:14px;transition:all .2s}.hud-btn:hover{border-color:var(--primary);background:#fff3;transform:translateY(-2px)}.ui-icon{vertical-align:middle;stroke-width:1.8px;flex:none;width:18px;height:18px}.btn-secondary .ui-icon{margin-right:6px}.credit-inline .ui-icon,.credit-balance .ui-icon{width:16px;height:16px;color:var(--gold)}.gauge-label .ui-icon{width:15px;height:15px}.touch-btn .ui-icon{width:24px;height:24px}.car-status .lucide,.car-action .lucide{vertical-align:-2px;width:14px;height:14px}.new-record-banner .ui-icon{vertical-align:-3px;width:16px;height:16px}.hud-btn:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible,.touch-btn:focus-visible,.car-option:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.hud-btn:focus-visible,.btn-secondary:focus-visible,.touch-btn:focus-visible{box-shadow:0 0 0 3px var(--primary-glow)}.hud-bottom{justify-content:space-between;align-items:flex-end;width:100%;display:flex}.nitro-container{width:220px}.gauge-title{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.gauge-label{letter-spacing:1.2px;color:var(--primary);text-transform:uppercase;font-family:Rajdhani,sans-serif;font-size:13px;font-weight:700}.gauge-sub{color:var(--text-muted);font-size:11px}.progress-bar-bg{background:#0009;border:1px solid #00f0ff4d;border-radius:6px;width:100%;height:12px;position:relative;overflow:hidden}.progress-bar-fill{width:100%;height:100%;box-shadow:0 0 12px var(--primary-glow);background:linear-gradient(90deg,#08f,#00f0ff);transition:width .1s linear}.progress-bar-fill.glow{animation:.8s ease-in-out infinite alternate nitroPulse}@keyframes nitroPulse{0%{filter:brightness()drop-shadow(0 0 4px #00f0ff)}to{filter:brightness(1.5)drop-shadow(0 0 12px #00f0ff)}}.speedometer{z-index:15;aspect-ratio:360/320;pointer-events:none;filter:drop-shadow(0 12px 20px #00000080);width:clamp(270px,30vw,380px);position:absolute;bottom:clamp(12px,2.2vw,28px);right:clamp(12px,2.4vw,30px);overflow:visible}.speedometer-svg{width:100%;height:100%;display:block;overflow:visible}#speedometer-speed-arc{filter:drop-shadow(0 0 5px #42c4efb3)}#speedometer-redline{filter:drop-shadow(0 0 4px #d2323a8c)}.speed-tick{stroke:#11171a;stroke-width:1.6px}.speed-tick.major{stroke:#0b1012;stroke-width:2.8px}.speed-tick-label{fill:#b7bec1;text-anchor:middle;dominant-baseline:middle;font:700 9px Rajdhani,sans-serif}.rpm-tick{stroke:#d8dcdd;stroke-width:1.4px}.rpm-tick.major{stroke-width:2.2px}.rpm-tick.redline{stroke:#e23a42;stroke-width:2.6px}.speedometer-needle,.rpm-needle{transition:transform 75ms linear}.speed-readout{fill:#f5f6f6;text-anchor:middle;font-family:Rajdhani,sans-serif}#speedometer-speed{letter-spacing:-1px;font-size:37px;font-weight:700}#speedometer-gear{font-size:25px;font-style:italic;font-weight:700}.speedometer-unit{fill:#c4c9cb;letter-spacing:1.3px;font-size:10px;font-weight:700}#speedometer-rpm-value{fill:#f2f4f4;text-anchor:middle;font:700 11px Rajdhani,sans-serif}.speedometer-rpm-unit{fill:#aeb5b8;letter-spacing:.6px;text-anchor:middle;font:600 6px Rajdhani,sans-serif}#floating-alerts{pointer-events:none;z-index:20;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%)}.alert-popup{letter-spacing:2px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0e0b1ad9;border-radius:30px;padding:6px 18px;font-family:Rajdhani,sans-serif;font-size:26px;font-weight:800;animation:1.2s cubic-bezier(.18,.89,.32,1.28) forwards popupAnim;box-shadow:0 6px 20px #0009}.alert-popup.near-miss{color:#00f0ff;text-shadow:0 0 14px #00f0ffcc;border:1px solid #00f0ff}.alert-popup.coin{color:gold;text-shadow:0 0 14px #ffd700cc;border:1px solid gold}@keyframes popupAnim{0%{opacity:0;transform:translateY(20px)scale(.7)}18%{opacity:1;transform:translateY(0)scale(1.1)}30%{transform:translateY(0)scale(1)}75%{opacity:1;transform:translateY(-20px)scale(1)}to{opacity:0;transform:translateY(-40px)scale(.9)}}.screen-overlay{z-index:50;-webkit-backdrop-filter:blur(12px);opacity:1;visibility:visible;background:radial-gradient(circle,#0e0b1abf 0%,#06040cf0 100%);justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s,visibility .3s;display:flex;position:absolute;top:0;left:0}.screen-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}.screen-overlay.credits-overlay-active{z-index:1000}.admin-console{z-index:120;width:min(460px,100vw - 28px);max-height:calc(100vh - 28px);color:var(--text-main);background:#080c1bf7;border:1px solid #00f0ff61;border-radius:18px;padding:22px;font-size:14px;position:absolute;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 20px 70px #000000b8,0 0 34px #00f0ff29}.admin-console.hidden{display:none}.admin-console-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-kicker{color:var(--primary);letter-spacing:2px;font-size:10px;font-weight:800}.admin-console-header h2{text-transform:uppercase;margin-top:3px;font-family:Rajdhani,sans-serif;font-size:32px;line-height:1}.admin-close{border:1px solid var(--panel-border);width:36px;height:36px;color:var(--text-main);cursor:pointer;background:#ffffff0f;border-radius:10px;font-size:24px}.admin-console-hint{color:var(--text-muted);margin:10px 0 16px;font-size:12px}.admin-console kbd{color:var(--text-main);background:#ffffff14;border:1px solid #ffffff2e;border-radius:4px;padding:1px 5px}.admin-section{border-top:1px solid #ffffff1a;gap:10px;padding:14px 0;display:grid}.admin-section h3{color:var(--primary);letter-spacing:1.5px;text-transform:uppercase;font-size:11px}.admin-toggle,.admin-control,.admin-set-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-toggle input,.admin-speed-toggle input{accent-color:var(--primary)}.admin-control{flex-wrap:wrap}.admin-control>span{justify-content:space-between;gap:12px;width:100%;display:flex}.admin-control output{color:var(--primary);font-variant-numeric:tabular-nums}.admin-control input[type=range]{width:100%;accent-color:var(--primary)}.admin-control input:disabled{opacity:.4}.admin-set-row input{border:1px solid var(--panel-border);width:115px;color:var(--text-main);-webkit-user-select:text;user-select:text;background:#ffffff0f;border-radius:7px;padding:7px 9px}.admin-set-row button,.admin-spawn-button{color:var(--text-main);cursor:pointer;background:#00f0ff1a;border:1px solid #00f0ff61;border-radius:8px;padding:8px 12px}.admin-spawn-button{width:100%;margin-top:4px;font-weight:700}.admin-console-status{min-height:18px;color:var(--text-muted);text-align:center;font-size:12px}.admin-console input{-webkit-user-select:auto;user-select:auto}.modal-content{text-align:center;background:#120e22d1;border:1px solid #ffffff1f;border-radius:24px;width:90%;max-width:500px;padding:40px 48px;animation:.4s cubic-bezier(.16,1,.3,1) forwards modalIn;position:relative;overflow:hidden;box-shadow:0 20px 60px #000000b3,0 0 30px #00f0ff26}@keyframes modalIn{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-content:before{content:"";background:linear-gradient(90deg,#00f0ff,#f07,#ffbe0b);height:4px;position:absolute;top:0;left:0;right:0}.game-title{text-transform:uppercase;letter-spacing:3px;background:linear-gradient(135deg,#fff 30%,#00f0ff 70%,#f07 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 20px #00f0ff59);-webkit-background-clip:text;margin-bottom:8px;font-family:Rajdhani,sans-serif;font-size:52px;font-weight:900;line-height:1}.game-subtitle{color:var(--text-muted);letter-spacing:2px;text-transform:uppercase;margin-bottom:28px;font-size:15px}.model-credits{color:var(--text-muted);text-align:left;margin-top:18px;font-size:12px}.model-credits summary{color:var(--text-main);cursor:pointer;text-align:center}.model-credits[open]:before{z-index:1001;content:"";background:#02040ec7;position:fixed;inset:0}.credits-popup{z-index:1002;width:min(520px,100vw - 32px);max-height:min(82vh,720px);color:var(--text-main);background:#080c1efa;border:1px solid #00f0ff6b;border-radius:18px;padding:28px 30px 24px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 0 36px #00f0ff33,0 18px 60px #0000008c}.credits-popup h3{color:#67eaff;letter-spacing:1px;text-align:left;text-transform:uppercase;margin:0 32px 12px 0;font-family:Rajdhani,sans-serif;font-size:18px}.credits-close{z-index:1;float:right;width:34px;height:34px;color:var(--text-main);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:50%;margin:-10px -12px 0 0;font-size:24px;line-height:1;position:sticky;top:0}.credits-close:hover{background:#ff007747}.credits-popup .sound-credit-title{margin-top:24px}.credits-popup strong{color:var(--text-main)}.credits-popup p{margin:8px 0 0}.credits-popup a{color:#67eaff}.model-credits ul{gap:7px;margin:12px 0 8px;padding-left:20px;display:grid}.model-credits a{color:#67eaff}.model-license-link{text-align:center;display:block}.controls-guide{text-align:left;background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:30px;padding:16px 20px;display:grid}.control-item{align-items:center;gap:10px;display:flex}.key-badge{color:#fff;white-space:nowrap;background:#ffffff1f;border:1px solid #ffffff40;border-radius:6px;padding:4px 8px;font-family:Rajdhani,sans-serif;font-size:13px;font-weight:700;box-shadow:0 2px 4px #0000004d}.control-desc{color:#cbd5e1;font-size:13px}.btn-primary{color:#060913;letter-spacing:2px;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,#00f0ff 0%,#0af 100%);border:none;border-radius:12px;width:100%;padding:14px 36px;font-family:Rajdhani,sans-serif;font-size:20px;font-weight:800;transition:all .2s;box-shadow:0 8px 24px #00f0ff66}.btn-primary:hover{background:linear-gradient(135deg,#33f4ff 0%,#22b8ff 100%);transform:translateY(-2px);box-shadow:0 12px 32px #00f0ff99}.btn-primary:active{transform:translateY(1px);box-shadow:0 4px 12px #00f0ff4d}.btn-secondary{color:#cbd5e1;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:10px;margin-top:12px;padding:10px 24px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;transition:all .2s}.btn-secondary:hover{color:#fff;background:#ffffff14;border-color:#ffffff4d}.btn-restart{background:linear-gradient(135deg,#f07 0%,#ff416c 100%);box-shadow:0 8px 24px #ff007773}.btn-restart:hover{background:linear-gradient(135deg,#ff2a8d 0%,#ff5e84 100%);box-shadow:0 12px 32px #ff0077a6}.overlay-menu-btn{width:100%}.menu-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.menu-actions .btn-secondary{margin-top:12px;padding-inline:10px}.credit-inline,.credit-balance{color:var(--gold);white-space:nowrap}.wide-modal{max-width:940px;max-height:90vh;overflow-y:auto}.panel-heading{text-align:left;justify-content:space-between;align-items:center;gap:16px;display:flex}.panel-title{margin:0;font-size:40px}.panel-heading .game-subtitle{margin-bottom:16px}.credit-balance{font-family:Rajdhani,sans-serif;font-size:22px;font-weight:800}.shop-message{min-height:22px;color:var(--primary);font-size:14px}.shop-layout{grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);align-items:stretch;gap:18px;margin:10px 0;display:grid}.preview-panel{text-align:left;background:radial-gradient(at 50% 45%,#00f0ff1a,#060914f0 72%);border:1px solid #00f0ff38;border-radius:16px;min-width:0;padding:10px;position:relative;overflow:hidden}.car-preview-stage{background:#090d1b;border-radius:12px;width:100%;height:clamp(210px,34vh,310px);overflow:hidden}.car-preview-stage canvas{display:block;width:100%!important;height:100%!important}.preview-title{margin:8px 4px 0;font:800 24px Rajdhani,sans-serif}.preview-description{min-height:36px;color:var(--text-muted);margin:0 4px;font-size:13px}.preview-angle{color:var(--primary);letter-spacing:1px;pointer-events:none;background:#050812c2;border-radius:12px;padding:4px 8px;font-size:9px;font-weight:800;position:absolute;top:18px;left:18px}.shop-grid{grid-template-columns:1fr;align-content:start;gap:8px;display:grid}.car-card{border:1px solid var(--panel-border);text-align:left;background:#ffffff0a;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:10px 12px;display:grid}.car-card.previewed{border-color:var(--primary);box-shadow:0 0 16px var(--primary-glow)}.car-option{min-width:0;color:var(--text-main);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:1px;padding:0;display:flex}.car-option-name{font:800 19px Rajdhani,sans-serif}.car-option-model{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-size:10px}.car-status{color:var(--primary);letter-spacing:1px;font-size:10px;font-weight:800}.car-action{width:100%;margin-top:8px;padding:8px 6px;font-size:11px}.car-card .car-action{width:auto;min-width:104px;margin:0;padding:8px}.car-action:disabled{color:var(--primary);border-color:var(--primary);opacity:.8}.settings-modal{max-width:520px}.audio-settings{text-align:left;gap:22px;margin:24px 0 12px;display:grid}.audio-setting>span{letter-spacing:1px;justify-content:space-between;font-family:Rajdhani,sans-serif;font-weight:800;display:flex}.audio-setting output{color:var(--primary)}.audio-setting input{width:100%;accent-color:var(--primary);margin-top:10px}.credit-reward{color:var(--gold);margin:-12px 0 14px;font-family:Rajdhani,sans-serif;font-weight:800}.game-over-title{color:#f05;letter-spacing:3px;text-shadow:0 0 24px #f059;margin-bottom:6px;font-family:Rajdhani,sans-serif;font-size:50px;font-weight:900;line-height:1}.new-record-banner{color:#fff;letter-spacing:1.5px;background:linear-gradient(90deg,#ffbe0b,#f07);border-radius:20px;margin-bottom:20px;padding:4px 16px;font-family:Rajdhani,sans-serif;font-size:14px;font-weight:800;animation:1s infinite alternate pulse;display:inline-block;box-shadow:0 0 16px #ffbe0b80}@keyframes pulse{0%{transform:scale(1)}to{transform:scale(1.06)}}.stats-grid{text-align:left;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:28px;display:grid}.stat-box{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;padding:12px 16px}.stat-label{color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:600}.stat-val{color:#fff;margin-top:2px;font-family:Rajdhani,sans-serif;font-size:24px;font-weight:800}#touch-controls{pointer-events:none;z-index:25;justify-content:space-between;align-items:flex-end;width:100%;padding:0 24px;display:flex;position:absolute;bottom:20px;left:0}.touch-group{pointer-events:auto;gap:14px;display:flex}.touch-btn{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;touch-action:manipulation;background:#0e0b1aa6;border:1.5px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:24px;transition:transform .1s,background .1s;display:flex;box-shadow:0 4px 16px #0006}.touch-btn:active{border-color:var(--primary);background:#00f0ff4d;transform:scale(.9)}.touch-btn.boost-btn{border-color:var(--primary);color:var(--primary);font-family:Rajdhani,sans-serif;font-size:14px;font-weight:800}.touch-btn.brake-btn{border-color:var(--accent);color:var(--accent);font-family:Rajdhani,sans-serif;font-size:14px;font-weight:800}@media (hover:hover) and (pointer:fine){#touch-controls{display:none}}@media (width<=640px){#hud{padding:14px 16px}.hud-value{font-size:20px}.hud-card{padding:8px 12px}.nitro-container{width:140px}.speedometer{width:clamp(190px,57vw,260px);bottom:88px;right:8px}.modal-content{padding:28px 20px}.game-title{font-size:38px}.controls-guide,.shop-layout{grid-template-columns:1fr}.car-preview-stage{height:220px}.shop-grid{grid-template-columns:1fr}.panel-heading{align-items:flex-start}.panel-title{font-size:34px}}@media (width<=400px){.shop-grid,.menu-actions{grid-template-columns:1fr}}
