@font-face{font-family:Mono;src:local("Cascadia Code"),local("Consolas")}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#050b10;color:#e2edef;font:14px Arial,sans-serif}button,select{font:inherit}button{cursor:pointer;color:inherit;border:1px solid #63838666;background:#102329b8;padding:12px 17px;letter-spacing:.08em;font-size:11px;transition:background .15s,border-color .15s}button:hover,button:focus-visible{background:#24434b;border-color:#7ef0e3;outline:none}button:disabled{opacity:.4;cursor:wait}kbd{font:10px Mono,monospace;color:#d5efec;border:1px solid #8fafb54d;padding:3px 5px;border-radius:2px;margin-right:3px}.eyebrow{font:10px Mono,monospace;letter-spacing:.2em;color:#87b6bc}.lead{font-size:15px;line-height:1.65;color:#9db7be}.muted{color:#7b9ba2!important}#game{position:fixed;inset:0;width:100%;height:100%;outline:none;touch-action:none}#hud{pointer-events:none;position:fixed;inset:0}#hud button{pointer-events:auto}.brand{position:absolute;top:15px;left:25px;width:250px;height:99px;overflow:hidden}.brand img{position:absolute;width:380px;height:152px;max-width:none;left:-70px;top:-46px}.brand small{position:absolute;bottom:1px;left:3px;letter-spacing:.18em;font:9px Mono,monospace;color:#acd9df}.brand small span{color:#e56dc4;margin:0 9px}.top-actions{position:absolute;top:24px;right:25px;display:flex;gap:8px;align-items:center}.top-actions button{padding:10px 12px;font-size:10px}.top-actions #fps{font:10px Mono,monospace;color:#95b7bd;margin-right:10px}.top-actions kbd{font-size:9px}.location{position:absolute;left:28px;bottom:300px;display:flex;flex-direction:column;gap:9px;text-shadow:0 2px 8px #000}.location strong{font-size:24px;font-weight:500;letter-spacing:.03em}.location>span:last-child{color:#b1c5c8;font-size:11px}.minimap{position:absolute;bottom:78px;left:28px;width:196px;height:196px;background:#0b1b24de;border:1px solid #729ca354;box-shadow:0 8px 30px #0003}.minimap canvas{width:100%;height:100%}.minimap>span{position:absolute;top:9px;left:92px;font:10px Mono,monospace;color:#93d8d5}.minimap small{position:absolute;bottom:9px;left:0;text-align:center;width:100%;font:9px Mono,monospace;color:#8ab1b8;letter-spacing:.12em}.speed-panel{position:absolute;right:29px;bottom:78px;width:250px;background:linear-gradient(120deg,#102029e6,#08151ee6);padding:20px 22px 17px;border-top:2px solid #a0e7df;border-left:1px solid #9bc6ce29;box-shadow:0 12px 35px #0004;clip-path:polygon(0 0,100% 0,100% 90%,91% 100%,0 100%)}.speed-row{display:flex;align-items:baseline;gap:12px}.speed-row strong{font:300 76px Arial,sans-serif;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.speed-row>span{font:11px Mono,monospace;color:#b6d3d9}.speed-line{height:1px;background:#93c9c644;margin:8px 0 15px}.telemetry{display:flex;justify-content:space-between;font:9px Mono,monospace;color:#bfe2de;letter-spacing:.04em;gap:5px}.suspension{margin:20px 0;display:flex;align-items:center;gap:8px;font:8px Mono,monospace;color:#87aaaf}.suspension>div{height:3px;background:#35484c;flex:1}.suspension i{display:block;height:3px;width:30%;background:#8fe1d2}.suspension b{font-weight:400;min-width:34px}#ride-status{position:absolute;bottom:122px;left:50%;transform:translateX(-50%);text-align:center;max-width:440px;background:#07151c99;padding:11px 23px;border-left:2px solid #82d9d0}#action-label{font:10px Mono,monospace;letter-spacing:.18em;color:#9de4df}#context-help{margin:9px 0 0;color:#c5d8db;font-size:12px;line-height:1.4}.key-strip{position:absolute;bottom:0;width:100%;height:48px;display:flex;align-items:center;justify-content:center;gap:23px;background:#08151de8;border-top:1px solid #91bbc326;font:9px Mono,monospace;color:#9db8bf}.key-strip span{white-space:nowrap}.overlay{position:fixed;inset:0;display:grid;place-items:center;background:linear-gradient(90deg,#031018e8,#06151bbd);backdrop-filter:blur(7px);padding:20px;z-index:10}.overlay[hidden],#intro[hidden],[hidden]{display:none!important}.menu-card{width:min(600px,95vw);text-align:center;padding:25px}.menu-card>.eyebrow{font-size:10px}.menu-logo{position:relative;margin:17px auto 5px;width:420px;height:145px;max-width:100%;overflow:hidden}.menu-logo img{position:absolute;width:650px;max-width:none;left:-115px;top:-83px}.menu-card h1{font-size:23px;font-weight:400;letter-spacing:.09em;margin-top:26px}.menu-card .lead{margin:0 0 23px}.features{display:flex;justify-content:center;gap:18px;font:9px Mono,monospace;color:#8faeb6;margin-bottom:33px}.features span+span{border-left:1px solid #82bcc344;padding-left:18px}.loading{height:2px;background:#4271744a;max-width:410px;margin:auto}.loading i{display:block;width:1%;height:100%;background:#89e9d8;transition:width .25s}#load-status{font:10px Mono,monospace;color:#89b0b8;min-height:22px;margin:12px 0 25px}.primary{border:1px solid #98eade;background:#8ce4d5;color:#10262d;font:600 12px Mono,monospace;letter-spacing:.13em;padding:17px 24px;min-width:260px}.primary:hover{background:#b2f4e8;color:#0c2529}.primary>span{float:right;margin-left:30px}.menu-secondary{display:flex;justify-content:center;gap:10px;margin-top:15px}.menu-secondary button{border:none;font:9px Mono,monospace;color:#93afb5}.build-note{font:10px Mono,monospace;line-height:1.65;color:#6f929d;margin-top:28px}.pause-card{width:min(830px,96vw);max-height:96vh;overflow:auto;padding:35px 40px;background:#0c1c25eb;border:1px solid #77b9bc55;box-shadow:0 20px 70px #0005}.modal-heading{display:flex;align-items:center;justify-content:space-between}.modal-heading button{border:0;font-size:16px;padding:5px 10px}.pause-card h2{font-size:30px;letter-spacing:.02em;font-weight:400;margin-bottom:0}.controls-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:15px 0}.controls-grid h3{font:10px Mono,monospace;letter-spacing:.15em;color:#8edbd5}.controls-grid p{font-size:12px;line-height:1.75;color:#b1c7ce;margin:8px 0}.settings{display:flex;flex-wrap:wrap;gap:16px;padding:20px 0;border-top:1px solid #82b4bd33;border-bottom:1px solid #82b4bd33;align-items:center}.settings label{font-size:11px;color:#a5bfc8;display:flex;gap:8px;align-items:center}.settings input{accent-color:#8ee1d6}.settings select{background:#112c34;color:#c7e1df;border:1px solid #5d999d77;padding:6px}.pause-bottom{display:flex;gap:15px;margin-top:22px}.pause-bottom button{flex:1;min-width:0}#intro{position:fixed;inset:0;z-index:30;background:#000}#intro-canvas{width:100%;height:100%}#skip-intro{position:absolute;right:28px;bottom:25px;color:#739b9f;border:0;background:transparent;font:10px Mono,monospace}#skip-intro span{margin-left:12px;color:#b2d1cc}#toast{position:absolute;top:110px;left:50%;transform:translateX(-50%);padding:12px 22px;background:#0c2630db;border:1px solid #8ac8c45c;color:#c8e9e2;font:11px Mono,monospace;opacity:0;transition:opacity .2s;max-width:80%;text-align:center}.touch-controls{display:none}#error{z-index:50}
@media(max-width:850px){.key-strip{display:none}.minimap{width:125px;height:125px;bottom:25px;left:15px}.minimap>span{left:58px}.location{bottom:170px;left:15px}.location strong{font-size:16px}.speed-panel{bottom:25px;right:15px;width:200px;padding:12px 15px}.speed-row strong{font-size:55px}.top-actions{top:15px;right:10px}.top-actions button{font-size:8px;padding:8px}.top-actions #fps{display:none}.brand{transform:scale(.7);transform-origin:top left;left:14px}.top-actions kbd{display:none}#ride-status{bottom:215px;width:300px;padding:9px 12px}.touch-controls{display:flex;justify-content:space-between;position:absolute;width:100%;top:50%;padding:15px}.touch-controls button{touch-action:none;min-width:54px;min-height:54px;background:#102630b3;font-size:11px}.touch-controls>div{display:flex;gap:8px}.controls-grid{gap:15px}.pause-card{padding:20px}.features{gap:8px;font-size:8px}.features span+span{padding-left:8px}.menu-card h1{font-size:19px}.menu-logo{transform:scale(.8);margin-top:0;margin-bottom:-20px}.menu-card{padding:0}.build-note{font-size:9px}.settings{gap:12px}.pause-card h2{font-size:25px}}
#diagnostics{position:absolute;right:25px;top:80px;max-width:360px;background:#06121de8;color:#a4efdf;border:1px solid #69bdbb;padding:12px;font:11px monospace;pointer-events:auto;max-height:70vh;overflow:auto}
#test-controls{position:absolute;right:25px;top:410px;max-width:280px;background:#06121de8;border:1px solid #69bdbb;padding:10px;pointer-events:auto;display:grid;grid-template-columns:1fr 1fr;gap:5px}#test-controls>span{grid-column:span 2;color:#89b5b8;font:9px monospace;letter-spacing:.08em;padding-bottom:7px}#test-controls button{font-size:9px;padding:9px 5px}

/* Current supplied Cutout artwork, kept as an unmodified transparent PNG. */
.brand{height:95px}.brand img{width:250px;height:auto;left:0;top:0}.menu-logo{height:145px}.menu-logo img{width:420px;height:auto;left:0;top:0}.key-strip{gap:14px;font-size:8px}

.touch-actions,.phone-tip{display:none}
@media(pointer:coarse),(max-width:850px){
 .key-strip{display:none}.brand{left:12px;top:8px;transform:scale(.60);transform-origin:top left}.top-actions{top:10px;right:10px;gap:4px}.top-actions button{padding:9px 7px;font-size:8px}.top-actions #fps,.top-actions kbd{display:none}
 .touch-controls{display:flex;align-items:flex-end;justify-content:space-between;position:absolute;top:auto;bottom:max(12px,env(safe-area-inset-bottom));padding:0 14px;gap:15px;pointer-events:none}.touch-controls .touch-steering{display:flex;gap:8px}.touch-controls .touch-pedals{display:grid;grid-template-columns:repeat(2,62px);gap:7px}.touch-controls button{pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;min-width:62px;min-height:58px;font:10px Mono,monospace;border:1px solid #80c5cd9c;border-radius:8px;background:#0b2233d9;box-shadow:0 3px 18px #0005;padding:8px}.touch-controls button:active{background:#367c8b}.touch-steering button{font-size:22px}.touch-pedals button[data-key="control"]{border-color:#fa5389b0}
 .touch-actions{position:absolute;display:flex;justify-content:center;gap:5px;top:70px;left:10px;right:10px;pointer-events:auto}.touch-actions button{padding:10px 8px;min-height:34px;font-size:8px;background:#0b2132e8}
 .minimap{width:82px;height:82px;left:14px;top:117px;bottom:auto}.minimap>span{left:36px;top:4px}.minimap small{display:none}.location{left:14px;top:209px;bottom:auto;gap:4px}.location .eyebrow,.location>span:last-child{display:none}.location strong{font-size:12px;max-width:140px}
 .speed-panel{width:130px;right:14px;top:117px;bottom:auto;padding:8px 10px}.speed-row{gap:7px}.speed-row strong{font-size:42px}.speed-row>span{font-size:8px}.speed-line{margin:4px 0 7px}.speed-panel .telemetry{font-size:7px}.speed-panel .suspension{margin:10px 0;font-size:6px}.speed-panel .muted{display:none}
 #ride-status{bottom:20px;width:270px;max-width:calc(100vw - 310px);padding:8px 10px;background:#07151c80}#action-label{font-size:8px}#context-help{font-size:10px;margin-top:4px}#toast{top:110px;padding:8px 12px;font-size:9px}
 .phone-tip{display:block;font:10px monospace;color:#8ce4d5}.overlay{overflow:auto;backdrop-filter:blur(3px)}.menu-card{padding:10px}.menu-card h1{margin-top:8px}.menu-card .features{margin-bottom:15px}.menu-card .lead{margin-bottom:8px}.menu-logo{width:min(360px,80vw);height:100px;transform:none;margin:0 auto}.menu-logo img{width:100%;height:auto}.build-note{margin-top:14px}.primary{min-height:48px}
}
@media(max-width:600px){#ride-status{bottom:158px;max-width:90vw;width:280px}.touch-actions{gap:3px}.touch-actions button{padding:8px 6px;font-size:7px}.top-actions #diagnostics-button{display:none}.controls-grid{grid-template-columns:1fr;gap:5px}}
@media(max-height:500px) and (pointer:coarse),(max-height:500px) and (max-width:850px){.menu-logo{height:70px;width:240px}.menu-card h1{font-size:16px;margin:5px}.menu-card>.eyebrow,.menu-card .features,.menu-card .build-note{display:none}.menu-card .lead{font-size:12px}.menu-card .loading{margin-top:8px}#load-status{margin:6px 0 10px}.menu-secondary{margin-top:8px}.menu-card .primary{padding:12px 20px}.phone-tip{margin:6px 0}.overlay{padding:10px}.location{top:203px}.touch-controls button{min-height:50px}.touch-controls .touch-pedals{grid-template-columns:repeat(2,58px)}.touch-actions{top:60px}.minimap,.speed-panel{top:104px}}

.creator-credit{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);font:700 12px Segoe UI,Arial,sans-serif;color:#edfcff;letter-spacing:.04em;text-shadow:-1px 0 #00e9f5,1px 1px #ff009c;pointer-events:none}
