:root{--bg:#0b0d10;--panel:#12161c;--panel2:#191f27;--line:#303944;--text:#f4f6f8;--muted:#9ba6b2;--orange:#ff6a00;--amber:#ffb000;--cyan:#47e4ff;--danger:#ff3d3d;--radius:22px}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden}body{font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}button{font:inherit;color:inherit;background:#1b222b;border:1px solid #36414e;border-radius:12px;padding:.8rem 1rem;cursor:pointer;font-weight:800;letter-spacing:.04em}button:hover{border-color:#647282}button:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}.primary{background:linear-gradient(135deg,var(--orange),#ff3d00);border:0;box-shadow:0 10px 30px #ff5a0033}.screen{display:none;width:100%;height:100%}.screen.active{display:flex}#launcher{background:radial-gradient(circle at 20% 20%,#232b35 0,#0b0d10 55%);padding:clamp(16px,3vw,42px);gap:24px}.launchPanel{width:min(42%,520px);min-width:340px;display:flex;flex-direction:column;justify-content:center;padding:clamp(20px,4vw,52px);border:1px solid #29323c;background:#10141acc;border-radius:28px;box-shadow:0 30px 80px #0009;z-index:2}.forgeLogo{width:132px;height:auto;margin-bottom:28px}.eyebrow{font-size:.72rem;letter-spacing:.26em;color:var(--orange);font-weight:900}.launchPanel h1{font-size:clamp(3rem,6vw,6.4rem);line-height:.8;margin:12px 0 22px;letter-spacing:-.065em}.launchPanel h1 span{color:var(--orange)}#tagline{color:var(--muted);font-size:1.05rem;line-height:1.55;max-width:420px}.launchActions,.settingsRow{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.launchActions .primary{flex:1}.iconBtn{width:48px}.chip{font-size:.72rem;padding:.65rem .75rem}.passive{color:#7f8b96}.version{margin-top:28px;color:#687480;font-size:.7rem;letter-spacing:.12em}.heroScene{flex:1;position:relative;overflow:hidden;border-radius:28px;border:1px solid #29323c;background:linear-gradient(#171b26 0 43%,#ff6a00 44%,#4a2a1d 48%,#111 49%)}.sun{position:absolute;width:260px;height:260px;border-radius:50%;background:#ffb44d;left:50%;top:16%;transform:translateX(-50%);box-shadow:0 0 90px #ff7a0066}.city{position:absolute;left:0;right:0;top:34%;height:18%;background:repeating-linear-gradient(90deg,#0c1016 0 38px,transparent 38px 45px),linear-gradient(0deg,#0c1016 0 70%,transparent 70%);clip-path:polygon(0 55%,7% 40%,13% 65%,20% 28%,28% 58%,36% 15%,43% 54%,50% 33%,57% 60%,64% 22%,73% 50%,82% 18%,91% 60%,100% 34%,100% 100%,0 100%)}.heroRoad{position:absolute;left:8%;right:8%;bottom:-5%;height:58%;background:#17191d;clip-path:polygon(35% 0,65% 0,100% 100%,0 100%);border-top:4px solid #fff}.heroRoad i{position:absolute;top:5%;bottom:0;width:5px;background:repeating-linear-gradient(#eee 0 38px,transparent 38px 78px);transform-origin:top}.heroRoad i:nth-child(1){left:42%;transform:rotate(4deg)}.heroRoad i:nth-child(2){left:50%}.heroRoad i:nth-child(3){left:58%;transform:rotate(-4deg)}.heroCar{position:absolute;left:50%;bottom:8%;width:150px;height:260px;transform:translateX(-50%) perspective(400px) rotateX(-8deg);background:linear-gradient(90deg,#a22 0 10%,#ef3b23 12% 88%,#8b1a12 90%);border-radius:42% 42% 20% 20%;box-shadow:0 22px 45px #000,0 0 50px #ff5a0033}.heroCar:before{content:"";position:absolute;left:22%;right:22%;top:18%;height:28%;background:#0d1820;border:5px solid #202b34;border-radius:40% 40% 12% 12%}.heroCar:after{content:"";position:absolute;left:16%;right:16%;bottom:12%;height:9%;background:#151515;border-radius:8px;box-shadow:0 -90px 0 #1a2025}.heroCar b{position:absolute;bottom:14%;width:24px;height:12px;background:#ffb000;box-shadow:0 0 24px #ff7a00}.heroCar b:first-child{left:15%}.heroCar b:last-child{right:15%}.heroTitle{position:absolute;right:5%;top:6%;font-size:clamp(1.5rem,3vw,3.2rem);font-weight:1000;line-height:.9;text-align:right;letter-spacing:-.04em}.heroTitle span{color:var(--orange)}#loading{align-items:center;justify-content:center;flex-direction:column;background:#080a0d;gap:22px}#loading img{width:min(360px,70vw);height:auto}.loader{width:min(320px,70vw);height:4px;background:#252c34;overflow:hidden}.loader i{display:block;width:35%;height:100%;background:var(--orange);animation:load 1s ease-in-out infinite}@keyframes load{from{transform:translateX(-100%)}to{transform:translateX(380%)}}#loadingText{color:#a8b1ba;letter-spacing:.08em}.gameTop{position:absolute;z-index:4;top:0;left:0;right:0;height:54px;background:#0d1116dd;border-bottom:1px solid #29323c;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.brandMini{display:flex;align-items:center;gap:9px;font-size:.75rem;font-weight:900;letter-spacing:.12em}.brandMini img{width:28px;height:28px}.topActions{display:flex;gap:6px}.topActions button{padding:.35rem .65rem}.gameShell{width:100%;height:100%;padding-top:54px;display:grid;grid-template-columns:190px 1fr 190px;background:#080a0d}.hud,.meters{padding:22px 16px;background:#0f1318;border-color:#29323c}.hud{border-right:1px solid #29323c}.hud div{padding:14px 0;border-bottom:1px solid #252c34}.hud small,.meters span{display:block;color:#77838f;font-size:.62rem;letter-spacing:.16em;font-weight:800}.hud strong{font-size:1.5rem}.hud div:nth-child(3) strong{color:var(--amber)}.hud div:nth-child(4) strong{color:var(--danger);letter-spacing:.12em}.canvasWrap{position:relative;min-width:0;background:#050607;display:flex;justify-content:center;overflow:hidden}canvas{height:100%;max-width:100%;aspect-ratio:3/4;object-fit:contain;background:#1b1d20}.meters{border-left:1px solid #29323c}.meters>div{margin-bottom:28px}.meters b{font-size:2.8rem;color:var(--cyan)}.meters small{color:#77838f}.bar{height:12px;margin-top:10px;background:#252c34;border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--orange),var(--amber));transition:width .12s}.mobileControls{display:none}#countdown{position:absolute;inset:0;display:grid;place-items:center;font-size:9rem;font-weight:1000;text-shadow:0 8px 30px #000;pointer-events:none}#toast{position:absolute;top:16%;left:50%;transform:translateX(-50%);font-size:1.2rem;font-weight:1000;color:var(--amber);text-shadow:0 2px 12px #000;opacity:0;transition:.2s}.modal,.overlay{display:none;position:fixed;z-index:20;inset:0;background:#05070ad9;align-items:center;justify-content:center;padding:18px}.modal.show,.overlay.show{display:flex}.modalCard,.overlay>div{width:min(520px,95vw);background:#12171d;border:1px solid #34404c;border-radius:22px;padding:30px;box-shadow:0 30px 100px #000;text-align:left}.overlay>div{text-align:center}.modalCard h2,.overlay h2{font-size:2rem;margin:10px 0 18px}.modalCard p,.modalCard li{color:#b3bdc7;line-height:1.55}.close{float:right;padding:.3rem .65rem}.overlay button{display:block;width:100%;margin-top:10px}@media(max-width:760px){#launcher{padding:0;display:none}.screen.active#launcher{display:block;overflow:auto}.launchPanel{width:100%;min-width:0;min-height:56%;border:0;border-radius:0;padding:24px}.forgeLogo{width:100px;margin-bottom:14px}.launchPanel h1{font-size:3.4rem}.heroScene{height:44%;border-radius:0;border-left:0;border-right:0}.heroTitle{font-size:1.7rem}.heroCar{width:90px;height:160px}.settingsRow{margin-top:14px}.gameShell{grid-template-columns:1fr;padding-bottom:78px}.hud{position:absolute;z-index:3;top:54px;left:0;right:0;height:62px;display:grid;grid-template-columns:repeat(4,1fr);padding:6px 8px;background:#0d1116dd;border:0}.hud div{padding:3px 6px;border:0}.hud small{font-size:.5rem}.hud strong{font-size:.92rem}.meters{position:absolute;z-index:3;left:0;right:0;bottom:78px;height:58px;display:grid;grid-template-columns:1fr 1fr;padding:6px 12px;background:#0d1116dd;border:0}.meters>div{margin:0}.meters b{font-size:1.4rem}.canvasWrap{padding-top:62px;padding-bottom:58px}.mobileControls{position:absolute;z-index:5;display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:8px;bottom:0;left:0;right:0;height:78px;padding:8px;background:#0b0e12}.mobileControls button{font-size:1.1rem}.mobileControls #nitroBtn{background:#6f2c00;border-color:var(--orange)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Approved Highway Madness launch artwork */
.artworkHero{background-image:linear-gradient(90deg,rgba(5,7,10,.12),rgba(5,7,10,0)),url("assets/artwork/highway_madness_featured.png");background-size:cover;background-position:center center}
#loading{position:relative;align-items:center;justify-content:flex-start;flex-direction:row;background:#080a0d url("assets/artwork/highway_madness_featured.png") center center/cover no-repeat;padding:clamp(18px,5vw,76px)}
#loading .loadingShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,8,12,.88) 0%,rgba(5,8,12,.72) 30%,rgba(5,8,12,.12) 58%,rgba(5,8,12,.02) 100%)}
.loadingModal{position:relative;z-index:2;width:min(440px,42vw);padding:clamp(22px,3vw,38px);border:1px solid #36414e;background:rgba(10,14,19,.88);backdrop-filter:blur(12px);border-radius:24px;box-shadow:0 28px 80px #000b}
#loading .loadingModal img{width:128px;max-width:42%;margin:0 0 24px}
.loadingTitle{font-size:clamp(2rem,4vw,4rem);font-weight:1000;line-height:.85;letter-spacing:-.055em;margin-bottom:22px}.loadingTitle span{color:var(--orange)}
#loading .loader{width:100%;margin-top:16px}.loadingBuild{margin-top:16px;color:#687480;font-size:.68rem;letter-spacing:.12em}
@media(max-width:760px){#loading{align-items:flex-end;padding:16px;background-position:68% center}.loadingModal{width:100%;padding:20px;background:rgba(10,14,19,.9)}#loading .loadingShade{background:linear-gradient(0deg,rgba(5,8,12,.9) 0%,rgba(5,8,12,.18) 65%)}}

/* Last Wall quality foundation */
#splash{position:relative;align-items:center;justify-content:center;flex-direction:column;background:#05070a;isolation:isolate}.splashBackdrop{position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 50% 55%,#46210d 0,#111820 24%,#05070a 62%)}.splashLogo{width:min(290px,48vw);filter:drop-shadow(0 20px 45px #000) drop-shadow(0 0 28px #ff6a0038);animation:splashIn .8s cubic-bezier(.2,.8,.2,1) both}#splash p{margin:20px 0 0;color:#77828d;font-size:.65rem;font-weight:900;letter-spacing:.34em}.splashSignal{width:min(250px,54vw);height:2px;margin-top:22px;background:#252b32;overflow:hidden}.splashSignal i{display:block;width:38%;height:100%;background:linear-gradient(90deg,transparent,var(--orange),#ffd08a,transparent);animation:signal 1.1s ease-in-out infinite}@keyframes splashIn{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes signal{from{transform:translateX(-120%)}to{transform:translateX(360%)}}
#loading .loader{height:5px}#loading .loader i{width:0;transform:none;animation:none;background:linear-gradient(90deg,#b83d00,var(--orange),#ffd08a);box-shadow:0 0 18px #ff6a0088;transition:width .22s ease}.loadingStatus{display:flex;justify-content:space-between;margin-top:8px;color:#7f8b96;font-size:.62rem;font-weight:900;letter-spacing:.12em}
.speedVeil{position:absolute;inset:0;pointer-events:none;opacity:0;background:repeating-linear-gradient(174deg,transparent 0 32px,rgba(120,220,255,.16) 33px 34px,transparent 35px 68px);mix-blend-mode:screen;transition:opacity .2s}.canvasWrap.boosting .speedVeil{opacity:.55;animation:speedLines .18s linear infinite}@keyframes speedLines{to{background-position:0 68px}}#zoneBanner{position:absolute;top:8%;left:50%;transform:translate(-50%,-18px);padding:8px 18px;text-align:center;background:rgba(8,12,16,.8);border:1px solid #ff6a0066;border-top:2px solid var(--orange);opacity:0;transition:.35s;pointer-events:none}#zoneBanner.show{opacity:1;transform:translate(-50%,0)}#zoneBanner small,#zoneBanner strong{display:block}#zoneBanner small{color:#87929e;font-size:.55rem;letter-spacing:.2em}#zoneBanner strong{font-size:1rem;letter-spacing:.08em}
@media(max-width:760px){.mobileControls{grid-template-columns:1fr 1fr 1.15fr 1fr 1fr;gap:5px}.mobileControls button{font-size:.72rem;padding:.45rem}.mobileControls #leftBtn,.mobileControls #rightBtn{font-size:1.1rem}.mobileControls #gasBtn{border-color:#35764d}.mobileControls #brakeBtn{border-color:#7d3b35}}

/* BUILD 0009 · single integrated Forge launch sequence */
.launchLoader{padding:15px 18px;background:rgba(6,9,13,.86);border:1px solid #485462;border-left:4px solid var(--orange);backdrop-filter:blur(12px);transition:border-color .3s,box-shadow .3s,opacity .45s,transform .45s}.heroLoader{position:absolute;z-index:3;left:clamp(18px,3vw,48px);right:clamp(18px,3vw,48px);bottom:clamp(18px,4vw,54px);box-shadow:0 18px 50px #000c}.launchLoader .loader{width:100%;height:6px}.launchLoader .loader i{display:block;width:0;height:100%;animation:none;transform:none;background:linear-gradient(90deg,#b83d00,var(--orange),#ffd08a);box-shadow:0 0 18px #ff6a0088;transition:width .22s ease}.launchLoader.ready{border-color:#4ca36b;box-shadow:0 18px 50px #000c,inset 0 0 24px rgba(80,190,120,.08)}.launchLoader.ready .loader i{background:linear-gradient(90deg,#317b4a,#70df93)}.launchLoader.loaded{opacity:0;transform:translateY(12px);pointer-events:none}#startBtn:disabled{cursor:wait;filter:saturate(.25);opacity:.48;box-shadow:none}
.canvasWrap.boosting canvas{filter:saturate(1.16) contrast(1.08)}.canvasWrap.boosting:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 70px rgba(71,228,255,.24),inset 0 -80px 90px rgba(255,106,0,.12);animation:nitroPulse .22s ease-in-out infinite alternate}@keyframes nitroPulse{to{opacity:.58}}
.resultOverlay{overflow:hidden;background-position:center;background-size:cover}.resultOverlay.show{background-image:linear-gradient(90deg,rgba(2,4,7,.92),rgba(2,4,7,.53) 48%,rgba(2,4,7,.3)),url("assets/artwork/game-over-crash-v1.png");animation:resultBackdrop .55s ease both}.resultOverlay:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 70%,transparent 0 18%,rgba(2,4,7,.3) 55%,rgba(2,4,7,.78));animation:resultPulse 2.4s ease-in-out infinite alternate}.resultCard{position:relative;overflow:hidden;text-align:center!important;border-top:3px solid var(--orange)!important;background:linear-gradient(145deg,rgba(22,28,35,.96),rgba(6,9,13,.94))!important;backdrop-filter:blur(14px);animation:resultCardIn .55s cubic-bezier(.16,.82,.24,1.12) both}.resultGlow{position:absolute;width:340px;height:340px;left:50%;top:-220px;transform:translateX(-50%);border-radius:50%;background:#ff6a00;filter:blur(70px);opacity:.28;pointer-events:none}.resultRank{position:relative;display:grid;place-items:center;width:92px;height:92px;margin:4px auto 14px;border:2px solid #ff9c4a;border-radius:50%;background:radial-gradient(circle,#612806,#160c07 68%);color:#ffb267;font-size:3.8rem;font-weight:1000;line-height:1;box-shadow:0 0 35px rgba(255,106,0,.28),inset 0 0 18px #000}.resultCard h2{font-size:clamp(2.25rem,6vw,4.2rem);margin:4px 0 8px;letter-spacing:-.055em}.resultCard #resultVerdict{min-height:1.6em;margin:0 auto 18px;color:#b9c4cf}.resultGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.resultGrid div{padding:12px;background:#080c10;border:1px solid #2b3540;text-align:left}.resultGrid small,.resultGrid strong{display:block}.resultGrid small{color:#77838f;font-size:.58rem;font-weight:900;letter-spacing:.12em}.resultGrid strong{margin-top:4px;font-size:1.25rem}.recordBadge{display:none;margin:-8px auto 14px;width:max-content;padding:6px 12px;color:#171007;background:#ffb137;font-size:.66rem;font-weight:1000;letter-spacing:.14em;transform:rotate(-2deg);box-shadow:0 6px 22px rgba(255,140,0,.25)}.recordBadge.show{display:block;animation:recordPop .45s .4s cubic-bezier(.16,.9,.2,1.35) both}@keyframes resultBackdrop{from{opacity:0;filter:brightness(.25)}to{opacity:1;filter:brightness(1)}}@keyframes resultPulse{from{opacity:.72}to{opacity:1}}@keyframes resultCardIn{from{opacity:0;transform:translateY(45px) scale(.92)}to{opacity:1;transform:none}}@keyframes recordPop{from{opacity:0;transform:scale(.4) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(-2deg)}}
@media(max-width:760px){.heroLoader{left:14px;right:14px;bottom:14px;padding:10px 12px}.resultOverlay.show{background-position:68% center}.resultCard{max-height:92vh;overflow:auto}.resultRank{width:74px;height:74px;font-size:3rem}.resultGrid{margin:12px 0}.resultGrid div{padding:9px}}
