:root{color-scheme:dark;--bg:#0b0c14;--panel:#11121e;--border:#ffffff0e;--muted:#828391;--text:#efedf7;--accent:#c1a5ff;--soft:#a5a1b7;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#1e183725,transparent 55%),var(--bg);color:var(--text);font-size:14px;line-height:1.5}button,a,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.35}button,a,select{outline-offset:5px}button:focus-visible,a:focus-visible,select:focus-visible,.game-stage:focus-visible{outline:2px solid var(--accent)}button{color:inherit}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}a{color:inherit;text-decoration:none}.svg-definitions{position:absolute;width:0;height:0;overflow:hidden}.app-shell{max-width:1392px;padding:0 48px;margin:auto}.site-header{height:94px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;font-size:23px;font-weight:650;letter-spacing:-1px}.brand>span:not(.brand-icon):not(.beta){color:var(--accent);font-weight:400}.brand-icon{display:grid;place-items:center;width:36px;height:36px;color:var(--accent);margin-right:10px}.brand-icon svg{height:33px;width:33px}.beta{margin-left:12px;padding:3px 6px;border:1px solid #a08fcd30;border-radius:4px;color:#a49aac;font-size:8px;letter-spacing:1.3px;font-weight:500}.header-actions{display:flex;align-items:center;gap:24px}.language-pair{display:flex;align-items:center;gap:8px;font-size:11px;color:#d7d2e5}.language-pair>span:not(.language-name){border:1px solid #ffffff14;border-radius:5px;padding:3px 5px;font-size:10px}.language-pair svg{width:14px;color:var(--muted)}.language-name{color:var(--muted);margin-left:5px;font-size:12px}.text-button,.icon-button{border:0;background:transparent;display:inline-flex;gap:8px;align-items:center;justify-content:center}.text-button{font-size:12px;color:#a6a3b5;padding:8px 0}.text-button:hover{color:var(--text)}.text-button svg{width:16px;height:16px}.icon-button{width:34px;height:34px;border:1px solid #ffffff12;border-radius:8px;color:#b7b1ca}.icon-button:hover:not(:disabled){background:#ffffff08;color:#fff}.icon-button svg{width:16px;height:16px}.page-heading{display:flex;justify-content:space-between;align-items:center;padding:31px 0 27px}.eyebrow,.small-label{font-size:9px;font-weight:600;letter-spacing:1.7px}.eyebrow{color:#9b92b0;margin:0 0 9px;display:flex;align-items:center;gap:7px}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#b6a2f3;box-shadow:0 0 10px #b6a2f344;flex-shrink:0}h1{font-weight:450;font-size:27px;letter-spacing:-.9px;margin:0}h1 span{color:#9e98ad}.personal-best{display:flex;align-items:center;gap:12px}.best-icon{width:40px;height:40px;display:grid;place-items:center;border:1px solid #b49bff1c;border-radius:50%;color:#c6adf5}.best-icon svg{width:18px;height:18px}.personal-best .small-label{color:#7d798d;font-size:8px;letter-spacing:1.2px;display:block}.personal-best strong{display:block;font-size:20px;letter-spacing:.5px;font-weight:500}.personal-best strong span{font-size:11px;color:var(--muted);font-weight:400}.flight-deck{display:grid;grid-template-columns:246px minmax(0,1fr);border:1px solid #bca9ff1b;border-radius:15px;overflow:hidden;box-shadow:0 16px 90px #0002;background:var(--panel)}.mission-panel{padding:25px 24px 20px;border-right:1px solid #bca9ff12;display:flex;flex-direction:column;background:linear-gradient(160deg,#19172555,transparent 45%)}.panel-label{color:#787386;font-size:8px;letter-spacing:1.6px;display:flex;justify-content:space-between;align-items:center}.tiny-dot{width:4px;height:4px;background:#8fd6b1;border-radius:50%}.mission-emblem{margin-top:30px;display:flex;flex-direction:column;align-items:flex-start;gap:15px}.mission-emblem>svg{width:48px;height:48px;padding:10px;box-sizing:content-box;color:#b6a1ec;border:1px solid #a294d71a;border-radius:18px;background:radial-gradient(circle at 30% 30%,#9f7cf91a,transparent)}.mission-emblem>span{font-size:8px;letter-spacing:1.6px;color:#ad97d5}.mission-panel h2{font-size:23px;font-weight:450;letter-spacing:-.6px;margin:8px 0}.mission-description{color:#858091;font-size:12px;line-height:1.8;margin:0}.mission-config{margin-top:27px}.small-label{color:#777284;font-size:8px;letter-spacing:1.2px}.mission-config label{display:block;margin-bottom:7px}select{width:100%;color:#c4bfd1;background:#ffffff03;border:1px solid #ffffff13;padding:10px 9px;border-radius:6px;font-size:11px}select option{background:#171522}.speed-heading{display:flex;justify-content:space-between;align-items:center;margin-top:20px;margin-bottom:9px}.speed-heading>span:last-child{font-size:8px;color:#787184;letter-spacing:0}.speed-options{display:flex;padding:3px;border:1px solid #ffffff0c;background:#090a1240;border-radius:7px;gap:2px}.speed-options button{border:0;background:transparent;border-radius:4px;flex:1;font-size:10px;padding:7px 0;color:#827d91}.speed-options button.active{background:#30283f;color:#d8c1ff;box-shadow:0 1px 4px #0002}.flight-rules{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.flight-rules>.small-label{display:block;margin-bottom:13px}.flight-rules>div{display:flex;align-items:center;gap:7px;margin:10px 0;font-size:10px;color:#9c96a9}.flight-rules strong{font-size:10px;font-weight:450;color:#a39aaf;margin-left:auto;font-variant-numeric:tabular-nums}.rule-icon{display:grid;place-items:center;height:16px;width:16px;border-radius:50%}.rule-icon svg{width:11px;height:11px;stroke-width:1.5}.correct{color:#a7d5bd;background:#83d8a90b}.wrong{color:#d69baa;background:#ff7ea00a}.miss{color:#b7a4ce;background:#b7a4ce0a}.flight-rules>p{font-size:9px;color:#686374;margin-top:15px}.soundtrack{border-top:1px solid var(--border);padding-top:17px;margin-top:auto;display:flex;align-items:center;gap:10px}.soundtrack-icon{color:#9185aa}.soundtrack-icon svg{width:17px;height:17px}.soundtrack strong{font-size:10px;font-weight:500;display:block;color:#b4acbf}.soundtrack div>span{font-size:8px;color:#6e687e;display:block;margin-top:2px}.equalizer{margin-left:auto;display:flex;align-items:center;gap:2px;height:13px}.equalizer i{height:4px;width:2px;background:#a18cce}.equalizer i:nth-child(2){height:10px}.equalizer i:nth-child(3){height:7px}.equalizer i:nth-child(4){height:12px}.music-playing .equalizer i{animation:equalize .8s ease-in-out infinite alternate}.music-playing .equalizer i:nth-child(2){animation-delay:.3s}.music-playing .equalizer i:nth-child(3){animation-delay:.6s}@keyframes equalize{to{transform:scaleY(.3)}}.game-column{min-width:0;display:flex;flex-direction:column;background:#0c0e1a}.game-toolbar{height:47px;border-bottom:1px solid #b5a0ff12;display:flex;align-items:center;justify-content:space-between;padding:0 22px;gap:10px;font-size:8px;color:#898298;letter-spacing:1.2px;background:#10111c}.game-toolbar>span{display:flex;align-items:center;gap:7px}.game-toolbar>div{display:flex;align-items:center;gap:17px}.game-toolbar .icon-button{height:26px;width:26px;border-radius:5px}.game-toolbar .icon-button svg{width:12px;height:12px}.game-stage{height:550px;position:relative;overflow:hidden;touch-action:none;isolation:isolate}.game-stage:focus{outline-offset:-3px}#space,.sky-layer{position:absolute;inset:0;width:100%;height:100%;display:block}.sky-layer{pointer-events:none}.sector-label{position:absolute;top:22px;right:23px;font-size:7px;letter-spacing:1.5px;color:#827498;text-align:right}.sector-label span{display:block;font-size:6px;letter-spacing:1px;margin-top:4px;color:#514c68}.launch-content{position:absolute;top:50px;left:42px;pointer-events:none}.launch-tag{font-size:8px;letter-spacing:1.8px;color:#aca0c5;display:flex;align-items:center;gap:6px}.launch-tag svg{width:12px;height:12px}.launch-content h2{font-size:49px;line-height:1.12;font-weight:450;letter-spacing:-2px;margin:17px 0 14px;background:linear-gradient(140deg,#f4efff,#c4b3e2);background-clip:text;-webkit-text-fill-color:transparent}.launch-content p{font-size:12px;line-height:1.85;color:#9591aa;margin:0 0 21px}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:33px;padding:12px 20px;border:1px solid #dcc9ff75;background:#c3a8f7;color:#241b38;border-radius:7px;font-size:12px;font-weight:600;box-shadow:0 0 28px #b69be516;transition:background .15s,transform .15s;pointer-events:auto}.primary-button svg{width:16px;height:16px;stroke-width:1.8}.primary-button:hover{background:#d3bbff;transform:translateY(-1px)}.primary-button:active{transform:translateY(0)}.launch-note{display:block;font-size:8px;color:#777087;margin-top:12px}.stage-coordinates{position:absolute;bottom:16px;left:22px;right:22px;display:flex;justify-content:space-between;font:7px ui-monospace,monospace;letter-spacing:1px;color:#696183;pointer-events:none}.game-controls{height:51px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:#11121e;border-top:1px solid #bca9ff13;color:#6f687f;font-size:9px;gap:8px}.steering-controls{display:flex;align-items:center;gap:5px}.steering-controls>span{margin-left:7px}kbd,.key-button{font-family:inherit;border:1px solid #b7a0d928;border-radius:4px;background:#ffffff03;color:#b5a8cc;font-size:10px;line-height:1;display:inline-grid;place-items:center;min-width:21px;height:22px;font-weight:400}.key-button{width:25px;font-size:13px}.key-button:hover{background:#b9a4ed22}.steering-controls kbd{height:19px;min-width:18px;font-size:9px}.pause-hint kbd{font-size:8px;min-width:39px;height:20px;margin-right:4px}.touch-hint{color:#6f687f;font-size:9px}.page-footer{display:flex;justify-content:space-between;align-items:center;padding:20px 0 28px;font-size:9px;color:#5f596f;gap:20px}.page-footer>span:first-child{display:flex;align-items:center;gap:7px}.page-footer svg{width:12px;height:12px;color:#8876a5}.game-hud{position:absolute;top:25px;left:27px;right:27px;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none}.game-hud .hud-stat{min-width:54px;padding-top:9px}.hud-stat>span{font-size:7px;letter-spacing:1.6px;color:#9485ad;display:block}.hud-stat>strong{font-size:22px;font-weight:450;color:#eee7ff;display:flex;align-items:center;gap:4px;margin-top:3px;font-variant-numeric:tabular-nums}.hud-stat svg{width:15px;height:15px;color:#c3a3ff}.streak{text-align:right}.streak>strong{justify-content:flex-end}.word-prompt{text-align:center;padding:12px 28px 14px;background:linear-gradient(130deg,#201a364a,#1d1c354a);border:1px solid #c6a5ff24;border-radius:10px;backdrop-filter:blur(12px);min-width:195px}.word-prompt>span{font-size:7px;letter-spacing:1.5px;color:#a497bc;display:block}.word-prompt>strong{font-size:34px;line-height:1.3;letter-spacing:-1px;font-weight:450;margin-top:7px;display:block}.in-flight .sector-label{display:none}.feedback{position:absolute;top:150px;left:50%;transform:translateX(-50%);padding:9px 17px;border:1px solid #a5e7c42b;background:#0f211fdf;border-radius:8px;white-space:nowrap;text-align:center;pointer-events:none;animation:feedback-in .2s ease-out}.feedback[data-result="wrong"],.feedback[data-result="miss"]{border-color:#ff99b02b;background:#251720ef}.feedback strong{font-size:13px;font-weight:500;color:#ade3c5;display:block}.feedback[data-result="wrong"] strong,.feedback[data-result="miss"] strong{color:#efa8b9}.feedback span{display:block;font-size:10px;color:#c3b2c8;margin-top:3px}.approach-label{position:absolute;left:50%;transform:translateX(-50%);bottom:14px;width:150px;text-align:center;pointer-events:none}.approach-label>span{font-size:6px;letter-spacing:1.5px;color:#9083ac}.approach-label>div{height:2px;background:#c2adff15;margin-top:7px;border-radius:3px;overflow:hidden}.approach-label i{display:block;height:100%;width:0;background:#b6a3e2}.screen-overlay{position:absolute;inset:0;background:#090b19c9;backdrop-filter:blur(12px);display:grid;place-items:center;padding:20px;z-index:5}.overlay-card{text-align:center;width:min(100%,440px)}.overlay-orbit{display:inline-grid;place-items:center;width:59px;height:59px;color:#c4a9ff;border:1px solid #c0a5ff29;border-radius:50%;background:radial-gradient(circle,#b8a0ff13,transparent);margin-bottom:16px}.overlay-orbit svg{width:28px;height:28px}.overlay-card .eyebrow{justify-content:center;font-size:8px}.overlay-card h2{font-size:33px;letter-spacing:-1.2px;font-weight:450;margin:10px 0}.overlay-card>p:not(.eyebrow){color:#a297b5;font-size:12px;margin-bottom:23px}.secondary-action{display:flex;margin:12px auto 0;font-size:10px}.result-stats{display:flex;justify-content:center;margin:24px 0;gap:36px}.result-stats strong{display:block;font-size:28px;font-weight:450;letter-spacing:-1px;color:#d0b9ff}.result-stats span{display:block;font-size:7px;letter-spacing:1.4px;color:#8c7ba6;margin-top:5px}.results-card .overlay-orbit{width:45px;height:45px;margin-bottom:7px}.results-card .overlay-orbit svg{width:25px;height:25px}.review-list{max-height:112px;overflow:auto;text-align:left;margin:0 auto 22px;padding:0 12px;max-width:310px;scrollbar-width:thin;scrollbar-color:#a187c644 transparent}.review-list>p{font-size:8px;letter-spacing:1px;color:#8b7e9f;margin:0 0 9px}.review-word{display:flex;justify-content:space-between;border-bottom:1px solid #fff1;padding:5px 0;font-size:11px;color:#c7bdd6}.review-word strong{font-weight:500;color:#ddc7ff}.review-word span span{color:#8f6f8a;font-size:9px}.perfect-note{color:#a8d8be;font-size:12px}dialog{max-width:460px;width:calc(100% - 32px);color:var(--text);border:1px solid #c2a7ff2e;border-radius:16px;background:#151321;padding:32px;box-shadow:0 25px 100px #0007}dialog::backdrop{background:#060611b8;backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:16px;top:16px}dialog h2{font-size:26px;font-weight:450;letter-spacing:-.7px;margin:0 0 24px}dialog .eyebrow{font-size:8px}dialog ol{padding-left:20px;color:#b69bdf}dialog li{padding-left:7px;margin-bottom:18px}dialog li strong{display:block;font-size:13px;color:#ded5ed;font-weight:500}dialog li span{display:block;font-size:12px;color:#91859f;margin-top:4px}.help-tip{font-size:11px;color:#9e90af;line-height:1.8}dialog .primary-button{margin-top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@keyframes feedback-in{from{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}
@media(min-width:1550px){.game-stage{height:610px}.mission-emblem{margin-top:39px}.mission-config{margin-top:36px}.flight-rules{margin-top:34px}}
@media(max-width:1100px){.app-shell{padding:0 28px}.flight-deck{grid-template-columns:215px minmax(0,1fr)}.mission-panel{padding:23px 18px 18px}.language-name{display:none}.game-stage{height:535px}.launch-content{left:28px;top:45px}.launch-content h2{font-size:43px}.game-controls{padding:0 15px}.touch-hint{display:none}.speed-heading>span:last-child{font-size:7px}}
@media(max-width:760px){.app-shell{padding:0 18px}.site-header{height:75px}.brand{font-size:21px}.brand-icon{margin-right:5px}.brand-icon svg{width:28px;height:28px}.header-actions{gap:12px}.header-actions .text-button span,.language-name,.beta{display:none}.header-actions .text-button{padding:5px}.language-pair{gap:5px}.page-heading{padding:24px 0 22px}.page-heading .eyebrow{font-size:7px;letter-spacing:1.2px}h1{font-size:21px;letter-spacing:-.6px}.personal-best{gap:7px}.best-icon{width:32px;height:32px}.personal-best .small-label{font-size:6px}.personal-best strong{font-size:16px}.flight-deck{grid-template-columns:minmax(0,1fr)}.mission-panel{padding:16px 18px;display:grid;grid-template-columns:1fr auto;gap:0 16px;border-right:0;border-bottom:1px solid #bca9ff12;align-items:center}.panel-label,.mission-emblem,.mission-description,.flight-rules,.soundtrack,.mission-panel h2,.mission-config>label,.speed-heading{display:none}.mission-config{display:contents;margin:0}.mission-config select{width:auto;max-width:100%;font-size:10px;padding:8px}.speed-options{width:175px}.speed-options button{font-size:9px;padding:6px 0}.game-stage{height:560px}.game-toolbar{height:39px;padding:0 16px;font-size:7px}.game-toolbar>div{gap:10px}.launch-content{left:27px;top:53px}.launch-content h2{font-size:48px}.launch-content p{font-size:12px}.launch-note{font-size:7px}.sector-label{right:16px;top:17px}.game-controls{height:58px;padding:0 15px}.key-button{width:37px;height:32px}.steering-controls>span{display:none}.touch-hint{display:block}.pause-hint{display:none}.page-footer>span:last-child{display:none}.page-footer{font-size:8px;justify-content:center;text-align:center;padding-top:17px}.game-hud{left:17px;right:17px}.word-prompt{min-width:175px;padding:12px 16px}.word-prompt>strong{font-size:31px}.hud-stat>strong{font-size:19px}.word-prompt>span{font-size:6px}.feedback{top:146px}.game-toolbar .icon-button{height:25px;width:28px}}
@media(max-width:420px){.app-shell{padding:0 12px}h1{font-size:18px}.personal-best .best-icon{display:none}.personal-best strong{font-size:15px}.page-heading .eyebrow{font-size:6px}.brand{font-size:20px}.language-pair{display:none}.header-actions{gap:16px}.game-stage{height:530px}.mission-panel{padding:12px;gap:10px}.speed-options{width:153px}.game-hud .hud-stat{min-width:40px}.word-prompt{min-width:154px;padding:10px 12px}.hud-stat>strong{font-size:18px}.game-hud{left:13px;right:13px}.launch-content{left:23px}.launch-content h2{font-size:44px}.result-stats{gap:25px}.result-stats strong{font-size:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Arcade skin. Pixel typography is bundled locally and works offline. */
@font-face{font-family:'Press Start 2P';src:url('/assets/fonts/PressStart2P-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--accent:#a8b5ff;--panel:#111224;--border:#b1a4ff18}
body{background:radial-gradient(ellipse at 60% 0,#22163e45,transparent 55%),#090b15}
.brand{font-family:'Press Start 2P',monospace;font-size:15px;letter-spacing:-.8px}.brand-icon{color:#9bdcff}.brand-icon svg{filter:drop-shadow(0 0 7px #7894ff55)}.brand>span:not(.brand-icon):not(.beta){color:#b5a1ff}.beta{font-family:ui-monospace,monospace;font-size:8px}
.flight-deck{border-color:#9292da33;border-radius:6px;box-shadow:0 0 0 3px #141426,0 20px 100px #0004}.mission-panel{background:linear-gradient(160deg,#241b3d55,#101120 75%)}.mission-emblem>svg{border-radius:4px;background:#8278ee0d;box-shadow:3px 3px 0 #070b15;color:#a6bfff}.mission-panel h2{font-size:21px}.primary-button{font-family:'Press Start 2P',monospace;font-size:10px;border-radius:2px;padding:16px 20px;background:#bcb0ff;border:1px solid #d5cbff;box-shadow:3px 3px 0 #41345f,0 0 25px #a895ff18}.primary-button:hover{background:#d0c2ff;box-shadow:3px 3px 0 #41345f,0 0 30px #a895ff30}.primary-button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 #41345f}.launch-content{top:42px}.launch-content h2{font-family:'Press Start 2P',monospace;font-size:29px;line-height:1.65;letter-spacing:-1.3px;margin:15px 0 13px;color:#f0edff;background:none;-webkit-text-fill-color:unset;text-shadow:3px 3px #3a2d60}.launch-tag{color:#9ccfff;font-size:7px;letter-spacing:1.3px}.launch-content p{color:#c0b9d2;text-shadow:0 2px 2px #08091b}.launch-note{color:#9c8fb6;text-shadow:0 1px 2px #030514}.launch-content .primary-button{font-size:10px}.game-toolbar{background:#111229;border-bottom-color:#6c93cf33}.game-toolbar .status-dot{background:#78d9ff}.game-toolbar .icon-button{border-color:#a5c6ff2b;border-radius:3px}.game-controls{background:#101123;border-top-color:#8c92cd33}.key-button,kbd{border-radius:2px;border-color:#7f97c544}.key-button{box-shadow:0 2px 0 #070c19}.word-prompt{border-radius:3px;border:2px solid #8296c9;background:linear-gradient(#17203ce6,#0b1229eb);box-shadow:0 0 0 3px #192344,0 0 0 4px #455276,0 5px 24px #0005;backdrop-filter:none;max-width:60%}.word-prompt>span{color:#95c3ed;font-size:6px;letter-spacing:1.5px}.word-prompt>strong{font-family:'Press Start 2P',monospace;font-size:clamp(15px,2.8vw,28px);line-height:1.7;letter-spacing:-1px;color:#f5f7ff;text-shadow:2px 2px #2d4581}.hud-stat>strong{font-family:'Press Start 2P',monospace;font-size:17px;line-height:1.6;text-shadow:2px 2px #26315b;color:#f2cc7a}.hud-stat>span{color:#b5bfda}.hud-stat.streak strong{color:#c8baff}.feedback{border-radius:2px;border-width:1px;background:#0c2422ec;box-shadow:2px 2px #06120e;top:145px}.feedback strong{font-family:ui-monospace,monospace;font-size:14px}.feedback span{font-size:11px}.overlay-card h2{font-family:'Press Start 2P',monospace;font-size:21px;line-height:1.7;letter-spacing:-.8px;color:#d7d6ff;text-shadow:2px 2px #392c5c}.screen-overlay{background:#070c1be6;backdrop-filter:blur(3px)}.overlay-orbit{border-radius:3px;background:#29335344;color:#a9ccff;border-color:#92b5f144;box-shadow:3px 3px #070b18}.result-stats strong{font-family:'Press Start 2P',monospace;font-size:21px;line-height:1.6;color:#ffdc86}.dialog-close{border-radius:2px}dialog{border-radius:4px;border-color:#7388bd66;box-shadow:5px 5px 0 #060713}.icon-button{border-radius:3px}.mission-config select,.speed-options,.speed-options button{border-radius:3px}.speed-options button.active{background:#303354;color:#d7d3ff}.flight-only{display:none}.game-stage:focus-visible{outline:1px solid #a9b9ff66;outline-offset:-2px}

/* The menu preview must allow page swipes; only an active flight owns gestures. */
html{touch-action:manipulation}
.game-stage{touch-action:manipulation}
.game-stage.in-flight{touch-action:none}
@media(any-pointer:coarse){
  body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
  .flight-active .game-controls button,.flight-active .game-toolbar button{touch-action:none}
}

/* Launching turns the flight deck into an immersive, viewport-sized game. */
body.flight-active{overflow:hidden;background:#070c1b}
.flight-active .app-shell{padding:0;margin:0;max-width:none;width:100%;height:100dvh}
.flight-active .site-header,.flight-active .page-heading,.flight-active .mission-panel,.flight-active .page-footer{display:none}
.flight-active main{height:100%}
.flight-active .flight-deck{display:block;border:0;border-radius:0;box-shadow:none;height:100%}
.flight-active .game-column{height:100%}
.flight-active .game-stage{flex:1;height:auto;min-height:0}
.flight-active .game-toolbar{height:45px;flex-shrink:0;padding:0 24px;padding-top:env(safe-area-inset-top)}
.flight-active .game-controls{height:50px;flex-shrink:0;padding:0 24px;padding-bottom:env(safe-area-inset-bottom)}
.flight-active .flight-only{display:inline-flex}
.flight-active .game-toolbar>div{gap:12px}
.flight-active .game-hud{left:32px;right:32px;top:24px}
.flight-active .word-prompt{min-width:230px;padding:12px 30px}
.flight-active .hud-stat{background:#0c1428c9;border:1px solid #8195be55;padding:9px 13px;min-width:94px;box-shadow:2px 2px #070d1a}
.flight-active .approach-label{bottom:18px}
.flight-active .feedback{top:152px}
@media(max-width:760px){.brand{font-size:12px;letter-spacing:-.7px}.launch-content h2{font-size:27px}.launch-content{top:42px}.launch-content p{font-size:12px}.word-prompt>strong{font-size:16px}.hud-stat>strong{font-size:13px}.game-hud .hud-stat{min-width:44px}.flight-active .game-hud{left:15px;right:15px;top:23px}.flight-active .word-prompt{min-width:0;padding:9px 15px;max-width:61%}.flight-active .hud-stat{min-width:60px;padding:7px 8px}.flight-active .hud-stat>span{font-size:6px;letter-spacing:1px}.flight-active .hud-stat>strong{font-size:12px}.flight-active .hud-stat svg{width:12px;height:12px}.flight-active .game-toolbar{padding-left:15px;padding-right:15px;font-size:6px;letter-spacing:.8px}.flight-active .game-toolbar>div{gap:8px}.flight-active .game-controls{padding-left:16px;padding-right:16px;height:57px}.flight-active .feedback{top:135px}.flight-active .feedback strong{font-size:12px}.result-stats{gap:28px}.result-stats strong{font-size:18px}.overlay-card h2{font-size:18px}.results-card{max-width:390px}}
@media(max-width:420px){.launch-content h2{font-size:25px;letter-spacing:-1.4px}.launch-tag{font-size:6px}.launch-content .primary-button{font-size:9px}.launch-note{font-size:7px}.flight-active .game-toolbar #flight-status{font-size:6px}.flight-active .word-prompt{padding:9px 11px}.flight-active .word-prompt>strong{font-size:14px;letter-spacing:-.8px}.flight-active .game-hud{left:11px;right:11px;gap:10px}.flight-active .hud-stat{min-width:56px;padding:7px 7px}.flight-active .hud-stat>strong{font-size:11px}.flight-active .hud-stat.streak{min-width:49px}.flight-active .word-prompt>span{font-size:5px;letter-spacing:1px}}

/* Smooth flight instruments around the pixel hardware. */
:root{--accent:#b6c9ff}
.flight-deck{border-color:#97a6dc2e;border-radius:14px;box-shadow:0 0 0 1px #8e99d408,0 24px 85px #03051488}
.mission-emblem>svg{border-radius:16px;background:radial-gradient(circle at 35% 20%,#6f98ef20,transparent 85%);box-shadow:0 8px 24px #02071025;border-color:#a6b7ed20}
.primary-button{background:linear-gradient(125deg,#dac9ff,#b3c5ff);border-color:#e3d9ff80;border-radius:8px;color:#17213e;box-shadow:0 3px 0 #6e76aa55,0 5px 30px #93a3ff20;transition:background .15s,box-shadow .15s,transform .15s}
.primary-button:hover{background:linear-gradient(125deg,#e7dcff,#c6d7ff);box-shadow:0 3px 0 #6e76aa55,0 6px 35px #97b6ff35}
.primary-button:active{transform:translateY(2px);box-shadow:0 1px 0 #6e76aa55}
.launch-content{isolation:isolate}.launch-content::before{content:"";position:absolute;inset:-27px -35px -24px -27px;z-index:-1;background:radial-gradient(ellipse at 30% 40%,#060c23b0,transparent 75%);pointer-events:none}
.launch-content h2{color:#eff5ff;text-shadow:0 2px 0 #6772a055,0 0 30px #9ba5ff35}
.launch-content p{color:#c5cde1;text-shadow:0 2px 5px #020511}
.game-toolbar{background:linear-gradient(90deg,#0c1121,#111326);border-bottom-color:#acc8ff1a;font-size:9px}
.game-toolbar .icon-button,.icon-button{border-radius:7px;background:#91b4ed05;transition:background .15s,border-color .15s}
.game-toolbar .icon-button:hover:not(:disabled),.icon-button:hover:not(:disabled){background:#a5c8ff16;border-color:#bfd4ff55}
.game-controls{background:#0c1220eb;border-top-color:#acc8ff16;color:#8c9ab6}
.game-controls .key-button,.game-controls kbd{border-radius:5px;border-color:#9aafcf33;background:#98b9e909;box-shadow:none}
.game-controls .touch-hint{color:#8493b2}
.word-prompt{background:linear-gradient(130deg,#18233bf2,#0a1024f7);border:1px solid #b6d2ff40;border-radius:13px;box-shadow:0 0 0 4px #a4caff05,0 10px 35px #03071540,inset 0 1px 0 #d8ecff14;backdrop-filter:none}
.word-prompt>span{font-family:ui-monospace,monospace;font-size:8px;letter-spacing:1.7px;color:#a6c6ec}
.word-prompt>strong{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:37px;font-weight:550;line-height:1.3;letter-spacing:-1px;color:#f4f9ff;text-shadow:0 0 24px #a7cbff2a;margin-top:8px}
.hud-stat>strong{color:#f6df9b;text-shadow:0 0 16px #e7c98330;font-size:18px}
.flight-active .hud-stat{border:1px solid #a1c7ed25;border-radius:9px;background:#0b1424f2;box-shadow:inset 0 1px 0 #cde7ff0b,0 6px 20px #02081535;backdrop-filter:none;padding:10px 13px}
.flight-active .hud-stat>span{font-family:ui-monospace,monospace;font-size:8px;letter-spacing:1.4px;color:#a6b6d3}
.flight-active .word-prompt{padding:12px 33px 15px;min-width:235px}
.flight-active .feedback{top:153px;border-radius:9px;border-color:#9af0d344;box-shadow:0 5px 30px #03141155;background:#0a2322f2;backdrop-filter:none}
.feedback[data-result="wrong"],.feedback[data-result="miss"]{background:#261623ed;border-color:#f2a7c23b}
.screen-overlay{background:#060c1cba;backdrop-filter:blur(15px)}
.overlay-orbit{border-radius:19px;background:radial-gradient(circle at 30% 20%,#759cff20,#18203b44);border-color:#b5d5ff35;box-shadow:0 0 32px #769aff13}
.overlay-card h2{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:34px;font-weight:450;letter-spacing:-1.1px;line-height:1.35;color:#e4efff;text-shadow:none}
.results-card .overlay-orbit{border-radius:14px}.review-list{scrollbar-color:#9cb6e34a transparent}
.result-stats strong{font-family:ui-monospace,monospace;font-size:29px;letter-spacing:-1.2px;font-weight:450}
@media(max-width:760px){.game-toolbar{font-size:8px}.flight-active .game-toolbar{font-size:8px;letter-spacing:.7px}.flight-active .game-toolbar #flight-status{font-size:7px}.flight-active #flight-count{font-size:7px}.flight-active .game-toolbar>div{gap:7px}.flight-active .word-prompt{padding:10px 16px 12px;min-width:0;max-width:60%}.flight-active .word-prompt>strong{font-size:29px;letter-spacing:-.7px}.flight-active .word-prompt>span{font-size:6px;letter-spacing:1.1px}.flight-active .hud-stat{padding:9px 9px;min-width:59px;border-radius:7px}.flight-active .hud-stat>strong{font-size:12px}.flight-active .hud-stat>span{font-size:6px;letter-spacing:.7px}.flight-active .feedback{top:140px}.overlay-card h2{font-size:29px}.result-stats strong{font-size:24px}}
@media(max-width:420px){.flight-active .game-hud{gap:8px}.flight-active .hud-stat{padding:8px 7px;min-width:56px}.flight-active .hud-stat>strong{font-size:11px}.flight-active .word-prompt{padding:10px 11px 12px}.flight-active .word-prompt>strong{font-size:26px}.flight-active .word-prompt>span{font-size:5px;letter-spacing:1px}.flight-active .feedback{top:132px}.flight-active .hud-stat.streak{min-width:49px}}

/* Boost and the evolving soundtrack stay within thumb reach. */
.track-label{display:block;margin:10px 0 7px}.soundtrack{margin-top:15px}#track-select{font-size:10px}#last-review-button{font-size:10px;justify-content:flex-start;margin-top:9px;color:#c0b4e8}
.flight-music{display:none;flex-direction:column;gap:2px;font-size:9px;color:#c3c9df}.flight-music>span:last-child{font-size:7px;color:#7487a8}.flight-active .flight-music{display:flex}
.boost-button{display:none;align-items:center;gap:8px;justify-content:center;border:1px solid #9ebff35c;border-radius:9px;background:linear-gradient(140deg,#1d3158,#19223c);color:#d0e3ff;padding:6px 15px;min-width:145px;touch-action:none;user-select:none;-webkit-user-select:none;box-shadow:inset 0 1px #d6ecff10;transition:border-color .15s,box-shadow .15s,background .15s}
.flight-active .boost-button{display:flex}.boost-button>svg{width:18px;height:18px}.boost-button>span{font-size:9px;letter-spacing:1.2px;line-height:1.3}.boost-button b{font-family:ui-monospace,monospace;font-size:12px;letter-spacing:0;margin-left:5px}.boost-button small{display:block;font-size:7px;font-weight:400;color:#8a9ec3;letter-spacing:.5px;margin-top:2px}.boost-button.engaged{border-color:#b7e6ff;background:linear-gradient(140deg,#305c83,#40335c);box-shadow:0 0 25px #80c6ff35,inset 0 0 15px #96ddff19;color:#f4fbff}.boost-button.engaged small{color:#c5dfff}
.next-level-button{display:block;margin:13px auto 0;border:1px solid #a4bfe740;background:#8eaeef10;border-radius:7px;padding:10px 17px;color:#cadcff;font:500 12px inherit}.next-level-button:hover{background:#8eaeef25}.results-card .result-stats{margin:17px 0}.results-card .review-list{max-height:85px;margin-bottom:17px}.results-card .overlay-orbit{display:none}.results-card .secondary-action{margin-top:8px}.results-card h2{font-size:30px}
@media(max-width:760px){.mission-panel .track-label,.mission-panel #track-select,.mission-panel #last-review-button{display:none}.flight-active .game-controls{height:64px;gap:12px}.flight-active .game-controls .touch-hint{display:none}.flight-active .game-controls .pause-hint{display:none}.flight-active .flight-music{margin-left:auto;font-size:8px;max-width:88px}.boost-button{min-width:118px;padding:7px 9px;flex-shrink:0}.boost-button>svg{width:14px}.boost-button>span{font-size:8px}.boost-button small{font-size:6px}.flight-active .steering-controls{gap:7px}.flight-active .steering-controls .key-button{height:35px;width:34px}.results-card h2{font-size:27px}.results-card .review-list{max-height:100px}}

/* A real lesson space, separate from the flight HUD. */
.lesson-dialog{width:min(1040px,calc(100% - 48px));max-width:1040px;height:min(820px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);padding:27px 30px 0;border:1px solid #a6c3fa32;border-radius:18px;background:radial-gradient(ellipse at 80% 0,#26375644,transparent 60%),#0e1422;box-shadow:0 25px 120px #0009;overflow:hidden}
.lesson-dialog[open]{display:flex;flex-direction:column}.lesson-dialog::backdrop{background:#030716c9;backdrop-filter:blur(14px)}.lesson-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.lesson-header h2{font:450 27px/1.3 Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:0;letter-spacing:-.8px}.lesson-header .eyebrow{font-size:8px;color:#9bb5de;margin-bottom:9px}.lesson-summary{font-size:12px;color:#9eacc5;max-width:750px;line-height:1.8;margin:12px 0 17px}.lesson-filters{display:flex;gap:8px;margin-bottom:21px}.lesson-filters button{border:1px solid #9cb7e32b;border-radius:7px;color:#869ab9;background:transparent;padding:9px 14px;font-size:11px}.lesson-filters button[aria-pressed=true]{color:#e0eaff;background:#9eb8f31b;border-color:#9eb8f35c}.lesson-body{display:grid;grid-template-columns:190px minmax(0,1fr);gap:25px;min-height:0;flex:1;overflow:hidden}.lesson-word-list{overflow:auto;scrollbar-width:thin;scrollbar-color:#9eafd538 transparent;padding-right:12px;display:flex;flex-direction:column;gap:5px;padding-bottom:18px}.lesson-word{flex-shrink:0;display:flex;flex-direction:column;gap:3px;text-align:left;padding:11px 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:#8d9bb4;font:inherit}.lesson-word>span{font-size:10px}.lesson-word strong{font-size:14px;font-weight:450;color:#c7d5ed}.lesson-word.selected{background:#93b4ec10;border-color:#99b8e837}.lesson-word:hover{background:#93b4ec0d}.lesson-study{overflow:auto;scrollbar-width:thin;scrollbar-color:#9eafd538 transparent;padding:0 12px 25px 0}.lesson-card-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:19px 22px 18px;background:linear-gradient(125deg,#23335080,#141e3280);border:1px solid #9bbaf021;border-radius:13px}.lesson-card-heading h3{font-size:35px;font-weight:450;letter-spacing:-.7px;margin:6px 0 2px;line-height:1.4;color:#e5f1ff}.lesson-card-heading p:not(.eyebrow){font-size:14px;margin:0;color:#a6b9d4}.lesson-card-heading .eyebrow{font-size:8px;color:#96b4df;letter-spacing:1px}.lesson-card-heading>span{font-size:9px;max-width:180px;color:#e8abc0;text-align:right;padding-top:4px}.lesson-card-heading>span[data-result=correct]{color:#99d2b8}.lesson-definition,.lesson-grammar,.lesson-context{margin-top:22px}.lesson-study h4{color:#9db4d4;font-size:10px;font-weight:500;letter-spacing:1.2px;text-transform:uppercase;margin:0 0 11px}.lesson-definition p{font-size:12px;line-height:1.9;color:#b1bed4;margin:6px 0}.lesson-definition #lesson-usage{color:#91a0ba}.lesson-form{display:grid;grid-template-columns:110px 1fr 1fr;gap:15px;border-bottom:1px solid #9ebcf010;padding:10px 0;font-size:11px}.lesson-form>span:first-child{color:#7f96b8;font-size:10px}.lesson-form strong{color:#d1dff4;font-weight:450}.lesson-form>span:last-child{color:#9caac0}.lesson-example{border-left:2px solid #8aaee84d;padding:2px 0 2px 14px;margin:12px 0}.lesson-example .example-spanish{font-size:14px;line-height:1.65;color:#cedef4;margin:3px 0}.lesson-example .example-english{font-size:11px;line-height:1.7;color:#7f94b4;margin:4px 0}.lesson-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 0;border-top:1px solid #a6c3fa18;flex-shrink:0;background:#0e1422}.lesson-footer>span{font-size:10px;color:#8296b5}.lesson-footer .primary-button{font:500 11px Inter,-apple-system,sans-serif;gap:12px;padding:12px 16px}.lesson-nav{display:flex;gap:6px;align-items:center}.review-mark{border:1px solid #92b8ec33;background:#92b8ec0b;border-radius:7px;color:#c0d4f1;padding:9px 12px;font-size:10px}.review-mark[aria-pressed=true]{color:#a9dfc5;border-color:#89d4b14d;background:#89d4b10c}#lesson-empty{padding:40px 10px;color:#9eb7d9;font-size:14px}
@media(max-width:760px){.lesson-dialog{width:calc(100% - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);padding:21px 18px 0;border-radius:13px}.lesson-header h2{font-size:23px;max-width:260px}.lesson-header .eyebrow{font-size:7px;line-height:1.7}.lesson-summary{font-size:11px;margin:11px 0 14px}.lesson-filters{margin-bottom:13px}.lesson-filters button{font-size:10px;padding:8px 12px}.lesson-body{display:flex;flex-direction:column;gap:14px}.lesson-word-list{flex-direction:row;max-height:64px;min-height:64px;overflow-x:auto;overflow-y:hidden;padding:0 0 7px;gap:6px}.lesson-word{padding:7px 10px;border-color:#99b8e817;min-width:80px;gap:2px}.lesson-word strong{font-size:12px}.lesson-word>span{font-size:9px}.lesson-study{padding:0 3px 18px 0}.lesson-card-heading{padding:15px;gap:10px;flex-direction:column}.lesson-card-heading h3{font-size:30px}.lesson-card-heading>span{text-align:left;font-size:9px;max-width:none;padding:0}.lesson-card-heading p:not(.eyebrow){font-size:13px}.lesson-definition p{font-size:12px}.lesson-form{grid-template-columns:80px 1fr;gap:4px 12px}.lesson-form>span:last-child{grid-column:2;font-size:10px}.lesson-example .example-spanish{font-size:13px}.lesson-footer{flex-wrap:wrap;gap:10px;padding:13px 0}.lesson-footer>span{font-size:9px;flex:1}.lesson-footer .primary-button{width:100%;padding:10px}.lesson-nav{gap:5px}.review-mark{font-size:9px;padding:9px}.lesson-nav .icon-button{width:28px;height:28px}.lesson-study h4{font-size:9px}.lesson-example .example-english{font-size:10px}}
.lesson-card-heading h3{overflow-wrap:anywhere}
@media(max-width:760px){.lesson-card-heading h3{font-size:clamp(24px,5vw,32px)}}
@media(max-width:760px){.mission-panel #track-select{display:block;grid-column:1/-1;width:100%;max-width:none;font-size:10px;padding:8px;margin-top:4px}.mission-panel #last-review-button:not([hidden]){display:inline-flex;grid-column:1/-1;font-size:10px;margin-top:3px;padding:5px 0}}
