:root{font-family:SFMono-Regular,Cascadia Mono,Roboto Mono,monospace;line-height:1.5;font-weight:400;color-scheme:light dark;color:#e7fff8eb;background-color:#020607;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:3px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.card{padding:2em}#app{min-height:100vh}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}body{margin:0;background:radial-gradient(circle at 50% 45%,rgba(27,109,97,.2),transparent 36%),linear-gradient(135deg,#020607,#071113 45%,#030708);color:#8fffe6;font-family:SFMono-Regular,Cascadia Mono,Roboto Mono,monospace}#app{position:relative;min-height:100vh;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));display:flex;flex-direction:column;align-items:center;box-sizing:border-box}.controls-container{position:relative;width:100%;max-width:1800px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:10px;padding:10px 12px;background:#031618d1;border:1px solid rgba(0,255,204,.38);box-shadow:0 0 24px #00ffcc14,inset 0 0 28px #00ffcc0d;box-sizing:border-box}.sector-title{display:flex;flex-direction:column;flex:1 1 300px;min-width:240px;text-transform:uppercase}.scope-name{color:#e7fff8;font-size:18px;font-weight:700}.scope-subtitle{color:#8fffe6a3;font-size:12px;letter-spacing:0}.radar-container{position:relative;width:100%;max-width:1800px}canvas{border:1px solid rgba(0,255,204,.56);background:#061212;box-shadow:0 0 0 1px #bcffee14,0 20px 80px #00000073,inset 0 0 80px #00ffcc0f;display:block;width:100%;max-width:100%;height:auto;aspect-ratio:3 / 2;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.command-box{position:absolute;top:60px;left:50%;transform:translate(-50%);background-color:#001010;color:#0fc;padding:10px 20px;font-size:18px;border:1px solid #00ffcc;border-radius:8px;z-index:10}.speed-control{color:#8fffe6;z-index:10;display:flex;align-items:center;flex:0 1 auto;flex-wrap:wrap;gap:6px}.speed-control span{margin-right:4px}.speed-segments{display:grid;grid-template-columns:repeat(4,48px);border:1px solid rgba(0,255,204,.45);border-radius:3px;overflow:hidden}.speed-control button{margin:0;background:#002022e6;border:0;border-right:1px solid rgba(0,255,204,.28);color:#8fffe6;padding:5px 6px;cursor:pointer;width:48px}.speed-control button:last-child{border-right:0}.speed-control button.active{background-color:#8fffe6;color:#031112}.game-controls{z-index:10;display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:10px;align-items:center}.transport-controls{display:contents}.game-controls button{background:linear-gradient(180deg,#0d3031f2,#021315f2);border:1px solid rgba(0,255,204,.48);color:#d9fff7;padding:6px 12px;cursor:pointer;border-radius:3px;text-transform:uppercase}.game-controls button.start-control:not(:disabled){border-color:#59ffbeb8}.game-controls button.pause-control:not(:disabled){border-color:#ffd05cb8;color:#fff0bd}.game-controls button.end-control:not(:disabled){border-color:#ff7373ad;color:#ffd2d2}.settings-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px}.settings-icon{font-size:19px;line-height:1}.settings-panel{position:absolute;z-index:80;top:calc(100% + 7px);right:12px;width:min(540px,calc(100% - 24px));padding:11px;border:1px solid rgba(0,255,204,.58);border-radius:4px;background:#021214f7;box-shadow:0 16px 42px #00000094,inset 0 0 30px #00ffcc0a;box-sizing:border-box}.settings-heading{display:flex;align-items:center;justify-content:space-between;min-height:30px;margin-bottom:9px;padding-bottom:7px;border-bottom:1px solid rgba(143,255,230,.18);color:#e7fff8;font-size:13px;font-weight:700;text-transform:uppercase}.settings-close{width:30px;height:30px;padding:0;border:0;background:transparent;color:#8fffe6;font-size:22px;line-height:1;cursor:pointer}.settings-grid{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(250px,1.2fr);gap:10px}.settings-panel .difficulty-select,.settings-panel .airport-select,.settings-panel .speed-control{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:5px;min-width:0;color:#8fffe6c2;font-size:11px;text-transform:uppercase}.settings-panel .difficulty-select select,.settings-panel .airport-select select{width:100%;max-width:none;min-width:0}.settings-panel .speed-control{grid-column:1 / -1}.settings-panel .speed-control>span{margin:0}.settings-panel .speed-segments{width:100%;max-width:none;grid-template-columns:repeat(4,minmax(44px,1fr))}.settings-panel .speed-control button{width:auto;min-height:36px}button,select{touch-action:manipulation}#app.touch-ui .game-controls button,#app.touch-ui .difficulty-select select,#app.touch-ui .airport-select select,#app.touch-ui .speed-control button,#app.touch-ui .voice-command-button{min-height:44px}.game-controls button:hover{background-color:#00ffcc2e;box-shadow:0 0 16px #00ffcc29}.game-controls button:disabled{opacity:.5;cursor:not-allowed}.difficulty-select,.language-select,.airport-select{display:flex;align-items:center;gap:5px;color:#8fffe6}.difficulty-select select,.language-select select,.airport-select select{background-color:#031719;color:#d9fff7;border:1px solid rgba(0,255,204,.5);border-radius:3px;padding:5px;cursor:pointer;max-width:260px}.difficulty-select select:disabled,.language-select select:disabled,.airport-select select:disabled{opacity:.5;cursor:not-allowed}.difficulty-select select option,.language-select select option,.airport-select select option{background-color:#001010;color:#0fc}.language-select{margin-left:15px}.comm-container{position:relative;width:100%;margin-top:10px;display:flex;flex-direction:column}.communication-log{position:relative;width:100%;background-color:#021113e0;border:1px solid rgba(0,255,204,.42);border-radius:4px;padding:10px;color:#bfffee;max-height:120px;overflow-y:auto;z-index:20;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start}.log-entry{margin:5px 0;line-height:1.5;min-height:1.5em;width:100%;text-align:left}.voice-command-container{position:absolute;bottom:10px;right:20px;display:flex;align-items:center;gap:10px;z-index:30}.voice-command-button{background-color:#062c2d;border:2px solid rgba(0,255,204,.75);color:#e7fff8;padding:8px 16px;font-size:14px;font-weight:700;width:66px;height:40px;border-radius:3px;cursor:pointer;outline:none;transition:all .3s;display:flex;align-items:center;justify-content:center}.voice-command-button:hover{background-color:#075254}.voice-command-button.active{background-color:#ff4747;border-color:#ffb1b1;color:#fff;transform:scale(1.1)}.recording-indicator{color:#f33;font-weight:700;animation:blink 1s infinite;position:absolute;top:-20px;right:0}.recognized-text{color:#e7fff8;max-width:300px;white-space:normal;overflow:visible;text-overflow:initial;text-align:left;word-wrap:break-word}.voice-panel{min-width:260px;max-width:380px;padding:8px 10px;background:#000a0cd6;border:1px solid rgba(0,255,204,.35);border-radius:4px;box-sizing:border-box}.voice-status{color:#8fffe6ad;font-size:11px;text-transform:uppercase;margin-bottom:3px}@keyframes blink{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.communication-log::-webkit-scrollbar{width:8px}.communication-log::-webkit-scrollbar-track{background:#00101080}.communication-log::-webkit-scrollbar-thumb{background:#00ffcc80;border-radius:4px}.communication-log::-webkit-scrollbar-thumb:hover{background:#00ffccb3}.keyboard-hint{position:absolute;bottom:-20px;right:0;font-size:12px;color:#0fc;opacity:.7}@media (max-width: 980px){#app{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.controls-container{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:stretch;gap:8px;margin-bottom:8px;padding:8px}.sector-title{align-self:center;min-width:0}.game-controls{width:auto;gap:8px}.speed-control{flex-wrap:wrap;width:100%;justify-content:space-between}.game-controls button,.difficulty-select select,.airport-select select,.speed-control button,.voice-command-button{min-height:42px}.speed-segments{flex:1 1 220px;grid-template-columns:repeat(4,minmax(44px,1fr));max-width:320px}.speed-control button{width:auto}.voice-command-container{position:relative;right:auto;bottom:auto;margin-top:10px;justify-content:flex-end}}@media (max-width: 600px){#app{padding:max(4px,env(safe-area-inset-top)) max(4px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left))}.controls-container{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:7px}.scope-name{overflow:hidden;font-size:12px;white-space:nowrap;text-overflow:ellipsis}.scope-subtitle{display:none}.game-controls{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:7px}.transport-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid rgba(0,255,204,.44);border-radius:4px;background:#00ffcc3d}.transport-controls .start-control,.transport-controls .pause-control,.transport-controls .end-control{width:100%;min-width:48px;padding:6px 4px;border:0;border-radius:0;min-width:0}.settings-toggle{width:46px;padding:0}.settings-label{display:none}.settings-panel{top:calc(100% + 5px);right:7px;width:calc(100% - 14px);padding:9px}.settings-grid{grid-template-columns:minmax(0,1fr);gap:9px}.settings-panel .speed-control{grid-column:auto}.game-controls>.difficulty-select,.game-controls>.airport-select{min-width:0;min-height:48px;display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px;padding:4px 5px 4px 10px;border:1px solid rgba(143,255,230,.2);border-radius:4px;background:#021b1db8;box-sizing:border-box}.difficulty-select select,.airport-select select{flex:1;min-width:0;max-width:none}.speed-control{align-items:stretch;gap:7px;padding-top:2px}.speed-control>span{width:100%;color:#8fffe6b3;font-size:11px;text-transform:uppercase}.speed-segments{width:100%;max-width:none}.communication-log{max-height:88px;padding:7px;font-size:11px}.voice-command-container{width:100%;gap:6px}.voice-panel{flex:1;min-width:0;max-width:none}}@media (max-width: 420px){.scope-name{font-size:11px}.game-controls{grid-template-columns:minmax(0,1fr) 44px;gap:4px}.transport-controls .start-control,.transport-controls .pause-control,.transport-controls .end-control{min-width:44px;font-size:11px}.settings-toggle{width:44px}}@media (max-width: 980px) and (orientation: landscape) and (max-height: 600px){.controls-container{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,2fr)}.sector-title{align-self:center}.game-controls{display:flex;flex-wrap:wrap}.game-controls button,.difficulty-select select,.airport-select select,.speed-control button{min-height:36px}.speed-control{grid-column:1 / -1}.comm-container{margin-top:6px}}@media (pointer: coarse){.game-controls button,.difficulty-select select,.airport-select select,.speed-control button,.voice-command-button{min-height:44px}}@media (min-width: 601px) and (max-width: 1180px){#app.touch-ui .controls-container{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:center;gap:8px}#app.touch-ui .sector-title,#app.touch-ui .speed-control{width:100%;min-width:0}#app.touch-ui .game-controls{width:auto;min-width:0}#app.touch-ui .game-controls{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:8px}#app.touch-ui .transport-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid rgba(0,255,204,.44);border-radius:4px;background:#00ffcc3d}#app.touch-ui .transport-controls button{width:100%;min-width:0;border:0;border-radius:0}#app.touch-ui .game-controls button,#app.touch-ui .difficulty-select select,#app.touch-ui .airport-select select,#app.touch-ui .speed-control button,#app.touch-ui .voice-command-button{min-height:44px}#app.touch-ui .difficulty-select,#app.touch-ui .airport-select{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;padding-left:9px;border:1px solid rgba(143,255,230,.2);border-radius:4px;background:#021b1db8}#app.touch-ui .difficulty-select select,#app.touch-ui .airport-select select{flex:1;min-width:0;max-width:none}#app.touch-ui .speed-control{justify-content:flex-start}}
