:root{font-family:DM Sans,Arial,sans-serif;color:#292b25;background:#e6e3d9;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #a12827;outline-offset:4px}button{border:0}#app{height:100svh;min-height:420px;position:relative;overflow:hidden}#scene{width:100%;height:100%;display:block;touch-action:none}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(247,242,228,.55),transparent 43%),linear-gradient(0deg,rgba(246,240,223,.76),transparent 22%,transparent 85%,rgba(249,244,229,.65))}header{position:absolute;left:38px;right:38px;top:27px;display:flex;align-items:center;justify-content:space-between}.wordmark{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;letter-spacing:3px;text-decoration:none;color:inherit}.wordmark svg{width:40px;height:32px}.edition{font-size:8px;letter-spacing:1.6px;max-width:100px;line-height:1.6;border-left:1px solid #6a6a5550;padding-left:14px;margin-left:10px}.header-right{display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:1.5px}.live-dot{width:5px;height:5px;background:#8b6b40;border-radius:100%}.header-right button{background:transparent;font-size:9px;letter-spacing:1.2px;margin-left:15px}#fullscreen{font-size:22px}.intro{position:absolute;left:43px;top:133px;pointer-events:none;animation:enter 1s ease-out}.eyebrow,.tiny-label{font-size:9px;letter-spacing:2px;font-weight:600}h1{font-size:clamp(46px,5.3vw,86px);line-height:1.04;letter-spacing:-4px;font-weight:500;margin:19px 0 23px}h1 em{font-family:Playfair Display,Georgia,serif;font-weight:500}p{font-size:12px;line-height:1.8;color:#5f6055}.intro p{margin-top:0}#controls{position:absolute;right:35px;top:128px;width:248px;background:#f4f0e6dd;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:0 19px 7px;border:1px solid #fff5;box-shadow:0 15px 45px #4939220b;animation:enter .9s ease-out}.panel-head{display:flex;align-items:center;justify-content:space-between;height:49px;font-size:8px;letter-spacing:1.4px;border-bottom:1px solid #62625224;font-weight:700}.panel-head button{background:none;font-size:20px}.control-caption{font-size:8px;letter-spacing:1.6px;color:#8b897d;margin:18px 0 8px}.control{display:flex;width:100%;align-items:center;justify-content:space-between;background:transparent;padding:11px 0;font-size:11px;border-bottom:1px solid #62625217}.control>span{display:flex;align-items:center;gap:8px}.control i{font-style:normal;width:16px;font-size:16px;opacity:.65}.control b{font-size:7px;letter-spacing:1px;font-weight:500;color:#858679}.control.on b,.control:hover{color:#a02a24}.control kbd{display:none}kbd{font:inherit;font-size:9px;min-width:16px;padding:2px 3px;border:1px solid #62625230;border-radius:2px;text-align:center;color:#6b6c60}.extra-controls{display:flex;gap:10px;padding:15px 0;justify-content:space-between}.extra-controls button{padding:0;background:none;font-size:9px}.extra-controls kbd{font-size:7px}.extra-controls .on{color:#a02a24}.paint-row{border-top:1px solid #62625224;padding:16px 0 11px}.paint-row>span{font-size:8px;letter-spacing:1px;display:flex;justify-content:space-between}.paint-row b{font-size:9px;letter-spacing:0;font-weight:400;color:#707063}#paints{display:flex;gap:14px;margin-top:14px}#paints button{width:20px;height:20px;background:var(--paint);border:2px solid #f4f0e6;border-radius:50%;transition:transform .2s}#paints button.selected{outline:1px solid #55574c;outline-offset:2px}#paints button:hover{transform:scale(1.15)}footer{position:absolute;bottom:34px;left:43px;right:35px;display:flex;justify-content:space-between;align-items:center;gap:16px}.footer-meta{display:flex;flex-direction:column;gap:10px}#mode-hint{font-size:10px;color:#656659}.camera-bar{display:flex;padding:4px;background:#f4f0e6b8;border:1px solid #fdf9ef70;border-radius:3px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.camera-bar button{font-size:10px;background:transparent;padding:11px 18px;border-radius:2px;color:#737468}.camera-bar button.active{background:#fffaf0;color:#2e3029;box-shadow:0 2px 7px #00000006}.primary{display:flex;gap:53px;align-items:center;background:#272e29;color:#f3f0e5;padding:18px 22px;font-size:12px;border-radius:2px;transition:background .2s,transform .2s}.primary:hover{background:#a12b25;transform:translateY(-2px)}.primary span{font-size:20px;line-height:14px}#toast{position:absolute;bottom:112px;left:50%;transform:translate(-50%);background:#f8f2e6ec;box-shadow:0 4px 20px #4539210d;padding:10px 18px;font-size:10px;opacity:0;transition:opacity .3s;pointer-events:none;white-space:nowrap;border-radius:3px}#toast.visible{opacity:1}#drive-hud{position:absolute;left:43px;bottom:146px;width:205px}.speed{display:flex;align-items:baseline;gap:12px}.speed span{font-size:72px;font-weight:500;letter-spacing:-4px;font-variant-numeric:tabular-nums}.speed small{font-size:9px;letter-spacing:2px}.tach{height:3px;background:#4b4b4220;width:190px;margin:8px 0 12px}.tach div{height:100%;background:#a02a24;width:0;transition:width .1s}.dashline{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.5px}#gear{font-weight:700}#map{width:110px;height:110px;position:absolute;bottom:0;left:250px}#map text{font-size:6px;letter-spacing:1px;fill:#88897c}#driving-help{position:absolute;bottom:105px;left:43px;display:flex;gap:20px;font-size:9px;color:#50564d}#driving-help span{display:flex;align-items:center;gap:4px}[hidden]{display:none!important}.driving .intro{display:none}.driving #controls{top:100px}.driving .vignette{background:linear-gradient(0deg,#f6f0dfe6,transparent 35%,transparent 85%,#f9f4e5a6)}#loading{position:absolute;inset:0;background:#eee9dc;display:flex;align-items:center;justify-content:center;flex-direction:column;z-index:10;transition:opacity .5s}#loading span{font-size:30px;letter-spacing:8px}#touch-controls{position:absolute;bottom:155px;left:15px;right:15px;justify-content:space-between;pointer-events:none}#touch-controls>div{display:flex;gap:8px}#touch-controls button{pointer-events:auto;width:48px;height:48px;background:#f8f2e6c9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;font-size:20px;touch-action:none;-webkit-user-select:none;user-select:none}#touch-controls button.pressed{background:#a02a24;color:#fff}@keyframes enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:1050px){.edition{display:none}#controls{width:218px;right:20px}.intro{left:28px}footer{left:28px;right:20px}.camera-bar button{padding:10px 12px}#mode-hint{max-width:200px;font-size:9px}.primary{gap:25px}#driving-help{gap:12px;font-size:8px}}@media(max-width:700px){header{left:18px;right:15px;top:17px}.wordmark{font-size:15px;letter-spacing:2px;gap:6px}.wordmark svg{width:29px}.header-right>span{display:none}.header-right{gap:2px}.header-right button{font-size:8px;margin-left:10px}.intro{top:81px;left:21px}h1{font-size:45px;letter-spacing:-2px;margin:13px 0}.intro p{font-size:10px}.eyebrow{font-size:7px;letter-spacing:1.3px}#controls{top:83px;right:14px;width:160px;padding:0 11px 4px}.panel-head{font-size:6px;letter-spacing:.6px;height:34px}.control-caption{font-size:7px;margin:11px 0 3px}.control{font-size:9px;padding:8px 0}.control i{width:12px;font-size:12px}.control>span{gap:4px}.control b{font-size:6px;letter-spacing:.5px}.extra-controls{padding:10px 0;gap:7px}.extra-controls button{font-size:8px}.extra-controls kbd{display:none}.paint-row{padding:11px 0 8px}.paint-row>span{font-size:6px}.paint-row b{font-size:8px}#paints{gap:9px;margin-top:10px}#paints button{width:17px;height:17px}footer{bottom:18px;left:18px;right:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.footer-meta{grid-column:1/-1;gap:6px}.tiny-label{font-size:7px}#mode-hint{max-width:none;font-size:8px}.camera-bar{justify-self:start}.camera-bar button{font-size:8px;padding:10px 9px}.primary{justify-content:space-between;padding:14px 13px;font-size:10px;gap:12px}#toast{bottom:139px;font-size:9px;max-width:94%;white-space:normal;width:max-content}#driving-help{display:none}.driving #controls{top:70px}#drive-hud{left:20px;bottom:245px;width:132px}.speed span{font-size:49px}.tach{width:130px}.dashline{font-size:7px}#map{width:76px;height:76px;left:0;bottom:110px}#touch-controls{display:flex}.driving .panel-head{font-size:6px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}#mechanic-toggle{position:absolute;right:35px;bottom:104px;background:#f7f2e7e8;border:1px solid #716b5928;padding:11px 17px;font-size:10px;letter-spacing:.4px}#workshop{position:absolute;right:25px;top:89px;width:300px;bottom:165px;background:#f5f0e6ed;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:18px;overflow-y:auto;border:1px solid #fff6;scrollbar-width:thin}#workshop .shop-title{font-size:9px;letter-spacing:1.8px;display:flex;justify-content:space-between;margin-bottom:12px}#workshop .shop-title button{background:none}#engine-readouts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 0;border-block:1px solid #62625225}#engine-readouts span{display:block;font-size:7px;letter-spacing:.7px;color:#77776a;margin-bottom:6px}#engine-readouts b{font-size:15px;font-weight:500}#part-select,#scenario{width:100%;border:1px solid #79796638;background:#fbf7ed;color:#363a31;font:inherit;font-size:11px;padding:10px;margin-top:13px}#part-description{font-size:10px;line-height:1.7;margin:10px 0}#part-health{height:3px;background:#cacabd;margin:11px 0}#part-health div{height:100%;background:#668b64}#part-status{display:flex;justify-content:space-between;font-size:9px;color:#696e5c;margin:10px 0}.shop-actions{display:flex;gap:6px}.shop-actions button{background:#29352f;color:#f1ede2;font-size:9px;padding:11px 8px;flex:1}.shop-actions button:first-child{background:#e2dfd2;color:#3b4036}#service-part{flex:1.5}#bench{margin-top:15px;font-size:9px;color:#757569;border-bottom:1px solid #62625225;padding-bottom:13px}#workshop label{font-size:8px;letter-spacing:1px;display:block;margin-top:15px}#scenario{font-size:10px;margin-top:6px}.shop-small{display:flex;gap:12px;margin-top:11px}.shop-small button{padding:0;background:none;font-size:9px;text-decoration:underline;text-underline-offset:3px}#engine-warning{position:absolute;top:85px;left:50%;transform:translate(-50%);color:#9b2e22;font-size:10px;letter-spacing:1px;background:#fbefe0ed;padding:10px 18px}#crosshair{position:absolute;left:50%;top:50%;width:5px;height:5px;border:1px solid #fff;border-radius:50%;box-shadow:0 0 2px #222;pointer-events:none}.workshop .intro,.walking .intro{display:none}#workshop-note{font-size:8px;margin-bottom:0;color:#8b887c}.shop-toast{max-width:440px;white-space:normal!important;text-align:center}#workshop-engine{width:100%;padding:10px;background:#a12b25;color:#fff9ed;font-size:10px;margin-top:12px}.walking #controls{display:none}.walking #mode-hint{max-width:400px}.part-focus{color:#a02a24}button:disabled{opacity:.4;cursor:not-allowed}@media(max-width:700px){#mechanic-toggle{right:18px;bottom:135px;font-size:9px;padding:9px 12px}#workshop{right:12px;top:68px;bottom:188px;width:213px;padding:12px}#workshop .shop-title{font-size:7px;margin-bottom:6px}#engine-readouts{gap:4px;padding:9px 0}#engine-readouts b{font-size:12px}#engine-readouts span{font-size:6px}#part-select{font-size:10px;padding:7px;margin-top:9px}#part-description{font-size:9px;line-height:1.5}#part-status{font-size:8px}.shop-actions button{font-size:8px;padding:9px 5px}#bench{font-size:8px;margin-top:10px}#workshop label{margin-top:10px}.shop-small button{font-size:8px}#engine-warning{top:62px;font-size:8px;max-width:90%;white-space:nowrap}#workshop-note{font-size:7px}.workshop #toast{bottom:143px;max-width:90%;font-size:8px}.workshop #touch-controls{bottom:195px}}#controls{max-height:calc(100svh - 270px);overflow-y:auto;scrollbar-width:thin}.control{padding:9px 0}.panel-head{min-height:49px;height:auto;padding-block:14px;gap:7px}.panel-head span{line-height:1.5}.header-right{max-width:50%}.edition{font-size:8px;line-height:1.6}.intro{z-index:1;max-width:35%}#mechanic-toggle{z-index:2}#toast{max-width:min(460px,90vw);white-space:normal;text-align:center;z-index:4}.camera-bar{white-space:nowrap}@media(max-width:700px){#controls{max-height:calc(100svh - 265px)}.panel-head{min-height:34px;padding-block:8px}.control{padding:8px 0}.intro{max-width:45%}.camera-bar button{padding-inline:7px}}.cockpit-view .intro{display:none}.driving #controls{opacity:.94}.driving #controls:hover{opacity:1}@media(max-width:700px){.intro h1{font-size:39px;letter-spacing:-2px;white-space:nowrap}.intro{max-width:70%}.intro p{font-size:10px}#controls{top:255px;right:15px;max-height:calc(100svh - 450px)}#workshop{inset:auto 12px 136px;width:auto;max-height:310px;padding:12px 15px}.workshop .camera-bar{visibility:hidden}.workshop #mechanic-toggle{bottom:105px}.workshop #toast{bottom:455px}.workshop #part-description{font-size:10px}#touch-controls{bottom:176px}.driving #controls{top:70px}.driving #drive-hud{bottom:245px}.shop-actions button{min-height:35px}}.lab-controls{display:flex;gap:5px;margin-bottom:10px}.lab-controls button{background:#e3e1d6;padding:8px 9px;font-size:9px;flex:1}.lab-controls .active{background:#2c4138;color:#fff}.engine-identity{font-size:8px;letter-spacing:.6px;color:#75796c;margin:9px 0 13px}#coach-step{font-size:10px;line-height:1.6;color:#914d24;border-left:2px solid #b28645;padding-left:9px;margin:12px 0}#inspect-part{background:#dedfce;width:100%;font-size:10px;padding:10px}#diagnostic-reading{font-size:10px;line-height:1.7;background:#e9e6dc;padding:10px;margin:8px 0 12px;min-height:40px}.access-actions{display:flex;gap:6px;margin-bottom:7px}.access-actions button{background:#ece7db;border:1px solid #8b8b7233;padding:9px 6px;font-size:8px;flex:1}#workshop{width:325px;bottom:148px}#workshop-note{font-size:8px}.dusk .vignette{background:linear-gradient(0deg,#122032ad,transparent 38%)}.dusk header,.dusk .intro,.dusk .footer-meta,.dusk #drive-hud,.dusk #driving-help{color:#f4edda}.dusk .intro p,.dusk #mode-hint{color:#dedacb}@media(max-width:700px){#workshop{width:auto;bottom:136px;max-height:330px}.lab-controls button{font-size:8px;padding:8px 6px}.header-right button{font-size:7px;margin-left:5px}.header-right{max-width:57%}.wordmark{font-size:13px}#diagnostic-reading,#coach-step{font-size:9px}}.fluid-actions{display:flex;gap:6px;margin:0 0 7px}.fluid-actions button{flex:1;background:#d7e0dc;padding:8px;font-size:8px}.lab-controls{flex-wrap:wrap}.lab-controls button{min-width:45%}.vignette{background:linear-gradient(0deg,rgba(246,240,223,.3),transparent 12%)}.intro{text-shadow:0 1px 18px #fff8}.intro p{color:#303b29}.hands-active .intro,.hands-active #controls,.hands-active footer,.hands-active #mechanic-toggle{display:none!important}.hands-title{position:absolute;left:32px;top:104px;pointer-events:none;display:flex;flex-direction:column;gap:9px;color:#f7f3e8;text-shadow:0 1px 5px #0008}.hands-title>span{font-size:12px;letter-spacing:3px}.hands-title small{font-size:11px;color:#f5f1e4}#hands-on{position:absolute;inset:0;pointer-events:none}#hands-on button{pointer-events:auto;background:#f6f2e6e8;color:#28382f;padding:12px 15px;font-size:11px;border:1px solid #fff4;border-radius:3px}#hands-on button:hover{background:#fff}#hands-on button:active{background:#b6c7ab}.hands-toolbar{position:absolute;left:28px;right:28px;bottom:25px;display:flex;align-items:center;gap:7px}.hands-toolbar #hands-ignition{background:#293b2e;color:#fff6e8}.hands-toolbar #hands-engine-status{margin-right:auto;background:#19231edb;padding:15px;color:#e7edda;font-size:10px;letter-spacing:1px;font-variant-numeric:tabular-nums}#part-in-hand{position:absolute;left:28px;bottom:118px;background:#18271de3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f3f0e3;padding:15px 18px;max-width:460px;border-left:2px solid #cfb477}#part-in-hand b{display:block;font-size:18px;font-weight:400;margin-bottom:7px}#hands-condition{display:block;font-size:8px;letter-spacing:1.8px;color:#c6cfae;margin-bottom:14px}#part-in-hand button{padding:9px 12px;font-size:10px}#part-in-hand div{display:flex;gap:5px}#part-hover{position:absolute;pointer-events:none;background:#18251be8;border-left:2px solid #decc8c;color:#fff7e5;padding:8px 12px;font-size:11px;z-index:4}#hands-reading{position:absolute;left:28px;right:28px;bottom:78px;color:#f7f5e9;font-size:11px;text-shadow:0 1px 4px #000;max-width:700px;line-height:1.5}.hands-active #toast{bottom:285px;max-width:620px;white-space:normal;text-align:center}@media(max-width:700px){.hands-title{left:18px;top:83px}.hands-title small{max-width:240px;line-height:1.5}.hands-toolbar{left:12px;right:12px;bottom:15px;flex-wrap:wrap}.hands-toolbar #hands-engine-status{order:-1;width:100%;padding:9px}.hands-toolbar button{flex:1;padding:10px 8px!important;font-size:9px!important}#part-in-hand{left:12px;bottom:166px;padding:12px;max-width:calc(100% - 24px)}#hands-reading{left:14px;bottom:116px;font-size:10px}#hands-notes{flex-basis:40%}.hands-active #toast{bottom:305px;max-width:90%}}#fire-demo{position:absolute;right:35px;top:79px;background:#742d22ed;color:#fff0d7;padding:9px 13px;font-size:10px;letter-spacing:.7px;border:1px solid #c7814c66;z-index:5}#hazard-alert{position:absolute;top:85px;left:50%;transform:translate(-50%);background:#791d14ef;color:#fff1d4;padding:15px 24px;z-index:8;text-align:center;pointer-events:none}#hazard-alert b,#hazard-alert span,#hazard-alert small{display:block}#hazard-alert b{font-size:11px;letter-spacing:3px}#hazard-alert span{font-size:23px;margin:8px}#hazard-alert small{font-size:10px}#blast-flash{position:absolute;inset:0;pointer-events:none;background:#fff1ba;opacity:0;z-index:30}#death-screen{position:absolute;inset:0;background:linear-gradient(90deg,#200a08ed,#20130bb8);z-index:25;color:#f3e5ce;padding:15vh 8vw;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}#death-screen>span{font-size:10px;letter-spacing:4px;color:#cf7a55}#death-screen h2{font:normal clamp(36px,5vw,76px)/1.1 Georgia,serif;margin:24px 0}#death-screen p{color:#dfc5af}#respawn{margin-top:24px;padding:16px 25px;background:#ead7b9;color:#321c15}#reset-demo{position:absolute;right:30px;top:123px;z-index:8;padding:10px;background:#ece3d5;font-size:11px}.player-dead #fire-demo,.player-dead #hands-on{display:none!important}@media(max-width:700px){#fire-demo{right:15px;top:63px;font-size:8px;padding:7px}#hazard-alert{top:116px;width:85%}#reset-demo{top:90px;right:15px;font-size:9px}}.immersive .intro,.immersive #controls,.immersive footer,.immersive #mechanic-toggle,.immersive #driving-help,.immersive header,.immersive #drive-hud,.immersive .hands-toolbar,.immersive #part-in-hand,.immersive .hands-title,.immersive #hands-reading,.immersive #engine-warning{display:none!important}.immersive .vignette{display:none}.immersive #toast{bottom:84px;background:#17251ce6;color:#f4eddc;font-size:11px;max-width:620px;white-space:normal;text-align:center;border-left:2px solid #bcb887}.immersive #part-hover{font-size:11px}.immersive #world-hint{position:absolute;bottom:25px;left:24px;right:65px;pointer-events:none;color:#f4f0df;text-shadow:0 1px 4px #000,0 0 14px #0008;font-size:11px;line-height:1.7;letter-spacing:.2px}#help-toggle{position:absolute;right:22px;bottom:21px;background:#18241e99;color:#f7f0df;border:1px solid #e8e2ca55;border-radius:50%;width:28px;height:28px;font:16px Georgia;z-index:10}#quiet-help{position:absolute;right:25px;bottom:64px;background:#1b2b22ef;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:25px;color:#f6efda;z-index:12;width:350px;max-width:calc(100% - 36px)}#quiet-help>b{font-size:10px;letter-spacing:2px}#quiet-help p{font-size:12px;color:#dcd9c6;line-height:2}#quiet-help button{font-size:10px;padding:9px;background:#dddcc8;margin:4px;color:#253329}#quiet-help kbd{color:#e9e3cd;border-color:#ccc6}@media(max-width:700px){.immersive #world-hint{left:16px;bottom:24px;font-size:10px}.immersive #toast{bottom:93px;max-width:90%;font-size:10px}#help-toggle{right:14px}.immersive #touch-controls,.immersive.walking #touch-controls{bottom:78px}}
