/* Roadster / Escape Velocity — automotive arcade shell. */
:root{--paper:#fff;--muted:#929297;--coral:#b9e6f2;--line:#ffffff14;color-scheme:dark}
html,body{background:#030304}
body{font-family:Arial,Helvetica,sans-serif;background:radial-gradient(ellipse at 50% 55%,#102431 0,transparent 60%),#030304;min-height:100svh}
[hidden]{display:none!important}
header{width:min(1120px,calc(100% - 64px));height:76px;min-height:76px;margin:0 auto}
.brand{font-size:15px;letter-spacing:6px;font-weight:700;gap:16px}
.brand-icon{border-color:#b9e6f2}
.brand-icon:before,.brand-icon:after{background:#b9e6f2}
.edition{color:#8e8e96;font-size:8px;letter-spacing:2.5px}
.edition i{background:#b9e6f2;box-shadow:0 0 14px #b9e6f260}
main{width:min(1120px,calc(100% - 64px));display:flex;align-items:center;justify-content:center;padding:0 0 18px;gap:0;flex:1;min-height:0}
.intro{display:none}
.game-wrap{width:100%;max-width:none;position:relative;display:flex;justify-content:center;align-items:center;isolation:isolate;border:1px solid #ffffff15;border-radius:16px;overflow:hidden;background:radial-gradient(ellipse at 50% 92%,#183d5140 0,transparent 58%),linear-gradient(120deg,#0e0e12,#050506 40%,#0a0a0d);box-shadow:0 24px 80px #0008}
.game-wrap:before{content:"MISSION 01 / ESCAPE VELOCITY";position:absolute;left:29px;bottom:30px;z-index:2;font-size:8px;letter-spacing:2px;color:#77777e;writing-mode:vertical-rl;transform:rotate(180deg);pointer-events:none}
.game-wrap:after{content:"ELECTRIC. EXTRATERRESTRIAL.";position:absolute;right:28px;bottom:30px;z-index:2;font-size:8px;letter-spacing:2px;color:#77777e;writing-mode:vertical-rl;pointer-events:none}
.game{width:min(500px,calc((100svh - 140px)*.676923));max-width:100%;max-height:none;aspect-ratio:440/650;border:0;border-radius:0;box-shadow:0 0 110px #0008;background:#060609;flex-shrink:0;margin:0;overflow:hidden}
canvas{width:100%;height:100%;outline:none}
.hud{inset:23px 23px auto;align-items:flex-start}
.score-label{color:#b0b0b8;font-size:7px;letter-spacing:2.2px;margin:0 0 7px}
.score{font-size:36px;font-weight:400;letter-spacing:-2px;line-height:1;color:#fff}
.best{font-size:8px;color:#898991;margin-top:9px;letter-spacing:2px}
.best span{color:#ddd;margin-left:6px}
.hud-buttons{gap:8px}
.icon-btn{width:44px;height:44px;border-radius:50%;border:1px solid #ffffff26;background:#09090cb3;backdrop-filter:blur(8px);transition:background .15s,border-color .15s}
.icon-btn svg{width:15px;height:15px;stroke:#e8e8ec}
.icon-btn:hover{background:#26262d;border-color:#ffffff65}
button:focus-visible{outline:2px solid #fff;outline-offset:4px}
.overlay{background:linear-gradient(180deg,transparent 0%,#03030605 40%,#03030680 64%,#030306d9 100%);padding:24px;color:#fff}
#start{justify-content:flex-start;padding:0}
.start-content{position:absolute;top:53%;left:0;width:100%;margin:0;padding:0 22px}
.over-kicker{font-size:7px;letter-spacing:2.9px;font-weight:700;color:#b9e6f2;margin-bottom:12px}
.overlay h2{font-size:36px;font-weight:800;line-height:1.02;letter-spacing:-1.5px}
#start h2{font-size:clamp(28px,3.2vw,40px);letter-spacing:-1.5px;line-height:1.04}
#start .divider{display:none}
.overlay p{font-size:10px;color:#a7a7b0;line-height:1.6;margin:17px auto 18px;max-width:250px}
.primary{height:48px;min-height:44px;min-width:226px;background:#b9e6f2;color:#fff;border:1px solid #effbff;border-radius:3px;font-size:9px;font-weight:700;letter-spacing:2.2px;padding:15px 24px;box-shadow:0 8px 30px #92c9df26;transition:background .15s,box-shadow .15s}
.primary:hover{background:#d8f3fa;box-shadow:0 8px 40px #b9e6f243;transform:none}
.primary:active{background:#92bfd0;transform:none}
.primary .arrow{margin-left:26px;font-size:15px}
.tiny{font-size:7px;letter-spacing:1.8px;color:#75757e;margin-top:13px}
.flight-number{inset:auto 23px 20px;color:#80808c;font-size:6px;letter-spacing:1.6px}
#paused,#end{background:#030306cf;backdrop-filter:blur(9px)}
#paused .over-kicker,#end .over-kicker{color:#b9e6f2}
.result{margin:24px 0 25px;gap:44px}
.result div{font-size:7px;color:#9696a0;letter-spacing:2px}
.result strong{font-size:40px;font-weight:400;color:#fff;margin-top:3px}
.new-best{color:#b9e6f2!important}
.game-caption{display:none}
footer{width:min(1120px,calc(100% - 64px));min-height:46px;border:0;color:#66666f;font-size:8px;letter-spacing:.2px}
.footer-label{font-size:7px;letter-spacing:1.5px;color:#5e5e68}
@media(min-width:1000px) and (max-height:850px){header{height:66px;min-height:66px}main{display:flex;padding:0 0 12px;gap:0}.game-wrap{max-width:none}.game{width:min(500px,calc((100svh - 124px)*.676923))}footer{min-height:46px}}
@media(max-width:900px){header,footer{width:calc(100% - 40px)}header{height:66px;min-height:66px}main{width:calc(100% - 40px);display:flex;gap:0;padding:0 0 12px}.game-wrap{max-width:none}.game{width:min(500px,calc((100svh - 124px)*.676923))}.edition{font-size:7px;letter-spacing:1.7px}.game-wrap:before{left:15px}.game-wrap:after{right:15px}}
@media(max-width:700px){header{width:calc(100% - 32px);height:57px;min-height:57px}.brand{font-size:12px;letter-spacing:4.5px;gap:10px}.brand-icon{transform:scale(.75) skew(-14deg)}.edition{font-size:6px;letter-spacing:1.3px;gap:7px}main{display:flex;align-items:center;width:100%;padding:0 0 8px}.game-wrap{width:100%;max-width:500px;border-radius:0;border:0;box-shadow:none;background:#030304}.game-wrap:before,.game-wrap:after{display:none}.game{width:min(100%,calc((100svh - 106px)*.676923));margin:0;max-height:none;max-width:100%;border:0;border-radius:0}.hud{inset:18px 18px auto}.score{font-size:30px}.score-label{font-size:6px;letter-spacing:1.8px}.icon-btn{width:44px;height:44px}#start h2{font-size:32px}.start-content{top:52%;padding:0 18px}.over-kicker{font-size:6px;letter-spacing:2.5px;margin-bottom:10px}.overlay p{font-size:10px;margin:14px auto 17px}.primary{height:47px;min-width:210px}.tiny{font-size:6px;margin-top:12px}.flight-number{inset:auto 18px 17px;font-size:5px;letter-spacing:1.4px}footer{width:calc(100% - 32px);min-height:41px;font-size:6px;gap:12px}.footer-label{font-size:5px;letter-spacing:1px}.mobile-instruction{display:inline}.desktop-instruction{display:none}}
@media(max-height:600px){.start-content{top:50%}.overlay p{margin:10px auto 12px;font-size:9px}.over-kicker{margin-bottom:8px;font-size:6px}.tiny{margin-top:9px}.overlay h2,#start h2{font-size:28px}.primary{height:44px;min-height:44px;min-width:190px;padding:12px 19px}.flight-number{bottom:12px}}
html[data-embed="true"],html[data-embed="true"] body{background:#030304;min-height:0;height:100%;overflow:hidden}
html[data-embed="true"] header,html[data-embed="true"] footer,html[data-embed="true"] .intro,html[data-embed="true"] .game-caption{display:none}
html[data-embed="true"] main{width:100%;height:100%;padding:0;margin:0;display:flex}
html[data-embed="true"] .game-wrap{height:100%;width:100%;max-width:none;background:#030304;border:0;border-radius:0;box-shadow:none}
html[data-embed="true"] .game-wrap:before,html[data-embed="true"] .game-wrap:after{display:none}
html[data-embed="true"] .game{width:min(100vw,calc(100svh*.676923));max-width:none;max-height:none;height:auto;border:0;border-radius:0;margin:0}
html[data-embed="true"] .start-content{top:52%;margin:0;padding:0 18px}
html[data-embed="true"] .hud{inset:15px 15px auto}
html[data-embed="true"] .overlay{padding:18px}
html[data-embed="true"] #start{padding:0}
html[data-embed="true"] .overlay h2,html[data-embed="true"] #start h2{font-size:29px}
html[data-embed="true"] .overlay p{font-size:9px;margin:11px auto 13px}
html[data-embed="true"] .primary{height:44px;min-height:44px;min-width:195px;padding:12px 19px}
html[data-embed="true"] .flight-number{inset:auto 16px 13px}
@media(prefers-reduced-motion:reduce){button{transition:none!important}}
