@font-face{font-family:Manrope;src:url('./assets/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}:root{font-family:Manrope,Arial,sans-serif;color:#eeece5;background:#030406;color-scheme:dark;--accent:#d5c9ae;--muted:#949699;--line:#d8dde12d}*{box-sizing:border-box}body{margin:0;height:100dvh;overflow:hidden}button,a{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}button{background:none;border:0;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:1px solid #eee5cf;outline-offset:5px}button[hidden],[hidden]{display:none!important}main,#viewport{position:absolute;inset:0}#viewport canvas{display:block;width:100%;height:100%}#load-message{position:absolute;top:50%;width:100%;text-align:center;font-size:12px}.hud{position:absolute;z-index:2;left:clamp(22px,3.7vw,80px);right:clamp(22px,3.7vw,80px);display:flex;align-items:center}.top-hud{top:32px;gap:24px;right:100px}.location{display:flex;align-items:center;gap:24px}.wordmark{font-size:20px;font-weight:650;font-style:italic;letter-spacing:.14em;transform:scaleX(1.08);transform-origin:left;background:linear-gradient(#f7f4e9,#d4c7ab 55%,#9e927b);-webkit-background-clip:text;background-clip:text;color:transparent}.location>span:last-child{font-size:8px;font-weight:500;letter-spacing:.2em;color:#9fa2a8;border-left:1px solid #d8dde136;padding-left:22px}.fuel{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:10px;font-variant-numeric:tabular-nums}.fuel svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.2}.fuel-track{width:110px;height:2px;background:#ffffff26}.fuel-track i{display:block;width:100%;height:100%;background:#e5dccb}#fuel-value{width:38px}#menu{position:absolute;z-index:6;right:clamp(21px,3.3vw,70px);top:26px;width:36px;height:36px;padding:10px 6px;display:flex;flex-direction:column;justify-content:center;gap:6px}#menu span{height:1px;width:24px;background:#e0dfdb;transition:background .2s}#menu:hover span{background:white}.bottom-hud{bottom:70px;justify-content:space-between;gap:25px}.gauges{display:flex;gap:38px}.gauges strong{font-weight:400;font-size:clamp(30px,3vw,48px);letter-spacing:-1.5px;font-variant-numeric:tabular-nums}.gauges small{font-size:8px;letter-spacing:.12em;color:#a1a4a8;margin-left:8px}#garage-toggle,#pedals button{height:46px;min-width:115px;padding:0 24px;font-size:10px;letter-spacing:.09em;text-transform:uppercase;border:1px solid #bfc1c54d;background:#1214189c;backdrop-filter:blur(8px)}#garage-toggle:hover,#pedals button:hover{border-color:#e2dfd4}#pedals{display:flex;gap:10px}#pedals button{touch-action:none;user-select:none}#pedals #gas{background:#e4e3df;color:#151619;border-color:#e4e3df}#pedals #thrust{border-color:#d6c4a17d;color:#e1d2b4}#pedals #thrust.active{background:#d9cdb4;color:#0c0d10}#pedals button:active{filter:brightness(1.2)}.garage{position:absolute;inset:0;z-index:4;display:grid;place-items:center;padding:82px 22px 70px;background:#0000004a;backdrop-filter:blur(6px)}.garage-panel{width:min(770px,100%);max-height:100%;overflow-y:auto;background:linear-gradient(140deg,#15171bef,#060709f7);padding:32px 36px 22px;border:1px solid #d3c6aa4d;box-shadow:0 30px 120px #0009;scrollbar-width:thin;scrollbar-color:#57585c transparent}.garage-top{display:flex;align-items:center;gap:22px;margin-bottom:24px}.eyebrow{font-size:8px;letter-spacing:.3em;font-weight:600;color:#a9a394}h1{font-size:34px;font-weight:450;font-style:italic;text-transform:uppercase;letter-spacing:1px;margin:6px 0 0}.balance{margin-left:auto;text-align:right}.balance strong{display:block;font-size:25px;font-weight:400;font-variant-numeric:tabular-nums}.balance span{font-size:8px;color:#a1a1a2;letter-spacing:.13em}#close-garage{font-size:25px;align-self:flex-start;margin:-12px -18px 0 0;padding:5px 8px;color:#aaa}#close-garage:hover{color:#fff}#status{font-size:11px;line-height:1.7;color:#d8ccb0;margin:-4px 0 18px}#status:empty{display:none}#parts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.part{display:flex;align-items:center;gap:14px;min-height:78px;min-width:0;padding:15px 17px;text-align:left;border:1px solid #d0d5dd27;background:linear-gradient(145deg,#292b300d,#02030619);transition:border-color .18s,background .18s}.part:not(:disabled):hover{border-color:#d9c8a6;background:#d6d2c20c}.part:not(:disabled):active{background:#d6d2c218}.part-icon{flex:none;width:30px;height:30px;color:#c0b49c}.part-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}.part-content{flex:1;min-width:0}.part-name{display:block;font-size:11px;line-height:1.4;font-weight:500}.part-price{display:block;font-size:9px;color:#b5aa93;letter-spacing:.08em;margin-top:6px}.part-check{font-size:15px;color:#c5b698}.part.locked{opacity:.42}.part.installed{border-color:#c2b79f44}.part.installed .part-price{color:#9b9a96}.fuel-upgrade{display:grid;width:100%;grid-template-columns:minmax(130px,1fr) minmax(110px,1fr) auto;align-items:center;gap:24px;text-align:left;border:1px solid #d0d5dd27;margin-top:12px;padding:18px 17px;transition:border-color .2s}.fuel-upgrade:not(:disabled):hover{border-color:#d9c8a6;background:#d6d2c20c}.fuel-upgrade:disabled{opacity:.5}.fuel-heading{display:flex;align-items:baseline;gap:16px;font-size:12px}#fuel-tier{font-size:9px;color:#aaa;font-variant-numeric:tabular-nums}#fuel-levels{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}#fuel-levels i{height:15px;background:#292b2f;transform:skew(-12deg)}#fuel-levels i.filled{background:#d5c9ae}#fuel-price{font-size:9px;color:#c1b598;white-space:nowrap}.garage-actions{display:flex;align-items:center;gap:15px;border-top:1px solid #d8dde126;margin-top:24px;padding-top:22px}#reset{width:22px;font-size:23px;color:#929397}#part-count{font-size:9px;color:#94969a}#run{height:44px;width:205px;display:flex;align-items:center;justify-content:space-between;margin-left:auto;border:1px solid #cbbfa4;color:#e9e0cd;font-size:11px;letter-spacing:.13em;text-transform:uppercase;padding:0 22px;background:linear-gradient(130deg,#c7bb9c09,#c7bb9c18)}#run:hover{background:#e5dccb;color:#111216}#run span{font-size:20px}.controls-hint{font-size:7px;letter-spacing:.1em;text-align:right;color:#8c8d91;margin:15px 0 0}footer{position:absolute;z-index:5;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px clamp(22px,3.7vw,80px);background:linear-gradient(transparent,#020305cc);color:#98999e;font-size:9px;line-height:1.6}footer nav{display:flex;gap:16px;flex:none;font-size:10px}footer a{text-decoration:none}footer button{padding:0;font:inherit}footer a:hover,footer button:hover{color:#eee5cf}dialog{width:min(420px,calc(100% - 32px));max-height:85dvh;overflow:auto;background:linear-gradient(145deg,#15171b,#07080a);color:#e6e4df;border:1px solid #cfc3a448;padding:32px;box-shadow:0 35px 130px #000b}dialog::backdrop{background:#020305b8;backdrop-filter:blur(12px)}dialog h2{font-size:27px;text-transform:uppercase;font-style:italic;font-weight:400;letter-spacing:1px;margin:8px 20px 25px 0}dialog p{font-size:12px;line-height:1.9;color:#acadb1}#close-info,#close-pause{position:absolute;right:15px;top:10px;font-size:25px;color:#aaa}#info-action{background:#e4ded0;color:#111;padding:12px 18px;font-size:12px}.pause-actions{display:flex;flex-direction:column}.pause-actions button{display:flex;justify-content:space-between;padding:17px 0;border-top:1px solid #c7c9cc24;font-size:12px}.pause-actions button:hover{color:#e3d4b4}.pause-actions button span{color:#c5b18f}#info-copy label{display:flex;align-items:center;gap:10px}#info-copy input{accent-color:#cbbfa4}
@media(min-width:1800px){.garage-panel{width:850px;padding:35px 42px 25px}.part{min-height:88px;padding:19px 20px}.part-name{font-size:13px}.part-price{font-size:10px}.part-icon{width:34px;height:34px}}
@media(max-width:600px){.top-hud{top:24px;gap:12px;right:65px}.location{gap:8px;align-items:flex-start;flex-direction:column}.wordmark{font-size:15px}.location>span:last-child{border:0;padding:0;font-size:7px}.fuel{gap:6px;font-size:9px}.fuel-track{width:56px}.fuel svg{width:16px}#fuel-value{width:31px}#menu{top:17px;right:15px}.garage{padding:80px 14px 85px}.garage-panel{padding:22px 18px 17px}.garage-top{gap:12px;margin-bottom:20px}h1{font-size:26px}.balance strong{font-size:22px}.eyebrow{font-size:7px}#parts{gap:8px}.part{padding:12px 10px;gap:9px;min-height:78px}.part-icon{width:23px;height:23px}.part-name{font-size:10px}.part-price{font-size:8px}.part-check{font-size:12px}#close-garage{margin:-9px -7px 0 0}.fuel-upgrade{grid-template-columns:1fr auto;gap:12px;padding:15px 12px}.fuel-heading{font-size:11px;gap:10px}#fuel-levels{grid-column:1;grid-row:2}#fuel-price{grid-column:2;grid-row:1/3;font-size:8px}#fuel-levels i{height:10px}.garage-actions{margin-top:20px;padding-top:17px}#run{width:155px;height:43px}.controls-hint{font-size:6px;letter-spacing:.02em}.bottom-hud{bottom:83px;gap:10px;align-items:flex-end}.gauges{gap:10px;flex-direction:column}.gauges strong{font-size:28px}.gauges small{font-size:7px}#garage-toggle,#pedals button{min-width:68px;height:48px;padding:0 10px;font-size:8px;letter-spacing:.03em}#pedals{gap:6px}footer{font-size:8px;padding-block:10px}footer>span{max-width:205px}footer nav{font-size:9px;gap:10px}}
@media(max-width:360px){.garage{padding-bottom:88px}.garage-panel{padding:18px 14px}.part{padding:10px 7px;gap:7px;min-height:72px}.part-name{font-size:9px}.part-icon{width:19px;height:19px}.part-check{font-size:10px}#run{width:135px}.controls-hint{font-size:5.5px}.fuel-track{width:43px}footer{font-size:7.5px}footer>span{max-width:155px}footer nav{font-size:8px}#pedals button{min-width:60px;font-size:7px;padding:0 7px}.gauges strong{font-size:24px}}
@media(max-height:500px){.garage{padding:58px 16px 45px}.garage-panel{padding:18px 22px}.garage-top{margin-bottom:14px}.part{min-height:60px;padding:9px 12px}.garage-actions{margin-top:13px;padding-top:13px}.controls-hint{display:none}.bottom-hud{bottom:48px}.top-hud{top:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
@media(max-width:600px) and (max-height:700px){.garage-panel{padding:16px 14px 12px}.garage-top{margin-bottom:12px}h1{font-size:24px;margin-top:4px}#parts{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.part{position:relative;display:flex;flex-direction:column;justify-content:center;text-align:center;gap:5px;padding:8px 5px;min-height:73px}.part-icon{width:18px;height:18px}.part-name{font-size:8px;line-height:1.3}.part-price{font-size:7px;margin-top:4px}.part-check{position:absolute;top:5px;right:6px;font-size:9px}.fuel-upgrade{padding:10px;margin-top:10px;gap:9px}.garage-actions{margin-top:14px;padding-top:13px}#run{height:40px}.controls-hint{margin-top:10px;font-size:5px}}
@media(max-width:600px) and (max-height:700px){.controls-hint{display:none}}
@media(max-width:360px){.wordmark{font-size:12px}.fuel{font-size:8px;gap:5px}.fuel svg{width:14px}.fuel-track{width:35px}#fuel-value{width:28px}}

/* Avoid a full-screen blur pass when the garage opens after a crash. */
.garage{backdrop-filter:none;background:#020305b8}
