/* Garage games share one readable cockpit and input layout. */
.garage-run{position:fixed;inset:0;z-index:180;background:#0b171b;color:#ece1c6;overflow:hidden;font-family:"DM Sans",sans-serif}
.garage-run.open{display:block}
.garage-run::after{display:none}
.garage-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;outline:none}
.run-header{position:absolute;inset:22px 28px auto;display:flex;justify-content:space-between;align-items:center;gap:16px;z-index:2}
.run-header>div{display:grid;gap:5px}.run-header small{font-size:9px;letter-spacing:.2em;color:#c7b680}.run-header strong{font:20px "Playfair Display",Georgia,serif;letter-spacing:.09em}
.run-header nav{display:flex;gap:8px}
.garage-run button{border:1px solid #d4c59955;background:#0b171bdd;color:#e6dcc0;min-height:44px;padding:12px 16px;font:10px "DM Sans",sans-serif;letter-spacing:.12em;cursor:pointer;touch-action:none;user-select:none}
.garage-run button:disabled{opacity:.4;cursor:default}.garage-run button:hover{border-color:#d4c599}.garage-run button:focus-visible{outline:2px solid #f9dda0;outline-offset:3px}
.run-hud{position:absolute;z-index:2;top:92px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:14px 18px;border:1px solid #c8c6a426;background:#0b171bb8;backdrop-filter:blur(10px)}
.run-hud>div{display:grid;gap:5px;min-width:100px}.run-hud>div:last-child{text-align:right}.run-hud small{font-size:9px;letter-spacing:.17em;color:#b4baa8}.run-hud strong{font:25px Georgia,serif;font-variant-numeric:tabular-nums}
.run-hud .run-progress{display:block;width:min(440px,45vw)}.run-progress>div{display:flex;justify-content:space-between;gap:14px;font-size:9px;letter-spacing:.08em;color:#c7c9b5}.run-progress b{font-weight:400}.run-progress>i{display:block;background:#ced9ba22;height:3px;margin-top:12px}.run-progress em{display:block;height:100%;background:#d6bf83;width:0}
.run-callout{position:absolute;top:196px;left:50%;transform:translateX(-50%);z-index:2;font:12px "DM Sans",sans-serif;letter-spacing:.13em;text-align:center;color:#ffe0a3;background:#0e1f1bcc;padding:12px 20px;border:1px solid #c7a35e55;white-space:nowrap}.run-callout:empty{display:none}
.run-dashboard{position:absolute;left:28px;bottom:105px;display:flex;align-items:end;gap:20px;z-index:2;pointer-events:none;text-shadow:0 2px 12px #000}
.run-speed{display:flex;align-items:baseline;gap:8px}.run-speed strong{font:58px/1 Georgia,serif;font-variant-numeric:tabular-nums}.run-speed small{font-size:9px;letter-spacing:.12em}
.run-condition{display:grid;gap:8px;padding-bottom:4px}.run-condition>span{font-size:15px;letter-spacing:.15em;color:#e6c68d}.run-condition small{font-size:8px;letter-spacing:.08em;color:#ccd0bb}
.run-controls{position:absolute;bottom:max(20px,env(safe-area-inset-bottom));left:28px;right:28px;display:flex;justify-content:space-between;z-index:3;pointer-events:none}.run-controls>div{display:flex;gap:10px;pointer-events:auto}
.run-controls button{width:85px;height:62px;font-size:17px;background:#0a191bd9;border-color:#d4c59966}.run-controls button small{display:block;font-size:8px;letter-spacing:.05em;margin-top:7px;color:#b8c5ad}.run-controls .gas{border-color:#d9bc7d;background:#294535e8}.run-controls button.held{background:#c2aa72;color:#102322}.run-controls button.held small{color:#102322}
.run-card{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);width:min(530px,calc(100% - 36px));max-height:calc(100% - 175px);overflow:auto;padding:30px;background:#0b191cf2;border:1px solid #d8bb7b66;box-shadow:0 20px 100px #0006;backdrop-filter:blur(14px)}
.run-card>small{font-size:9px;letter-spacing:.19em;color:#c7ae77}.run-card h2{font:43px/1.08 "Playfair Display",Georgia,serif;letter-spacing:-.03em;margin:15px 0}.run-card>p{font-size:13px;line-height:1.8;color:#bfc9bc}.run-card button{width:100%;margin-top:10px}.run-card .run-primary{background:#d5bd86;color:#182a25;border-color:#e7d4a6;font-size:11px}.run-card .run-keyboard{font-size:10px;line-height:1.9;color:#97a997;margin:16px 0 0}
.run-stats{display:flex;justify-content:space-between;border-top:1px solid #c8c6a433;padding:16px 0;gap:16px}.run-stats span{display:grid;gap:6px;font-size:9px;letter-spacing:.1em;color:#abb7a1}.run-stats b{font:25px Georgia,serif;color:#e8d7ad}
.garage-run:not([data-phase="running"]) .run-controls,.garage-run:not([data-phase="running"]) .run-dashboard{visibility:hidden}
@media(max-width:700px){
 .run-header{inset:16px 16px auto;gap:8px}.run-header strong{font-size:15px}.run-header small{font-size:7px}.run-header nav{gap:5px}.run-header nav button{font-size:8px;padding:9px;min-height:44px;letter-spacing:.04em}
 .run-hud{top:80px;left:16px;right:16px;padding:10px;gap:12px}.run-hud>div{min-width:52px}.run-hud strong{font-size:20px}.run-hud small{font-size:7px}.run-hud .run-progress{flex:1;width:auto}.run-progress>div{display:grid;gap:3px;font-size:7px;letter-spacing:.04em}.run-progress>i{margin-top:7px}
 .run-card{padding:23px;max-height:calc(100% - 190px);top:52%}.run-card h2{font-size:35px}.run-card>p{font-size:12px;line-height:1.7}.run-card .run-keyboard{font-size:9px}.run-card>small{font-size:8px}
 .run-callout{top:157px;font-size:10px;letter-spacing:.06em;max-width:90%;white-space:normal;width:max-content;padding:10px 14px}
 .run-controls{left:16px;right:16px;bottom:max(18px,env(safe-area-inset-bottom))}.run-controls>div{gap:7px}.run-controls button{width:64px;height:64px;padding:8px;font-size:15px}.run-controls button small{font-size:7px;letter-spacing:0}
 .run-dashboard{left:18px;bottom:105px;gap:14px}.run-speed strong{font-size:43px}.run-condition>span{font-size:12px}.run-condition small{font-size:7px;max-width:150px;line-height:1.6}
}
@media(max-width:370px){.run-header{inset:12px 12px auto}.run-header strong{font-size:12px}.run-header nav button{font-size:7px;padding:7px}.run-controls{left:12px;right:12px}.run-controls button{width:59px}.run-card{padding:19px}.run-card h2{font-size:30px}}
@media(max-height:550px) and (min-width:600px){.run-header{inset:10px 18px auto}.run-hud{top:66px;left:18px;right:18px;padding:7px 12px}.run-hud strong{font-size:18px}.run-card{top:55%;max-height:calc(100% - 125px);padding:18px;width:540px}.run-card h2{font-size:28px;margin:8px 0}.run-card>p{font-size:11px;margin:8px 0}.run-card .run-keyboard{font-size:8px;margin-top:8px}.run-callout{top:124px}.run-dashboard{bottom:88px}.run-speed strong{font-size:35px}.run-controls{bottom:12px}.run-controls button{height:54px}}

.trail-select{margin-top:18px;display:grid;gap:9px}.trail-select[hidden]{display:none}.trail-select label{font-size:9px;letter-spacing:.14em;color:#c7ae77}.trail-select select{width:100%;min-height:44px;padding:10px;background:#13282b;color:#ece1c6;border:1px solid #d4c59966;font:13px "DM Sans",sans-serif}.trail-select select:focus-visible{outline:2px solid #f9dda0;outline-offset:3px}
