*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}:root{--bg:#06060f;--card:rgba(10,10,22,.94);--glass:rgba(255,255,255,.03);--border:rgba(255,255,255,.06);--accent:#e8a020;--accent-dark:#b87014;--glow:rgba(232,160,32,.25);--text:#e0e0e0;--dim:rgba(255,255,255,.3);--red:#d63031;--cyan:#00cec9;--green:#2ecc71;--font-d:"Orbitron",monospace;--font-b:"Outfit",sans-serif;--fs-logo:clamp(1.3rem, 4vw, 2.2rem);--fs-logo-accent:clamp(1.8rem, 6vw, 3.4rem);--fs-hud-score:clamp(1rem, 3.5vw, 1.8rem);--fs-hud-sub:clamp(.35rem, 1.2vw, .55rem);--fs-hud-mph:clamp(.75rem, 2.5vw, 1.3rem);--fs-btn:clamp(.7rem, 2.2vw, 1rem);--fs-hint:clamp(.38rem, 1.1vw, .6rem);--fs-overlay-title:clamp(1.2rem, 4vw, 2rem);--fs-crash:clamp(1.4rem, 5vw, 2.4rem);--fs-stat-label:clamp(.3rem, 1vw, .45rem);--fs-stat-val:clamp(.8rem, 2.5vw, 1.3rem);--sai-top:env(safe-area-inset-top, 0px);--sai-bottom:env(safe-area-inset-bottom, 0px);--sai-left:env(safe-area-inset-left, 0px);--sai-right:env(safe-area-inset-right, 0px)}html,body{height:100%;width:100%;overflow:hidden;overscroll-behavior:none}body{font-family:var(--font-b);background:var(--bg);display:flex;justify-content:center;align-items:center;touch-action:none;color:var(--text);padding:var(--sai-top) var(--sai-right) var(--sai-bottom) var(--sai-left);-webkit-user-select:none;user-select:none}#game-wrapper{position:relative;width:100%;height:100%;max-width:540px;overflow:hidden;box-shadow:0 0 60px #000c}#gameCanvas{display:block;width:100%;height:100%}@media (min-width:600px) and (min-height:500px){#game-wrapper{max-width:480px;border-radius:16px;border:1px solid rgba(255,255,255,.04)}}@media (min-width:1024px){#game-wrapper{max-width:440px;border-radius:20px}}#hud{position:absolute;top:0;left:0;width:100%;padding:clamp(4px,1.5vw,10px) clamp(8px,2vw,16px);pointer-events:none;display:flex;align-items:center;gap:clamp(4px,1vw,10px);opacity:0;transition:opacity .3s;z-index:50;padding-top:max(clamp(4px,1.5vw,10px),var(--sai-top));background:linear-gradient(180deg,rgba(0,0,0,.5) 0%,transparent 100%)}#hud.active{opacity:1}.hud-left{flex:1;min-width:0}.hud-score{font-family:var(--font-d);font-size:var(--fs-hud-score);font-weight:900;color:var(--accent);line-height:1;text-shadow:0 2px 8px rgba(0,0,0,.6)}.hud-sub{font-family:var(--font-d);font-size:var(--fs-hud-sub);color:var(--dim);letter-spacing:1px;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40vw}.hud-right{text-align:right;flex-shrink:0}.hud-mph{font-family:var(--font-d);font-size:var(--fs-hud-mph);font-weight:700;line-height:1;text-shadow:0 2px 8px rgba(0,0,0,.6)}.hud-mph small{font-size:clamp(.35rem,1vw,.55rem);color:var(--dim)}.hud-best{font-family:var(--font-d);font-size:var(--fs-hud-sub);color:var(--cyan);letter-spacing:1px}#pause-btn{pointer-events:auto;background:#00000080;border:1px solid var(--border);border-radius:50%;color:#fff;font-size:clamp(.7rem,2vw,1rem);width:clamp(28px,7vw,38px);height:clamp(28px,7vw,38px);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .15s;flex-shrink:0}#pause-btn:active{background:#e8a0204d;transform:scale(.9)}#boost-wrap{position:absolute;bottom:clamp(60px,15vw,85px);left:50%;transform:translate(-50%);width:clamp(100px,35vw,160px);z-index:50;pointer-events:none;opacity:0;transition:opacity .3s}#boost-wrap.active{opacity:1}#boost-bg{width:100%;height:clamp(4px,1vw,6px);background:#00000080;border-radius:5px;overflow:hidden;border:1px solid rgba(255,255,255,.06)}#boost-fill{height:100%;width:0%;border-radius:5px;background:linear-gradient(90deg,#e8a020,#d63031,#e8a020);background-size:200% 100%;animation:shimmer 1.5s linear infinite;transition:width .15s}@keyframes shimmer{0%{background-position:0%}to{background-position:200%}}#shield-indicator{position:absolute;top:clamp(35px,9vw,50px);left:50%;transform:translate(-50%);font-family:var(--font-d);font-size:clamp(.45rem,1.5vw,.65rem);color:var(--cyan);text-shadow:0 0 10px var(--cyan);z-index:50;pointer-events:none;opacity:0;transition:opacity .3s;letter-spacing:2px}#shield-indicator.active{opacity:1;animation:sp .8s ease-in-out infinite alternate}@keyframes sp{0%{transform:translate(-50%) scale(1)}to{transform:translate(-50%) scale(1.06)}}#combo-indicator{position:absolute;top:clamp(52px,12vw,70px);left:50%;transform:translate(-50%);font-family:var(--font-d);font-size:clamp(.5rem,1.8vw,.8rem);color:#f1c40f;text-shadow:0 0 12px rgba(241,196,15,.5);z-index:50;pointer-events:none;opacity:0;transition:opacity .3s;letter-spacing:2px;font-weight:700}#combo-indicator.active{opacity:1;animation:cb .6s ease-in-out infinite alternate}@keyframes cb{0%{transform:translate(-50%) scale(1)}to{transform:translate(-50%) scale(1.08)}}#touch-controls{position:absolute;bottom:clamp(4px,2vw,12px);left:0;width:100%;display:flex;justify-content:center;align-items:center;gap:clamp(8px,2.5vw,16px);z-index:60;pointer-events:none;opacity:0;transition:opacity .3s;padding-bottom:max(clamp(4px,2vw,12px),var(--sai-bottom))}#touch-controls.active{opacity:1;pointer-events:auto}.touch-btn{width:clamp(48px,13vw,64px);height:clamp(48px,13vw,64px);border-radius:50%;border:2px solid rgba(255,255,255,.12);background:#00000073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff9;font-size:clamp(1rem,3vw,1.4rem);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;-webkit-user-select:none;user-select:none;box-shadow:0 4px 15px #0000004d}.touch-btn:active{background:#e8a02059;border-color:var(--accent);color:#fff;transform:scale(.9)}.boost-touch{width:clamp(42px,11vw,54px);height:clamp(42px,11vw,54px);font-size:clamp(.85rem,2.5vw,1.1rem);border-color:#e8a02033;color:#e8a02080}.boost-touch:active{background:#e8a02080;color:#fff}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;z-index:100;opacity:0;pointer-events:none;transition:opacity .4s}.overlay.active{opacity:1;pointer-events:auto}.menu-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 25%,#140f23f7,#06060ffc);z-index:0}.overlay-card{text-align:center;padding:clamp(16px,4vw,28px) clamp(14px,3.5vw,24px);border-radius:clamp(10px,2.5vw,18px);background:var(--card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);box-shadow:0 20px 50px #000c,0 0 80px #e8a0200d;max-width:clamp(260px,80vw,360px);width:88%;z-index:1;animation:cardIn .35s cubic-bezier(.4,0,.2,1)}@keyframes cardIn{0%{transform:scale(.92) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.menu-panel{text-align:center;max-width:clamp(280px,85vw,380px);width:90%;z-index:1;position:relative}.logo{font-family:var(--font-d);font-size:var(--fs-logo);font-weight:900;color:#fff;letter-spacing:2px;line-height:1}.logo-accent{display:block;font-size:var(--fs-logo-accent);color:var(--accent);text-shadow:0 3px 0 #b07010,0 0 30px var(--glow),0 0 60px rgba(232,160,32,.15);margin-top:-2px;animation:logoGlow 3s ease-in-out infinite alternate}@keyframes logoGlow{0%{text-shadow:0 3px 0 #b07010,0 0 20px var(--glow)}to{text-shadow:0 3px 0 #b07010,0 0 40px var(--glow),0 0 80px rgba(232,160,32,.1)}}.tagline{font-family:var(--font-d);font-size:var(--fs-hint);color:var(--dim);letter-spacing:clamp(3px,1vw,6px);margin:clamp(2px,.8vw,6px) 0 clamp(10px,3vw,20px)}.input-group{margin-bottom:clamp(10px,3vw,18px)}#name-input{width:clamp(150px,50vw,220px);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:clamp(6px,1.5vw,10px);padding:clamp(6px,1.5vw,10px) clamp(10px,2.5vw,16px);color:#fff;font-family:var(--font-d);font-size:clamp(.65rem,2vw,.9rem);text-align:center;outline:none;transition:border-color .3s,box-shadow .3s}#name-input:focus{border-color:var(--accent);box-shadow:0 0 12px var(--glow)}#name-input::placeholder{color:#ffffff26}.car-select-section{margin-bottom:clamp(10px,3vw,18px)}.car-select-header{display:flex;align-items:center;justify-content:center;gap:clamp(8px,2vw,14px);margin-bottom:clamp(6px,1.5vw,10px)}.car-select-label{font-family:var(--font-d);font-size:var(--fs-hint);color:var(--dim);letter-spacing:clamp(2px,.6vw,4px)}.car-arrow{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#fff;width:clamp(26px,7vw,36px);height:clamp(26px,7vw,36px);border-radius:50%;font-size:clamp(.9rem,2.5vw,1.3rem);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.car-arrow:hover,.car-arrow:active{background:var(--accent);border-color:var(--accent);transform:scale(.92)}.car-slider-track{position:relative;width:100%;height:clamp(90px,25vw,140px);overflow:hidden;display:flex;align-items:center;justify-content:center}.car-slide{position:absolute;transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer;display:flex;align-items:center;justify-content:center}.car-slide canvas{border-radius:clamp(8px,2vw,12px);transition:all .4s cubic-bezier(.4,0,.2,1)}.car-slide.active canvas{box-shadow:0 0 24px var(--glow),0 0 50px #e8a0201a;border:2px solid rgba(232,160,32,.5)}.car-slide.active{z-index:5}.car-slide.prev,.car-slide.next{z-index:3;opacity:.4;filter:brightness(.4)}.car-slide.far{z-index:1;opacity:0;pointer-events:none}.car-info{display:flex;justify-content:center;align-items:baseline;gap:clamp(6px,1.5vw,10px);margin-top:clamp(4px,1vw,8px)}.car-info-name{font-family:var(--font-d);font-size:clamp(.5rem,1.6vw,.75rem);color:var(--accent);letter-spacing:1px;font-weight:700}.car-info-idx{font-family:var(--font-d);font-size:var(--fs-hint);color:var(--dim)}.car-dots{display:flex;justify-content:center;gap:clamp(3px,.8vw,5px);margin-top:clamp(4px,1vw,8px);flex-wrap:wrap;max-width:80%}.car-dot{width:clamp(4px,1.2vw,6px);height:clamp(4px,1.2vw,6px);border-radius:50%;background:#ffffff1a;transition:all .3s;cursor:pointer}.car-dot.active{background:var(--accent);width:clamp(12px,4vw,20px);border-radius:3px}.car-stats{display:flex;justify-content:center;gap:clamp(6px,2vw,12px);margin-top:clamp(4px,1vw,8px)}.car-stat-bar{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:clamp(40px,12vw,60px)}.car-stat-label{font-family:var(--font-d);font-size:clamp(.25rem,.8vw,.35rem);color:var(--dim);letter-spacing:1px}.car-stat-track{width:100%;height:3px;background:#ffffff0f;border-radius:2px;overflow:hidden}.car-stat-fill{height:100%;border-radius:2px;transition:width .4s ease}.car-stat-fill.speed-fill{background:linear-gradient(90deg,#00cec9,#00b894)}.car-stat-fill.power-fill{background:linear-gradient(90deg,#e8a020,#d63031)}.car-stat-fill.grip-fill{background:linear-gradient(90deg,#6c5ce7,#a29bfe)}.btn-play{background:linear-gradient(135deg,#d4901a,#b87014);border:none;border-radius:50px;padding:clamp(10px,2.5vw,14px) clamp(28px,8vw,44px);color:#fff;font-family:var(--font-d);font-size:var(--fs-btn);font-weight:700;letter-spacing:clamp(2px,.6vw,4px);cursor:pointer;box-shadow:0 3px #8a5510,0 8px 20px #00000080,0 0 30px #e8a0201a;transition:transform .1s,box-shadow .1s;display:inline-flex;align-items:center;gap:clamp(4px,1vw,8px);position:relative;overflow:hidden}.btn-play:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);animation:btnShine 3s ease-in-out infinite}@keyframes btnShine{0%,to{transform:translate(-100%)}50%{transform:translate(100%)}}.btn-play:active{transform:translateY(3px);box-shadow:0 0 #8a5510,0 3px 8px #00000080}.btn-ghost{background:none;border:1px solid rgba(255,255,255,.1);border-radius:50px;padding:clamp(6px,1.5vw,10px) clamp(18px,5vw,28px);color:#fff6;font-family:var(--font-d);font-size:clamp(.45rem,1.4vw,.6rem);letter-spacing:2px;cursor:pointer;margin-top:clamp(6px,1.5vw,10px);display:block;margin-left:auto;margin-right:auto;transition:all .2s}.btn-ghost:hover,.btn-ghost:active{border-color:#ffffff4d;color:#fff;transform:scale(.97)}.hint{margin-top:clamp(6px,2vw,12px);font-size:var(--fs-hint);color:#ffffff1f}.btn-download{display:inline-flex;align-items:center;gap:clamp(4px,1vw,8px);margin-top:clamp(6px,2vw,12px);padding:clamp(6px,1.5vw,10px) clamp(14px,4vw,24px);border-radius:50px;background:#2ecc7114;border:1px solid rgba(46,204,113,.25);color:#2ecc71d9;font-family:var(--font-d);font-size:clamp(.4rem,1.3vw,.55rem);letter-spacing:1.5px;text-decoration:none;transition:all .25s;cursor:pointer}.btn-download:hover,.btn-download:active{background:#2ecc7126;border-color:#2ecc7166;color:#2ecc71;box-shadow:0 0 15px #2ecc7126}.btn-download svg{flex-shrink:0;width:clamp(14px,3.5vw,18px);height:clamp(14px,3.5vw,18px)}.btn-download.hidden{display:none}.overlay-title{font-family:var(--font-d);font-size:var(--fs-overlay-title);font-weight:900;letter-spacing:clamp(3px,.8vw,5px);margin-bottom:clamp(12px,3vw,20px)}.crash-title{font-family:var(--font-d);font-size:var(--fs-crash);font-weight:900;color:var(--red);text-shadow:0 3px 0 #952020,0 0 25px rgba(214,48,49,.3),0 0 50px rgba(214,48,49,.1);margin-bottom:4px;animation:cp .8s ease-in-out infinite alternate}@keyframes cp{0%{transform:scale(1)}to{transform:scale(1.03)}}.go-name{font-family:var(--font-d);font-size:clamp(.4rem,1.3vw,.55rem);color:var(--dim);margin-bottom:clamp(6px,2vw,12px);letter-spacing:2px}.new-record{font-family:var(--font-d);font-size:clamp(.6rem,2vw,.85rem);color:#f1c40f;text-shadow:0 0 10px rgba(241,196,15,.4);margin-bottom:clamp(4px,1vw,8px);animation:gp 1s ease-in-out infinite alternate}@keyframes gp{0%{opacity:.7;transform:scale(.98)}to{opacity:1;transform:scale(1.02)}}.go-stats{display:flex;gap:clamp(4px,1vw,8px);justify-content:center;margin-bottom:clamp(10px,3vw,18px);flex-wrap:wrap}.go-stat{background:#ffffff08;border:1px solid var(--border);border-radius:clamp(6px,1.5vw,10px);padding:clamp(4px,1vw,8px) clamp(6px,2vw,12px);min-width:clamp(40px,12vw,60px);transition:transform .2s}.go-stat:hover{transform:translateY(-2px)}.go-stat.best{border-color:#e8a02033}.go-sl{font-family:var(--font-d);font-size:var(--fs-stat-label);color:var(--dim);letter-spacing:1.5px}.go-sv{font-family:var(--font-d);font-size:var(--fs-stat-val);font-weight:700;color:#fff}.go-stat.best .go-sv{color:var(--accent)}#loading-screen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(ellipse at 50% 40%,#140f23,#06060f);transition:opacity .5s}#loading-screen.hidden{opacity:0;pointer-events:none}.loading-logo{font-family:var(--font-d);font-size:clamp(1.5rem,5vw,2.5rem);font-weight:900;color:var(--accent);letter-spacing:3px;margin-bottom:clamp(16px,4vw,28px);text-shadow:0 0 30px var(--glow)}.loading-bar-outer{width:clamp(120px,40vw,200px);height:4px;background:#ffffff0f;border-radius:4px;overflow:hidden}.loading-bar-inner{height:100%;width:0%;border-radius:4px;background:linear-gradient(90deg,var(--accent),var(--red),var(--accent));background-size:200% 100%;animation:shimmer 1.5s linear infinite;transition:width .3s}.loading-text{font-family:var(--font-d);font-size:clamp(.3rem,1vw,.45rem);color:var(--dim);margin-top:clamp(8px,2vw,14px);letter-spacing:2px}.difficulty-row{display:flex;justify-content:center;gap:clamp(4px,1vw,8px);margin-bottom:clamp(10px,2.5vw,16px)}.diff-btn{font-family:var(--font-d);font-size:clamp(.35rem,1vw,.5rem);padding:clamp(4px,1vw,6px) clamp(10px,3vw,16px);border-radius:50px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:var(--dim);cursor:pointer;letter-spacing:1px;transition:all .2s}.diff-btn.active{border-color:var(--accent);background:#e8a0201a;color:var(--accent);box-shadow:0 0 12px #e8a0201a}.diff-btn:hover{border-color:#fff3;color:#fff9}@media (orientation:landscape) and (max-height:500px){#game-wrapper{max-width:100%;max-height:100%;border-radius:0}.menu-panel,.overlay-card{max-width:clamp(280px,50vw,400px)}.car-slider-track{height:clamp(70px,15vh,100px)}#touch-controls{bottom:2px;gap:8px}.touch-btn{width:clamp(38px,8vh,52px);height:clamp(38px,8vh,52px)}.boost-touch{width:clamp(34px,7vh,46px);height:clamp(34px,7vh,46px)}.logo{font-size:clamp(1rem,3vh,1.6rem)}.logo-accent{font-size:clamp(1.4rem,4.5vh,2rem)}.tagline{margin:2px 0 8px}.go-stats{gap:4px}.go-stat{padding:3px 6px}}@media (max-width:360px){.menu-panel{width:95%}#name-input{width:140px}.car-slider-track{height:80px}.car-dots{max-width:90%}}@media (min-width:768px) and (orientation:portrait){#game-wrapper{max-width:500px}.overlay-card{max-width:380px}.menu-panel{max-width:360px}}@supports (padding-top: env(safe-area-inset-top)){#hud{padding-top:max(clamp(4px,1.5vw,10px),env(safe-area-inset-top))}#touch-controls{padding-bottom:max(clamp(4px,2vw,12px),env(safe-area-inset-bottom))}.menu-panel{padding-top:env(safe-area-inset-top)}}::-webkit-scrollbar{display:none}*{scrollbar-width:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
