.air-status{padding:9px 12px;border:1px solid #31576a;border-radius:8px;color:#9ddfff;background:#102632;font-size:12px}.air-status.warn{border-color:#876842;color:#ffd197}.air-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.air-metric{border:1px solid var(--border,#293945);border-radius:10px;padding:16px;background:var(--panel,#131e29)}.air-metric strong{display:block;font-size:27px;color:#aadfff;font-variant-numeric:tabular-nums}.air-metric span{font-size:12px;color:#a5b4c5}.air-workspace{display:grid;grid-template-columns:minmax(0,3fr) minmax(225px,1fr);gap:16px}.air-workspace .panel{min-width:0}.air-map-panel{padding:0!important;overflow:hidden}.air-map-panel .panel-heading{padding:16px;margin:0;gap:8px;flex-wrap:wrap}.air-map-panel h2{margin-right:auto}#air-map{height:470px;background:#182b35}.air-legend{display:flex;flex-wrap:wrap;gap:16px;padding:12px 16px;margin:0;font-size:11px;color:#9db3c5}.air-plane{background:transparent!important;border:0!important}.air-plane span{display:block;font-size:28px;line-height:30px;color:#64ddff;text-shadow:0 1px 3px #000,0 0 2px #000;text-align:center}.air-plane.air-old{opacity:.45}.air-plane.air-selected span{color:#ffcc79}.air-plane.air-history span{color:#d0acff}.air-table-wrap{overflow:auto}.air-table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap}.air-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#98adc1}.air-table td,.air-table th{padding:12px 10px;border-bottom:1px solid #293945}.air-table tr.is-selected{background:#253446}.air-table td button{color:#aaddff;border:0;background:none;padding:0;font:inherit;font-weight:600;cursor:pointer}.air-table small{display:block;color:#8ba1b8;margin-top:4px}.air-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.air-detail-grid dt{font-size:11px;color:#9cb0c1;margin-bottom:5px}.air-detail-grid dd{margin:0;font-size:15px}.air-detail-panel h3{font-size:24px;margin:12px 0}.air-detail-panel p{font-size:13px;line-height:1.6}.air-history-controls{flex-wrap:wrap}.air-history-controls label{display:grid;gap:6px}#air-history-state{font-size:13px;color:#a7bdcf}.air-overlay-label{background:#132330;color:#e7f3ff;border:1px solid #4a687e;padding:7px 10px;border-radius:6px;font:12px system-ui;box-shadow:0 2px 8px #0005}.air-overlay-label label{display:flex;align-items:center;gap:7px}.air-overlay-label small{display:block;max-width:190px;color:#a9c4d6;margin-top:4px}.air-popup{min-width:170px}.air-popup p{margin:5px 0}.air-popup a{display:inline-block;margin-top:8px}@media(max-width:1100px){.air-workspace{grid-template-columns:1fr}.air-detail-grid{grid-template-columns:repeat(4,1fr)}.air-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){#air-map{height:370px}.air-detail-grid{grid-template-columns:repeat(2,1fr)}.air-table td,.air-table th{padding:10px 7px}.air-metric{padding:12px}.air-metric strong{font-size:23px}}

.air-plane.air-selected span{filter:drop-shadow(0 0 4px #fff)}.air-plane.air-history span{filter:drop-shadow(0 0 2px #be9be7)}.air-type-controls{margin:8px 0;padding:10px;border:1px solid var(--border,#4a687e);border-radius:8px;max-width:100%;color:var(--text,#e7f3ff);background:var(--panel,#132330)}.air-type-controls summary{cursor:pointer;font-weight:600}.air-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:5px;margin:10px 0}.air-type-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.air-type-row label{display:flex;align-items:center;gap:6px;min-width:0;font-size:12px}.air-type-row input[type=color]{width:38px;height:28px;min-width:38px;padding:2px}.air-symbol-preview{display:inline-flex;flex-shrink:0}.air-symbol-preview svg{width:22px;height:24px}.air-type-controls p{font-size:11px;line-height:1.5;max-width:650px}.air-overlay-label .air-type-controls{max-width:300px;max-height:50vh;overflow:auto}.air-overlay-label .air-type-grid{grid-template-columns:1fr}.air-overlay-label .air-type-row label{flex-wrap:nowrap}.air-overlay-label .air-type-controls p{max-width:270px}.air-type-controls input[type=checkbox]{width:auto;margin:0}@media(max-width:400px){.air-type-grid{grid-template-columns:1fr}}
