:root{color-scheme:dark;--bg:#030507;--line:#ffffff24;--muted:#8c949d;--accent:#e8f3ef}*{box-sizing:border-box}html,body{margin:0;width:100%;overflow-x:hidden;overscroll-behavior:none;background:var(--bg);font:14px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#e8eded}button,select{font:inherit;color:inherit;border:1px solid var(--line);background:#14191e;border-radius:4px;padding:12px 16px;cursor:pointer}button:focus-visible,select:focus-visible{outline:2px solid #dfeee9;outline-offset:3px}button:disabled{opacity:.3;cursor:default}main{height:100dvh;max-width:1920px;margin:auto;display:grid;grid-template-rows:62px minmax(0,1fr) 106px;padding:max(0px,env(safe-area-inset-top)) max(0px,env(safe-area-inset-right)) max(0px,env(safe-area-inset-bottom)) max(0px,env(safe-area-inset-left))}header{padding:0 28px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:3;border-bottom:1px solid #ffffff0e;background:#05080b}.brand{font-size:14px;letter-spacing:3px;font-weight:650}.brand span{font-weight:300;color:#a9b4bc}.brand small{display:block;font:8px/1.4 monospace;letter-spacing:2.8px;color:#5f6c75}.headeractions{display:flex;gap:8px}.headeractions button{border:0;background:none;font-size:21px;min-width:42px;padding:5px 8px}.headeractions button span{font-size:10px;margin-left:7px;color:var(--muted)}.arena{position:relative;min-height:0;overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:none}.hud{position:absolute;top:22px;left:28px;right:28px;display:flex;justify-content:space-between;gap:12px;pointer-events:none}.hud small{display:block;color:#687883;letter-spacing:2px;font-size:9px}.hud strong{font-weight:500;font-size:11px;letter-spacing:1px}.metrics{display:flex;align-items:center;gap:20px}#time{font:18px monospace;letter-spacing:1px}meter{display:block;width:100px;height:9px;margin-top:5px}meter::-webkit-meter-bar{background:#26313a;border:0;border-radius:0}meter::-webkit-meter-optimum-value{background:#dce9e5}.telemetry{position:absolute;top:82px;left:28px;right:28px;display:flex;justify-content:space-between;color:#91a0a9;pointer-events:none;font:10px monospace;letter-spacing:1px}#altitude{color:#becad0}.scenefoot{position:absolute;bottom:16px;left:28px;right:28px;display:flex;justify-content:space-between;font:9px monospace;letter-spacing:1px;color:#829398}.overlay{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:min(400px,85%);text-align:center;background:linear-gradient(135deg,#10171de8,#070b10ee);border:1px solid #dfe9ee21;border-radius:6px;padding:22px 26px;backdrop-filter:blur(10px);box-shadow:0 20px 80px #0008}.overlay.hidden{display:none}.overlay p:first-child{font:9px monospace;letter-spacing:3px;color:#b3c5c9;margin:0 0 12px}.overlay h2{font-weight:500;font-size:25px;margin:4px 0}.overlay p{font-size:12px;line-height:1.8;color:#a8b6bc;margin:10px 0 18px}.primary{background:#e7eeeb;color:#111a1b;border-color:#e7eeeb;font-weight:600;padding:12px 28px;letter-spacing:1px}.controlrow{display:flex;justify-content:center;gap:16px;padding:12px 24px 18px;background:linear-gradient(#060a0e,#0a0e12);border-top:1px solid #ffffff13;z-index:2}.control{position:relative;display:flex;align-items:center;justify-content:center;gap:25px;width:230px;touch-action:none;user-select:none;-webkit-user-select:none;background:linear-gradient(150deg,#222a30,#10171c);border:1px solid #53626b;border-radius:9px;box-shadow:inset 0 1px 0 #ffffff12,0 4px 0 #000}.control .icon{font-size:32px;font-weight:200}.control b{font-size:13px;font-weight:500;letter-spacing:3px}.control small{display:block;font:9px/1.7 monospace;color:#7f929b;letter-spacing:1px}.control i{position:absolute;height:2px;width:25px;background:#a4b3b8;bottom:9px;opacity:.45}.control.active{background:linear-gradient(140deg,#e2ebe8,#95aeb1);color:#101820;box-shadow:0 0 25px #a6e3ec35}.control.active small{color:#253d46}.control.active i{background:#243a46}.control.jet{border-color:#7c8e94}dialog{max-width:min(440px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;background:#11181e;border:1px solid #64717855;border-radius:10px;color:#e6eeee;padding:25px}dialog::backdrop{background:#010609d9;backdrop-filter:blur(10px)}.menutop{display:flex;align-items:center;justify-content:space-between;font:9px monospace;letter-spacing:3px;color:#7c969f}.menutop button{background:none;border:0;font-size:27px;padding:0 5px}dialog h1,#title{font-size:22px;font-weight:500;letter-spacing:-.5px}dialog p{font-size:12px;color:#9cabb2;line-height:1.7}.levels,.settings,.menuactions{display:flex;gap:8px;margin:14px 0}.levels button,.settings>* , .menuactions>*{flex:1;font-size:11px;white-space:nowrap}.levels .selected{background:#dbe7e2;color:#101c21}.settings select{min-width:0}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:20px 0 10px}summary{cursor:pointer;font-size:12px}details h3{font-size:13px;font-weight:500}details button{font-size:11px;width:100%;margin-top:10px}.quiet{border:0;background:none;color:#758b94;font-size:10px;padding:12px 0}#toast{position:fixed;z-index:10;bottom:120px;left:50%;transform:translateX(-50%);background:#dde9e6;color:#182931;padding:12px 20px;border-radius:5px;display:none;white-space:nowrap;font-size:12px}@media(max-width:650px){main{grid-template-rows:52px minmax(0,1fr) 108px}header{padding:0 16px}.brand{font-size:11px;letter-spacing:2px}.brand small{font-size:6px;letter-spacing:2.5px}.headeractions{gap:2px}.headeractions button{min-width:36px;font-size:21px}.headeractions button span{display:none}.hud{top:16px;left:18px;right:18px}.hud strong{font-size:9px;letter-spacing:.3px}.hud small{font-size:7px;letter-spacing:1.5px}.metrics{gap:12px}#time{font-size:14px}meter{width:58px}.telemetry{top:66px;left:18px;right:18px;font-size:8px;letter-spacing:.3px}.scenefoot{left:18px;right:18px;bottom:12px;font-size:8px}.controlrow{padding:12px 16px 16px;gap:14px}.control{flex:1;width:auto;gap:16px}.control b{font-size:12px;letter-spacing:2px}.control small{font-size:8px}.overlay{top:43%;padding:20px;max-width:320px}.overlay h2{font-size:23px}.overlay p{font-size:11px}.primary{font-size:12px}}@media(max-height:480px) and (orientation:landscape){main{grid-template-rows:42px minmax(0,1fr) 68px}.controlrow{padding:6px 24px}.control{max-width:190px;gap:15px}.control small{display:none}.control .icon{font-size:24px}.control i{display:none}.hud{top:10px}.telemetry{top:46px}.overlay{top:50%;padding:10px 20px;width:370px}.overlay p:first-child{margin-bottom:4px}.overlay h2{font-size:18px}.overlay p{margin:4px 0 8px}.primary{padding:7px 16px}.scenefoot{bottom:6px}}
/* Three independent flight controls retain a separate safe landing view. */
.controlrow{gap:12px}.control{width:210px;gap:20px}.control.brake{border-color:#90aaa6}.overlay #start{display:block;width:100%;min-height:48px}.overlay #choose{display:block;margin:8px auto -8px;padding:8px 12px}.overlay[data-state="failed"]{border-color:#a970615c}.overlay[data-state="cleared"],.overlay[data-state="complete"]{border-color:#9ce7bf66}.overlay[data-state="failed"]>p:first-child{color:#efb5a4}
@media(max-width:650px){.controlrow{gap:9px;padding:10px 12px 14px}.control{min-width:0;gap:3px;flex-direction:column;padding:8px 5px}.control .icon{font-size:24px;line-height:1}.control b{font-size:11px;letter-spacing:2px}.control small{font-size:7px;line-height:1.6}.control i{display:none}.overlay{padding:18px}.overlay p{margin:8px 0 13px}.overlay h2{font-size:21px}.overlay .quiet{font-size:10px}}
@media(max-height:480px) and (orientation:landscape){.control{flex-direction:row;gap:16px}.overlay{max-width:440px;width:440px;padding:10px 20px;top:50%}.overlay #start{min-height:34px}.overlay #choose{padding:3px;margin:1px auto}.overlay h2{font-size:18px}.overlay p{line-height:1.4;margin:4px 0 8px}}
main{grid-template-columns:minmax(0,1fr)}.arena,.controlrow,header{min-width:0}.controlrow .control{flex:0 1 210px}@media(max-width:650px){.controlrow .control{width:auto;flex:1 1 0;min-width:0}}
.levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.levels button{white-space:normal;text-align:left;padding:10px;font-size:11px}.overlay p{line-height:1.65}.hud strong{max-width:180px;display:block}
dialog{width:min(440px,calc(100vw - 28px))}.settings select{padding-left:10px;padding-right:4px}
.levels button{min-height:52px;line-height:1.5}.levels button:disabled{opacity:.6;border-style:dashed;background:#0c1116;color:#7f8b94}.levels button[data-progress="done"]{border-color:#567b6b}.levels button[data-progress="current"]{border-color:#c1d9ce}#progressnote{font-size:11px;line-height:1.7;color:#acbdc5}
.info{max-width:760px;margin:0 auto;padding:56px 16px 72px;color:#c9d4d9;font-size:15px;line-height:1.7}.info h1{font-size:28px;line-height:1.25;font-weight:600;color:#fff;margin:0 0 12px}.info h2{font-size:19px;font-weight:600;color:#fff;margin:40px 0 10px}.info .lead{font-size:17px;color:#dfe8ec}.info ol{padding-left:22px}.info li{margin:8px 0}.info b{color:#fff;font-weight:600}.faq details{margin:0;padding:14px 0;border-top:1px solid var(--line);border-bottom:0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:15px;color:#fff}.faq p{margin:10px 0 0;color:#aebbc1}.info footer{margin-top:48px;font-size:12px;color:#7d8d95}.info a{color:#9fd3ff}
#cue{position:absolute;left:50%;top:26%;transform:translateX(-50%);z-index:2;pointer-events:none;font-size:22px;font-weight:700;letter-spacing:1px;color:#fff;text-shadow:0 2px 12px #000c;white-space:nowrap}#cue:empty{display:none}#cue.go{color:#6ff0a8;animation:cuepulse .5s ease-in-out infinite alternate}@keyframes cuepulse{from{transform:translateX(-50%) scale(1)}to{transform:translateX(-50%) scale(1.12)}}@media(max-width:650px){#cue{font-size:18px;top:22%}}
