.flight-tech{display:flex;align-items:center;gap:10px;padding:9px 16px;background:linear-gradient(100deg,#0b202c,#122637);border-top:1px solid #73909d3c;user-select:none;touch-action:none}.weapon-ring{position:relative;flex:0 0 44px;height:44px;--ring-color:#9affd9}.weapon-ring svg{width:44px;height:44px;overflow:visible;filter:drop-shadow(0 0 4px #79eac02a)}.upgrade-track,.upgrade-segment{fill:none;stroke:#2c4653;stroke-width:3;stroke-linecap:round;stroke-dasharray:15 91.814}.upgrade-segment{stroke:var(--ring-color);stroke-width:3.5;stroke-dasharray:0 106.814;opacity:0;transition:stroke-dasharray .26s ease-out,opacity .12s}.upgrade-segment.filled{stroke-dasharray:15 91.814;opacity:1}.weapon-ring>span{position:absolute;inset:0;display:grid;place-items:center;color:#dff6e8;font:14px var(--mono)}.weapon-tech-label{flex:1;min-width:0}.weapon-tech-label>span{display:block;font:7px var(--mono);letter-spacing:.8px;color:#86a9b9}.weapon-tech-label b{color:#a7d3be;margin-left:6px;font-weight:400}.weapon-tech-label>strong{display:block;font:9px var(--mono);letter-spacing:.5px;color:#e4e7d7;margin-top:6px;white-space:nowrap}.power-tech{min-width:128px;display:flex;flex-direction:column;align-items:stretch;gap:5px}.power-select{border:0;padding:0;text-align:right;background:none;font:8px var(--mono);letter-spacing:.6px}.power-trigger{position:relative;overflow:hidden;border:1px solid #6b91a45c;border-radius:3px;background:#091a25;min-height:24px;color:#bdd2d9;font:7px var(--mono);letter-spacing:.7px}.power-trigger>i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#426d7640,#81d1c755);transition:width .12s linear}.power-trigger>span{position:relative}.power-trigger:disabled{cursor:default;opacity:1}.power-trigger.ready{border-color:#97ead9;color:#dbfff1;box-shadow:0 0 14px #81e6c924}.power-trigger.active{border-color:#bad8ff;color:#d7e6ff}.weapon-ring.collect{animation:fragment-arrival .36s ease-out}.weapon-ring.level-up{animation:weapon-complete 1s ease-out}.power-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:24px}.power-card{padding:20px 18px;border:1px solid #3b596b;background:linear-gradient(150deg,#173447,#0a1d2a);text-align:left;color:#cbdce4;border-radius:5px}.power-card.selected{border-color:var(--power-color);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--power-color) 20%,transparent)}.power-emblem{width:46px;height:46px;border:1px solid color-mix(in srgb,var(--power-color) 50%,transparent);display:grid;place-items:center;font:30px var(--mono);color:var(--power-color);margin-bottom:20px;background:#122d3c}.power-card>small{display:block;font:7px var(--mono);letter-spacing:1px;color:var(--power-color)}.power-card>strong{display:block;font:22px var(--display);color:#e8f0eb;margin:8px 0}.power-card>p{font:11px/1.7 var(--body);color:#a3becb;margin:8px 0 20px}.power-card>b{font:7px var(--mono);color:var(--power-color);letter-spacing:.4px}.flight-paused .weapon-ring{animation-play-state:paused}@keyframes fragment-arrival{0%{filter:brightness(1.7);transform:scale(.9)}55%{transform:scale(1.08)}100%{transform:scale(1)}}@keyframes weapon-complete{0%,35%{filter:brightness(1.8) drop-shadow(0 0 8px #8dffd5);transform:scale(1.1)}100%{filter:brightness(1);transform:scale(1)}}@media(max-width:720px){.flight-tech{padding:7px 14px;gap:8px}.weapon-ring{flex-basis:40px;height:40px}.weapon-ring svg{width:40px;height:40px}.weapon-ring>span{font-size:12px}.weapon-tech-label>span{font-size:7px}.weapon-tech-label>strong{font-size:8px}.power-tech{min-width:123px}.power-select{font-size:7px}.power-trigger{font-size:7px;min-height:22px}.touch-guide span{font-size:7px;letter-spacing:.1px}.in-flight .screen{height:calc(100dvh - 326px - env(safe-area-inset-bottom))}.power-cards{grid-template-columns:1fr}.power-card{padding:17px}.power-emblem{float:left;margin:0 17px 8px 0}.power-card>p{clear:both;padding-top:8px}.power-card>strong{font-size:25px}}@media(prefers-reduced-motion:reduce){.weapon-ring.collect,.weapon-ring.level-up{animation:none}.upgrade-segment,.power-trigger>i{transition:none}}

.reduced-effects .weapon-ring.collect,.reduced-effects .weapon-ring.level-up{animation:none}.reduced-effects .upgrade-segment,.reduced-effects .power-trigger>i{transition:none}

/* The flight console budgets space for its entire instrument stack. Keeping
   this desktop-only preserves the mobile touch layout and its existing height. */
@media (min-width:721px) {
  .in-flight { --flight-play-height:clamp(330px,calc(100dvh - 358px),840px); }
  .in-flight .game-console { display:flex;flex-direction:column; }
  .in-flight .screen { order:0;flex:none;height:var(--flight-play-height);min-height:0;aspect-ratio:600/840; }
  .in-flight .flight-tech { order:1;flex:none;padding:7px 12px;gap:9px; }
  .in-flight .weapon-ring { flex-basis:40px;height:40px; }
  .in-flight .weapon-ring svg { width:40px;height:40px; }
  .in-flight .weapon-ring>span { font-size:12px; }
  .in-flight .power-tech { min-width:118px; }
  .in-flight .control-deck { order:2;flex:none;gap:12px;padding:7px 12px; }
  .in-flight .control-label { font-size:7px;margin-bottom:4px; }
  .in-flight .steer-pad,.in-flight .throttle-buttons,.in-flight .fire-button { height:32px; }
  .in-flight #stick { width:25px;height:25px;left:calc(50% - 12.5px);top:2px; }
  .in-flight #stick i { width:8px;height:8px; }
  .in-flight .steer-pad>span { font-size:20px; }
  .in-flight .throttle-buttons { padding:3px; }
  .in-flight .throttle-buttons button { font-size:11px; }
  .in-flight .fire-section { padding-top:0; }
  .in-flight .fire-button { font-size:20px; }
  .in-flight .fire-button span { font-size:9px; }
  .in-flight .autofire { font-size:7px;margin-top:5px; }
  .in-flight .touch-guide { order:3;flex:none; }
  .in-flight .ordnance-deck { order:4;flex:none;gap:8px;padding:8px 12px; }
  .in-flight .ordnance-label { font-size:7px;margin-bottom:5px; }
  .in-flight .missile-slot { padding:4px 5px;gap:4px; }
  .in-flight .missile-slot>i { font-size:12px; }
  .in-flight .missile-slot>b { font-size:7px; }
  .in-flight .ordnance-button { width:34px;padding:7px 0;font-size:0;flex:none; }
  .in-flight #launch-missile::after { content:'M ↑';font:9px var(--mono); }
  .in-flight #drop-mine::after { content:'B ↓';font:9px var(--mono); }
  .in-flight .mine-inventory { padding-left:8px;min-width:34px; }
  .in-flight .mine-inventory>strong { font-size:13px;margin-top:5px; }
  .in-flight .radio-caption { order:5;flex:none;font-size:9px;line-height:1.5;padding:7px 12px; }
  .in-flight .console-footer { order:6;flex:none;padding:8px 12px; }
  .in-flight #game-console:fullscreen { --flight-play-height:calc(100dvh - 240px);width:100vw;height:100dvh;max-height:100dvh;border:0;background:radial-gradient(ellipse at 50% 30%,#132a35,#07141d 65%); }
  .in-flight #game-console:fullscreen>.screen,
  .in-flight #game-console:fullscreen>.flight-tech,
  .in-flight #game-console:fullscreen>.control-deck,
  .in-flight #game-console:fullscreen>.touch-guide,
  .in-flight #game-console:fullscreen>.ordnance-deck,
  .in-flight #game-console:fullscreen>.radio-caption { width:min(100%,calc(var(--flight-play-height)*5/7));margin-inline:auto; }
  .in-flight #game-console:fullscreen .screen { height:var(--flight-play-height);aspect-ratio:600/840; }
}
@media (min-width:1050px) {
  .in-flight .cockpit { grid-template-columns:210px minmax(0,calc(var(--flight-play-height)*5/7 + 2px)) 210px; }
}
@media (min-width:1050px) and (max-height:850px) {
  .in-flight { --flight-play-height:clamp(300px,calc(100dvh - 336px),840px); }
  .in-flight .cockpit { grid-template-columns:190px minmax(0,calc(var(--flight-play-height)*5/7 + 2px)) 190px; }
}
@media (min-width:721px) and (max-width:1049px) {
  .in-flight .cockpit { grid-template-columns:180px minmax(0,calc(var(--flight-play-height)*5/7 + 2px));justify-content:center; }
}
