:root{--cream:#f3eee3;--muted:#a5b2b6;--orange:#f07546;--cyan:#76d7d7;--ink:#101b20;--line:rgba(231,239,235,.18);font-family:Arial,Helvetica,sans-serif;color:var(--cream);background:#101b20;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,select,input{font:inherit}button{color:inherit;cursor:pointer}button:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}button{border:0}button:disabled{cursor:not-allowed;opacity:.35}button:hover{filter:brightness(1.12)}[hidden]{display:none!important}#game{width:100vw;height:100dvh;display:block;touch-action:none}#vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(6,19,25,.82),transparent 66%),linear-gradient(0deg,rgba(6,19,25,.78),transparent 28%);transition:opacity .5s}#flash{position:fixed;inset:0;pointer-events:none;z-index:3;box-shadow:inset 0 0 100px transparent;transition:box-shadow .15s}#header{position:fixed;top:0;left:0;width:100%;height:96px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);z-index:5;background:linear-gradient(#0b182552,transparent)}.wordmark{background:none;font-size:23px;font-weight:900;letter-spacing:-1px;display:flex;align-items:center;gap:10px}.wordmark b{color:var(--orange);font-size:36px;font-style:italic}.wordmark span{font-size:9px;letter-spacing:2px;border-left:1px solid var(--line);padding-left:15px;margin-left:7px}nav{display:flex;gap:35px;height:100%;align-items:center}.nav-btn{background:none;color:#b6c2c4;font-size:10px;letter-spacing:2px;position:relative;height:100%}.nav-btn.active{color:var(--cream)}.nav-btn.active:after{content:'';position:absolute;height:2px;background:var(--orange);bottom:0;left:0;right:0}.driver{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:1.4px}.driver b{margin-left:12px;color:var(--orange)}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px #7adddd66}.icon-btn{background:none;font-size:21px;padding:12px}.view{position:fixed;inset:96px 0 70px}.hero-copy{position:absolute;left:6%;top:12%;z-index:1}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:600;line-height:1.6}.little-line{display:inline-block;width:25px;height:1px;background:var(--orange);vertical-align:middle;margin-right:12px}.hero-copy h1{font-size:clamp(74px,7.5vw,136px);letter-spacing:-8px;line-height:.83;margin:33px 0 24px;font-weight:900;font-stretch:condensed;font-style:italic;position:relative}.hero-copy h1 em{font-style:inherit;color:var(--cream);letter-spacing:-7px}.title-dot{color:var(--orange)}.tagline{font-size:20px;letter-spacing:-.4px}.hero-description{font-size:12px;line-height:1.85;color:#acbcc1;margin:22px 0 29px}.primary{background:var(--orange);color:#102027;padding:20px 24px;min-width:245px;font-weight:800;font-size:11px;letter-spacing:1.8px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;clip-path:polygon(0 0,100% 0,100% 77%,95% 100%,0 100%);transition:background .2s,transform .2s}.primary:hover{background:#ff9569;transform:translateY(-2px)}.primary span{font-size:23px;font-weight:400;line-height:15px}.hero-meta{display:flex;gap:20px;font-size:8px;letter-spacing:1.5px;color:#91a4ad;margin-top:18px}.chapter-panel{position:absolute;right:4%;top:13%;width:287px;padding:24px;background:linear-gradient(150deg,#142b36d6,#0c1c27c4);backdrop-filter:blur(16px);border:1px solid var(--line)}.panel-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px}.accent{color:var(--orange);font-size:7px}.chapter-panel h2{font-size:26px;line-height:1.1;letter-spacing:-.7px;margin:25px 0 13px}.chapter-panel>p{font-size:11px;line-height:1.8;color:#9bb0b8;margin-bottom:25px}.mission{width:100%;text-align:left;display:flex;gap:13px;padding:15px 0;background:none;border-top:1px solid var(--line);align-items:center}.mission-index{font-size:12px;color:var(--muted);width:20px}.mission span:nth-child(2){flex:1}.mission small{display:block;font-size:7px;letter-spacing:1.6px;color:#829da9;margin-bottom:6px}.mission strong{font-size:11px;font-weight:500}.mission .arrow{color:var(--orange)}.mission.current .mission-index{color:var(--orange)}.chapter-bottom{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.2px;color:#93a7ae;padding-top:18px;border-top:1px solid var(--line)}.car-caption{position:absolute;bottom:5%;left:48%;display:flex;flex-direction:column;gap:8px;pointer-events:none}.car-caption span{font-size:8px;letter-spacing:2px;color:#abc0c7}.car-caption strong{font-size:25px;letter-spacing:-.5px;font-weight:500}#footer{position:fixed;bottom:0;left:0;right:0;height:70px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:8px;letter-spacing:1.5px;color:#9db0b7;background:#10212b44}#footer i{margin-right:9px}#footer button{background:none;font-size:8px;letter-spacing:1.5px}#footer b{margin-left:10px;border:1px solid var(--line);padding:5px}.page-copy{position:absolute;left:6%;top:10%;max-width:450px}.page-copy h1,.settings-card h1{font-size:52px;letter-spacing:-2px;line-height:1.05;margin:20px 0}.page-copy>p{color:var(--muted);font-size:13px}.car-options{display:grid;gap:12px;margin:30px 0}.car-option{background:#142a34b5;text-align:left;padding:18px;border:1px solid var(--line);display:flex;flex-direction:column;gap:8px;min-width:340px}.car-option.selected{border-color:var(--orange);background:#213039dc}.car-option>span{font-size:9px;letter-spacing:2px;color:var(--orange)}.car-option strong{font-size:20px}.car-option small{color:var(--muted);font-size:10px}.specs{display:flex;gap:30px}.specs div{display:flex;flex-direction:column;gap:10px}.specs span{font-size:8px;letter-spacing:1px;color:var(--muted)}.specs b{font-size:25px}.specs small{font-size:8px}.settings-card{margin:35px auto;padding:28px 40px;width:min(620px,95%);max-height:calc(100dvh - 200px);overflow:auto;background:#102430eb;border:1px solid var(--line);backdrop-filter:blur(20px)}.settings-card h1{font-size:32px;margin-bottom:25px}.settings-card label:not(.import-label){display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:14px 0;font-size:12px}select{background:#1c3540;color:var(--cream);border:1px solid var(--line);padding:10px;font-size:11px;max-width:60%}input[type=checkbox]{accent-color:var(--orange);width:18px;height:18px}.settings-actions{display:flex;gap:12px;margin-top:20px}.secondary{background:transparent;border:1px solid var(--line);padding:16px;font-size:9px;letter-spacing:1px}.muted{color:var(--muted);font-size:11px;line-height:1.8}.text-btn{background:none;font-size:11px;color:#a9bdc4;padding:14px 0;display:inline-block;margin-right:18px}.import-label{cursor:pointer}details{border-top:1px solid var(--line);font-size:11px;margin-top:10px;padding-top:16px}details p{line-height:1.8;color:var(--muted)}.overlay{position:fixed;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;background:#07141ba8;backdrop-filter:blur(9px);padding:24px}.brief-card{max-width:720px;width:100%;padding:42px;background:linear-gradient(135deg,#19313cf2,#101e28ed);border:1px solid var(--line)}.brief-card h1,.result-card h1{font-size:clamp(30px,4vw,58px);line-height:1.05;letter-spacing:-2px;margin:15px 0 25px}.brief-rule{height:2px;width:70px;background:var(--orange);margin-bottom:25px}.dialogue{display:flex;gap:20px;min-height:120px}.dialogue .eyebrow{color:var(--orange);margin:0 0 10px}.dialogue #line{font-size:20px;line-height:1.5;margin:0}#speaker-avatar{flex-shrink:0;width:50px;height:60px;background:linear-gradient(155deg,#42626c,#20333f);display:flex;align-items:center;justify-content:center;font-size:25px;font-style:italic;border-bottom:2px solid var(--orange)}#brief-objective{border-top:1px solid var(--line);padding-top:20px;font-size:13px;color:#c5d4d5}.brief-actions{display:flex;align-items:center;gap:20px;margin-top:25px}.control-tip{margin-top:24px;font-size:8px;letter-spacing:1.5px;color:#88a0a8;display:flex;justify-content:space-between;gap:12px}.compact-card,.result-card{padding:40px;background:#112732ef;border:1px solid var(--line);max-width:640px}.compact-card{width:400px;text-align:center}.compact-card h1{font-size:42px;letter-spacing:-2px}.compact-card>p:not(.eyebrow){color:var(--muted)}.compact-card button{display:flex;width:100%;justify-content:center;margin-top:15px}.result-stats{display:flex;gap:40px;margin:35px 0}.result-stats div{display:flex;flex-direction:column;gap:10px}.result-stats span{font-size:8px;color:var(--muted);letter-spacing:2px}.result-stats b{font-size:32px;color:var(--orange)}#result-description{font-size:14px;color:var(--muted);line-height:1.6}#result-menu{display:block}#hud{position:fixed;inset:0;pointer-events:none;z-index:4}#hud button{pointer-events:auto}.hud-top{position:absolute;top:30px;left:35px;right:35px;display:flex;align-items:center;gap:24px}.race-position{display:flex;align-items:center;gap:12px}.race-position>b{font-size:68px;font-style:italic;line-height:1}.race-position span{font-size:20px;color:#b3c8cc}.race-position small{display:block;font-size:8px;letter-spacing:1.5px;margin-top:5px}.race-info{padding-left:25px;border-left:1px solid var(--line)}.race-info p{font-size:10px;letter-spacing:2px;text-transform:uppercase}.race-info span{font-size:12px;letter-spacing:2px;margin-right:20px}.hud-button{margin-left:auto;background:#10273399;border:1px solid var(--line);width:43px;height:43px;font-size:20px}#objective{position:absolute;top:120px;left:35px;font-size:11px;color:#c5d5d5;padding:10px 15px;background:#11252d99;border-left:2px solid var(--orange)}#countdown{position:absolute;top:35%;left:0;right:0;text-align:center;font-size:120px;font-weight:900;font-style:italic;text-shadow:0 0 40px #f0754666}#race-notice{position:absolute;top:22%;left:0;right:0;text-align:center;font-size:12px;letter-spacing:4px;color:var(--cyan);text-shadow:0 2px 10px black}#radio{position:absolute;top:29%;left:35px;max-width:390px;display:flex;gap:15px;background:#0b202ad4;border-left:2px solid var(--orange);padding:15px 20px}.radio-icon{color:var(--orange);font-size:22px}#radio b{font-size:9px;letter-spacing:2px;color:var(--orange)}#radio p{font-size:13px;line-height:1.5;margin:6px 0 0}.hud-bottom{position:absolute;bottom:32px;left:35px;right:35px;display:flex;justify-content:space-between;align-items:end}.map-wrap{display:flex;flex-direction:column;align-items:center;background:radial-gradient(#0b222b88,transparent)}.map-wrap span{font-size:7px;letter-spacing:2px;color:#a9c5ca}#minimap{width:180px;height:160px}.power-panel{width:300px;padding-bottom:5px}.charge-label{display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px}.charge-label b{color:var(--cyan)}.charge-track{height:3px;background:#a0c3cc33;margin:10px 0 18px}.charge-track i{height:100%;display:block;background:var(--cyan);box-shadow:0 0 14px #76d7d788}.powers{display:flex;gap:9px}.powers button{position:relative;width:94px;height:67px;background:#102a35bb;border:1px solid #b8e0e438;display:flex;align-items:center;gap:10px;padding:13px 9px}.powers button.ready{border-bottom:2px solid var(--cyan)}.powers button b{font-size:27px;color:var(--cyan)}.powers button>span{font-size:8px;letter-spacing:1px}.powers small{display:block;margin-top:5px;font-size:8px;color:#99b2bb}kbd{font:9px Arial;border:1px solid #a6c2ca55;padding:3px 5px;border-radius:2px;background:#142833}.powers kbd{position:absolute;top:-10px;left:8px}.hull{display:flex;align-items:center;gap:10px;margin-top:13px;font-size:7px;color:#8daab2;letter-spacing:2px}.hull i{display:block;height:2px;background:var(--orange);max-width:230px}.speed{text-align:right;width:180px}.speed strong{font-size:75px;line-height:1;font-weight:800;font-style:italic;letter-spacing:-5px}.speed>span{display:block;font-size:9px;letter-spacing:3px;margin-top:5px;color:#a0b8bd}#speed-ticks{height:5px;background:repeating-linear-gradient(90deg,var(--orange) 0 4px,transparent 4px 8px);margin-top:15px;max-width:180px;float:right}#touch-controls{display:none}#loading,#fatal{position:fixed;inset:0;z-index:30;background:#0f202a;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:25px;text-align:center}#loading h1{font-size:32px;letter-spacing:-1px}.brand-mark{font-size:80px;color:var(--orange);font-style:italic;font-weight:900}.load-line{width:220px;height:2px;background:#3a4e57;overflow:hidden}.load-line i{display:block;height:100%;background:var(--orange);animation:load 1.5s infinite;width:40%}#load-status{font-size:11px;color:var(--muted)}@keyframes load{from{transform:translateX(-100%)}to{transform:translateX(350%)}}dialog{color:var(--cream);background:#132b36;border:1px solid var(--line);padding:35px;max-width:600px;width:90%;max-height:90dvh}dialog::backdrop{background:#061019bb;backdrop-filter:blur(10px)}dialog h2{font-size:30px;letter-spacing:-1px}.close-dialog{position:absolute;right:12px;top:10px;background:none;font-size:25px}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.control-grid p{font-size:12px}.control-grid kbd{display:block;width:fit-content;margin-bottom:8px}dialog>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.7}#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);padding:14px 22px;background:#18353e;border:1px solid #74d7d780;font-size:12px;z-index:50;max-width:90%;text-align:center}
@media(max-width:1100px){.chapter-panel{width:255px;padding:20px}.hero-copy h1{font-size:95px}.hero-copy{left:5%}.hero-description{font-size:11px}.car-caption{left:45%;bottom:4%}.driver>span:not(.status-dot){display:none}}
@media(max-height:750px) and (min-width:800px){.hero-copy{top:8%}.hero-copy h1{font-size:85px;margin:25px 0 15px}.tagline{font-size:17px}.hero-description{margin:15px 0 20px}.chapter-panel{top:6%}.chapter-panel h2{margin-top:18px}.chapter-panel>p{margin-bottom:16px}.mission{padding:12px 0}.page-copy{top:5%}.page-copy h1{font-size:40px}.car-options{margin:20px 0}}
@media(max-width:760px){#header{height:72px;padding:0 5%}.wordmark span{display:none}.wordmark{font-size:19px}nav{gap:18px}.nav-btn{font-size:8px;letter-spacing:1px}.driver{gap:0}.driver .status-dot{display:none}.view{inset:72px 0 52px}.hero-copy{top:7%;left:7%}.hero-copy h1{font-size:clamp(64px,17vw,100px);letter-spacing:-5px;margin:25px 0 18px}.hero-copy h1 em{letter-spacing:-5px}.eyebrow{font-size:8px;letter-spacing:1.7px}.tagline{font-size:17px}.hero-description{font-size:11px;margin:15px 0 20px}.primary{padding:18px 20px;min-width:235px;font-size:10px}.hero-meta{font-size:6px;gap:15px}.chapter-panel{top:auto;bottom:0;left:7%;right:7%;width:auto;padding:14px 17px;background:#102631d9}.panel-top{font-size:7px}.chapter-panel h2,.chapter-panel>p,.chapter-bottom{display:none}#missions{display:flex;gap:15px;margin-top:12px}.mission{padding:10px 0;gap:7px;flex:1}.mission strong{font-size:9px;line-height:1.3;display:block}.mission small{font-size:6px}.mission-index{font-size:9px;width:12px}.mission .arrow{display:none}.car-caption{display:none}#footer{height:52px;padding:0 5%;font-size:6px}#save-state{display:none}#footer button{font-size:7px}.page-copy{top:5%;left:7%;right:7%}.page-copy h1{font-size:38px}.car-option{min-width:0;padding:15px}.specs{gap:23px}.settings-card{padding:22px;margin:15px auto;max-height:calc(100dvh - 155px)}.settings-card h1{font-size:26px}.settings-actions{flex-wrap:wrap}.brief-card{padding:25px}.dialogue #line{font-size:17px}.dialogue{min-height:145px;gap:12px}#speaker-avatar{width:35px;height:45px;font-size:20px}.brief-actions{display:block}.control-tip{font-size:7px;flex-direction:column}.result-card{padding:25px}.result-stats{gap:24px}.result-stats b{font-size:27px}.hud-top{top:18px;left:18px;right:18px;gap:12px}.race-position>b{font-size:45px}.race-position span{font-size:14px}.race-info{padding-left:12px}.race-info p{font-size:8px;letter-spacing:1px}.race-info span{font-size:9px;margin-right:10px}#objective{top:85px;left:18px;max-width:80%;font-size:9px}#radio{left:18px;top:23%;max-width:80%;padding:10px 13px}#radio p{font-size:11px}.hud-bottom{left:15px;right:15px;bottom:125px}.map-wrap{display:none}.power-panel{width:230px}.powers button{width:71px;height:58px;gap:5px;padding:9px 5px}.powers button b{font-size:22px}.powers button>span{font-size:7px}.powers kbd{display:none}.speed{width:95px}.speed strong{font-size:49px;letter-spacing:-3px}.speed>span{font-size:7px}#touch-controls{position:absolute;bottom:20px;left:15px;right:15px;display:flex;justify-content:space-between;gap:10px}#touch-controls>div{display:flex;gap:12px}#touch-controls button{width:64px;height:66px;touch-action:none;background:#153440aa;border:1px solid #a4ccd65c;border-radius:8px;font-size:13px;font-weight:bold;user-select:none;-webkit-user-select:none}.throttle{background:#f07546aa!important;color:#12202a}#countdown{font-size:90px}#race-notice{top:18%;font-size:9px;letter-spacing:2px}.control-grid{gap:0}.control-grid p{font-size:10px}}
@media(pointer:coarse) and (min-width:761px){#touch-controls{position:absolute;bottom:18px;left:20px;right:20px;display:flex;justify-content:space-between}.hud-bottom{bottom:110px}#touch-controls button{width:70px;height:60px;background:#153440cc;border:1px solid var(--line);margin:0 8px;touch-action:none}}
@media(max-height:520px){#header{height:56px}.view{inset:56px 0 36px}.hero-copy{top:7%}.hero-copy h1{font-size:61px;margin:18px 0 12px}.hero-description,.hero-meta{display:none}.tagline{font-size:14px}.chapter-panel{top:10%;bottom:auto;left:auto;right:4%;width:240px}.chapter-panel h2{display:block;font-size:20px}#missions{display:block}.mission{padding:10px 0}.car-caption{display:none}#footer{height:36px}.brief-card{padding:22px;max-width:650px}.brief-card h1{font-size:30px;margin:8px 0 12px}.brief-rule{margin-bottom:15px}.dialogue{min-height:68px}.dialogue #line{font-size:16px}#brief-objective{padding-top:10px;margin:10px 0}.brief-actions{display:flex;margin-top:12px}.control-tip{display:none}.hud-bottom{bottom:20px;left:110px;right:110px}.power-panel{width:230px}.map-wrap{display:none}#touch-controls{bottom:16px}.race-info p{margin:0 0 7px}.hud-top{top:12px}.race-position>b{font-size:43px}#objective{top:70px;font-size:9px}.powers button{height:48px}.speed strong{font-size:50px}#radio{top:32%;max-width:290px}.settings-card{max-height:calc(100dvh - 110px);margin:10px auto}.page-copy h1{font-size:25px}.car-options{display:flex;margin:12px 0}.car-option{min-width:0;width:200px}.specs b{font-size:20px}.result-card{padding:20px}.result-card h1{font-size:35px}.result-stats{margin:20px 0}.compact-card{padding:20px}.compact-card h1{font-size:32px;margin:15px 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.credits-link{font-size:9px;color:var(--muted);text-decoration:none;letter-spacing:.1em}

@media(max-width:600px){#vignette{background:linear-gradient(90deg,rgba(6,19,25,.82),rgba(6,19,25,.22)),linear-gradient(0deg,rgba(6,19,25,.7),transparent 45%)}}

/* Character conversations remain on the circuit, with original default portraits. */
#briefing{background:linear-gradient(0deg,#06131be8,transparent 80%);align-items:flex-end;justify-content:flex-start;padding:3vh 4vw;backdrop-filter:none}
#briefing .brief-card{max-width:680px;width:100%;padding:24px 28px;background:#102833f2;border:1px solid #7aa0ab66;border-left:3px solid var(--cyan)}
#briefing h1{font-size:28px;margin:10px 0}#briefing .brief-rule{margin:12px 0}#briefing .dialogue{min-height:100px;align-items:center}#briefing #line{font-size:19px;line-height:1.5}#briefing .control-tip{display:none}
#speaker-avatar{width:76px!important;height:86px!important;flex-shrink:0;object-fit:cover;border-radius:9px;border:1px solid #8bafb655}
#radio{display:flex;gap:14px;align-items:center;width:355px;max-width:calc(100vw - 32px);background:#102833f2;border:1px solid #76d7d770;border-left:3px solid var(--cyan);box-shadow:0 8px 32px #0005;padding:13px;pointer-events:none;z-index:4}
#radio-avatar{width:55px;height:64px;object-fit:cover;flex-shrink:0;border-radius:7px}#radio-channel{display:block;color:#87afb6;font-size:8px;letter-spacing:1px;margin-bottom:6px}#radio-name{font-size:10px;color:var(--cyan)}#radio p{margin:7px 0 0;font-size:13px;line-height:1.5}.car-dialogue:after{content:'';position:absolute;bottom:-9px;left:50%;width:16px;height:16px;background:#102833;transform:rotate(45deg);border-right:1px solid #76d7d770;border-bottom:1px solid #76d7d770}
@media(max-width:760px){#briefing{padding:16px}#briefing .brief-card{padding:18px}#briefing h1{font-size:23px}#briefing #line{font-size:15px}#briefing #speaker-avatar{width:58px!important;height:70px!important}#radio{width:310px;gap:10px}#radio p{font-size:11px}#radio-avatar{width:45px;height:54px}}
@media(max-height:520px){#briefing .brief-card{max-width:620px;padding:12px 20px}#briefing .dialogue{min-height:60px}#briefing #speaker-avatar{width:48px!important;height:56px!important}#briefing #line{font-size:14px}#briefing h1{font-size:20px}#briefing .eyebrow{margin:3px 0}#briefing #brief-objective{margin:6px 0;padding:4px 0}#radio{width:290px}#radio-avatar{width:36px;height:43px}}

.powers{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.powers button{width:100%;min-width:0}.power-panel{width:320px}#attack-target{font-size:9px;letter-spacing:1px;color:#9bafb7;margin:9px 0}#attack-target.locked{color:#f7b284}.difficulty-help{font-size:11px;line-height:1.7;color:#a5b2b6}button[data-power="bolt"],button[data-power="mine"],button[data-power="siphon"]{border-color:#f0754666}button[data-power].ready{border-color:#76d7d7aa}
@media(max-width:760px){.power-panel{width:230px}.powers{gap:4px}.powers button{width:100%;height:48px}#attack-target{font-size:7px;margin:7px 0}.hud-bottom{bottom:110px}}
@media(max-height:520px){.power-panel{width:290px}.powers{grid-template-columns:repeat(6,1fr);gap:3px}.powers button{height:44px;padding:4px;display:flex;flex-direction:column;gap:1px}.powers button b{font-size:16px}.powers button>span{font-size:6px}.powers small,.powers kbd{display:none}.hud-bottom{bottom:12px}#attack-target{font-size:7px}.hull{margin-top:4px}}

.powers button{background:#102832e8}.powers button:disabled{opacity:.62}.race-info{min-width:0}.race-info p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){.race-info{flex:1}.hud-top #pause{flex-shrink:0}}

#performance{position:absolute;top:99px;right:4%;font:9px monospace;color:#b6d5d8;pointer-events:none}@media(max-width:760px){#performance{top:73px;right:18px;font-size:8px}}

#speaker-avatar,#radio-avatar{background-size:200% 200%;background-repeat:no-repeat;aspect-ratio:1;width:76px!important;height:76px!important}#radio-avatar{width:56px!important;height:56px!important}.chapter-panel{top:7%;max-height:84%;overflow-y:auto}.chapter-panel h2{margin:17px 0 10px}.chapter-panel>p{margin-bottom:12px}#act-tabs{display:flex;gap:5px;margin:0 0 18px}#act-tabs button{background:#173440;padding:9px 6px;font-size:8px;flex:1;border:1px solid #56717b55}#act-tabs button.active{color:#f6b48e;border-color:var(--orange)}#missions .mission{padding:10px 0}#evidence{padding:10px;border-left:2px solid #76d7d7;font-size:10px!important;color:#c3d4d8!important}#missions{max-height:310px;overflow-y:auto}.chapter-bottom{font-size:7px}
@media(max-width:760px){.chapter-panel{top:auto;max-height:210px;bottom:0}#act-tabs{margin-bottom:8px}#missions{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;max-height:120px;margin-top:8px}#missions .mission{padding:8px 0}#act-stakes,#evidence{display:none}#speaker-avatar{width:64px!important;height:64px!important}#radio-avatar{width:45px!important;height:45px!important}}
@media(max-height:520px){.chapter-panel{top:5%;max-height:90%}#missions{max-height:130px}.chapter-panel h2{font-size:19px}#evidence{display:none}#speaker-avatar{width:48px!important;height:48px!important}}

#surface-info{position:absolute;top:130px;right:4%;font:10px monospace;letter-spacing:1px;color:#f6c294;background:#10232bd9;padding:9px 12px}@media(max-width:760px){#surface-info{top:125px;right:18px;font-size:8px}}

#garage-view{overflow:auto;background:linear-gradient(90deg,#0a1c24ed,#0a1c2466)}.garage-layout{display:grid;grid-template-columns:minmax(300px,1fr) minmax(280px,.8fr);gap:40px;max-width:1100px;margin:28px auto;padding:0 28px 30px}.garage-list h1{font-size:36px;margin:12px 0}.garage-list>p{font-size:12px;line-height:1.7}.garage-list progress{width:100%;height:6px;accent-color:var(--orange)}.garage-list .car-options{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.garage-list .car-option{min-width:0;width:auto;padding:16px}.garage-list .car-option strong{font-size:20px}.garage-details{align-self:start;background:#102630e8;border:1px solid var(--line);padding:26px;position:sticky;top:25px}.garage-details h2{font-size:36px;margin:12px 0}.garage-details>p{font-size:12px;line-height:1.8}.car-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}.car-stats div{display:flex;flex-direction:column;gap:8px}.car-stats span{font-size:8px;color:var(--muted);letter-spacing:1px}.car-stats b{font-size:21px}#car-unlock-status,#result-unlocks{color:var(--cyan)}#result-garage{margin:0 12px 15px 0}.garage-details .primary{min-width:0;width:100%;justify-content:center}.garage-list .car-options{display:grid}@media(max-width:760px){.garage-layout{grid-template-columns:1fr;gap:5px;padding:0 18px 24px;margin:18px auto}.garage-details{position:static;padding:20px}.garage-list h1{font-size:29px}.garage-list .car-option{padding:12px}.garage-list .car-option strong{font-size:17px}.garage-list .car-option>span{font-size:8px;letter-spacing:1px}}

#account-dialog{max-width:600px}#account-dialog p{font-size:12px;line-height:1.7}#account-dialog label{display:block;font-size:12px;margin:16px 0 8px}#account-dialog input,#account-dialog textarea{display:block;width:100%;padding:12px;background:#0c1d25;color:var(--cream);border:1px solid var(--line);font:14px monospace}#account-dialog button:not(.close-dialog){margin:10px 8px 5px 0}#account-dialog .primary{min-width:0}#account-error{color:#ffad8f}#recovery-panel{border:1px solid var(--orange);padding:16px;margin-top:20px}#account-status{color:var(--cyan)}#account-open{padding:10px;font-size:8px}@media(max-width:760px){.driver{font-size:7px;letter-spacing:0}.driver b{margin-left:4px}#account-name{display:none}#account-open{padding:8px 5px}#header nav{gap:12px}#sound{padding:6px}.wordmark{gap:4px}.wordmark b{font-size:27px}}
