:root{--radar-bg:#0e0e10;--radar-surface:#18181b;--radar-surface-raised:#232326;--radar-surface-hover:#2d2d31;--radar-border:#38383e;--radar-text:#e5e7eb;--radar-muted:#9ca3af;--radar-accent:#d4af37;--radar-accent-strong:#b8962e;--radar-accent-soft:#d4af3724;--radar-success:#34d399;--radar-warning:#fbbf24;--radar-danger:#f87171;--radar-radius:14px;--radar-radius-sm:10px;--radar-shadow:0 8px 24px #0000003d;--radar-font:"Inter", "Segoe UI", "PingFang SC", "Microsoft YaHei", "Yu Gothic", "Meiryo", "Malgun Gothic", sans-serif;--radar-mono:"Cascadia Code", "SFMono-Regular", Consolas, monospace;font-family:var(--radar-font);color:var(--radar-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--radar-bg);font-synthesis:none;-webkit-font-smoothing:antialiased;font-size:13px;line-height:1.5}*,:before,:after{box-sizing:border-box;margin:0}html,body,#app{height:100%}body{overflow:hidden}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:2px solid var(--radar-accent);outline-offset:3px}input::placeholder,textarea::placeholder{color:var(--radar-muted)}::selection{background:var(--radar-accent-strong);color:#fff}*{scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent}:root,.el-popper,.el-select__popper{--el-color-primary:var(--radar-accent);--el-color-primary-light-9:var(--radar-accent-soft);--el-bg-color:var(--radar-surface);--el-bg-color-overlay:var(--radar-surface-raised);--el-fill-color-blank:var(--radar-surface);--el-fill-color-light:var(--radar-surface-hover);--el-fill-color:var(--radar-surface-raised);--el-disabled-bg-color:var(--radar-surface-raised);--el-disabled-text-color:var(--radar-muted);--el-disabled-border-color:var(--radar-border);--el-border-color:var(--radar-border);--el-border-color-light:var(--radar-border);--el-border-color-lighter:var(--radar-border);--el-text-color-primary:var(--radar-text);--el-text-color-regular:var(--radar-text);--el-text-color-placeholder:var(--radar-muted);--el-font-family:var(--radar-font);--el-border-radius-base:var(--radar-radius-sm);--el-border-radius-small:8px}.el-select__wrapper{box-shadow:0 0 0 1px var(--radar-border) inset}.el-popper{font-family:var(--radar-font)}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right{bottom:48px}.mapboxgl-ctrl-attrib{background:var(--radar-surface);color:var(--radar-muted)}.mapboxgl-ctrl-attrib a{color:var(--radar-muted)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.rank-icon[data-v-919b6527]{object-fit:contain;max-width:72px;height:18px;max-height:18px}.controller-rank[data-v-919b6527]{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.online-duration[data-v-919b6527]{font-variant-numeric:tabular-nums}.list-progress[data-v-919b6527]{color:var(--radar-muted);font:10px var(--radar-mono);align-items:center;gap:8px;display:flex}.progress-track[data-v-919b6527]{background:var(--radar-border);border-radius:99px;flex:1;height:4px;overflow:hidden}.progress-track>span[data-v-919b6527]{border-radius:inherit;background:var(--radar-accent);height:100%;display:block}.missing-plan-note[data-v-919b6527]{color:var(--radar-warning);font-size:11px;line-height:1.5}.atis-preview.atis-full[data-v-919b6527]{-webkit-line-clamp:unset;line-clamp:unset;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;cursor:text;max-height:220px;display:block;overflow-y:auto}.pilot-telemetry.pilot-rank[data-v-919b6527]{gap:4px;font-size:11px;line-height:1.25}.topbar-dropdown-enter-active[data-v-919b6527]{transition:opacity .18s,transform .18s}.topbar-dropdown-leave-active[data-v-919b6527]{pointer-events:none;transition:opacity .14s,transform .14s}.topbar-dropdown-enter-from[data-v-919b6527],.topbar-dropdown-leave-to[data-v-919b6527]{opacity:0;transform:translateY(-6px)scale(.98)}.topbar[data-v-919b6527]{box-sizing:border-box;border-bottom:1px solid var(--radar-border);background:var(--radar-surface);height:52px;color:var(--radar-text);font-family:var(--radar-font);font-variant-numeric:tabular-nums;z-index:40;justify-content:space-between;align-items:center;gap:24px;padding:0 16px;font-size:12px;display:flex;position:fixed;inset:0 0 auto}.brand[data-v-919b6527],.topbar-right[data-v-919b6527],.traffic-menus[data-v-919b6527]{align-items:center;gap:12px;min-width:0;display:flex}.brand[data-v-919b6527]{flex-shrink:0}.language-button[data-v-919b6527]{border:1px solid var(--radar-border);background:var(--radar-bg);width:30px;height:34px;color:var(--radar-accent);border-radius:8px;flex:0 0 30px;padding:0}.language-button[aria-busy=true][data-v-919b6527]{opacity:.6;cursor:wait}.language-menu[data-v-919b6527]{flex:0 0 30px;position:relative}.language-dropdown[data-v-919b6527]{border-color:var(--radar-accent);width:170px;padding:4px;overflow-y:auto}.language-option[data-v-919b6527]{border-radius:10px}.language-option[aria-checked=true][data-v-919b6527]{background:var(--radar-accent-soft);color:var(--radar-accent)}.language-error[data-v-919b6527]{background:var(--radar-surface);max-width:calc(100vw - 32px);color:var(--radar-danger);padding:10px;position:absolute;top:100%;right:8px}.airport-name[data-v-919b6527]{color:var(--radar-muted);margin-top:3px;font-size:11px;display:block}.brand-logo[data-v-919b6527]{object-fit:contain;width:108px;height:24px}.radar-label[data-v-919b6527]{border-left:1px solid var(--radar-border);white-space:nowrap;padding-left:12px;font-weight:600}.feed-status[data-v-919b6527]{color:var(--radar-muted);white-space:nowrap;align-items:center;gap:6px;display:flex}.status-dot[data-v-919b6527]{background:currentColor;border-radius:50%;width:6px;height:6px}.feed-status.connected[data-v-919b6527]{color:var(--radar-success)}.topbar-right[data-v-919b6527]{flex:0 680px;gap:8px}.search-box[data-v-919b6527]{flex:1;min-width:100px;position:relative}.search-icon[data-v-919b6527]{color:var(--radar-muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-box input[data-v-919b6527]{box-sizing:border-box;border:1px solid var(--radar-border);background:var(--radar-bg);width:100%;height:34px;color:var(--radar-text);font:inherit;border-radius:10px;padding:0 10px 0 32px}.search-box input[data-v-919b6527]::placeholder{color:var(--radar-muted)}button[data-v-919b6527]{font:inherit;cursor:pointer}button[data-v-919b6527]:focus-visible,input[data-v-919b6527]:focus-visible,.dropdown-item[data-v-919b6527]:focus-visible{outline:2px solid var(--radar-accent);outline-offset:2px}.traffic-menus[data-v-919b6527]{flex-shrink:0;gap:4px;position:relative}.stat-button[data-v-919b6527],.time-display[data-v-919b6527]{height:34px;color:var(--radar-muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 10px;display:flex}.stat-button[data-v-919b6527]:hover,.time-display[data-v-919b6527]:hover{background:var(--radar-surface-hover);color:var(--radar-text)}.stat-button.active[data-v-919b6527]{background:var(--radar-accent-soft);border-color:var(--radar-accent);color:var(--radar-accent)}.stat-count[data-v-919b6527]{font-family:var(--radar-mono);color:var(--radar-text);font-weight:600}.time-display[data-v-919b6527]{border-left-color:var(--radar-border);border-radius:10px;flex-direction:column;flex-shrink:0;gap:0;padding:0 8px}.time-value[data-v-919b6527]{font-family:var(--radar-mono);color:var(--radar-text);font-size:13px}.time-tz[data-v-919b6527]{letter-spacing:.06em;font-size:9px}.dropdown-panel[data-v-919b6527]{transform-origin:100% 0;box-sizing:border-box;border:1px solid var(--radar-border);background:var(--radar-surface);width:300px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 68px);box-shadow:var(--radar-shadow);border-radius:14px;flex-direction:column;display:flex;position:absolute;top:calc(100% + 9px);right:0;overflow:hidden}.search-dropdown[data-v-919b6527]{width:max(100%,300px)}.pilot-dropdown[data-v-919b6527],.airport-dropdown[data-v-919b6527],.controller-dropdown[data-v-919b6527]{width:440px}.airport-menu-hint[data-v-919b6527]{color:var(--radar-muted);margin:0;padding:8px 12px;font-size:11px}.airport-menu-name[data-v-919b6527]{overflow-wrap:anywhere;min-width:0;color:var(--radar-text)}.airport-flight-groups[data-v-919b6527]{grid-template-columns:1fr 1fr;gap:12px;display:grid}.airport-flight-groups>span[data-v-919b6527]{flex-direction:column;gap:4px;min-width:0;font-size:11px;display:flex}.airport-callsigns[data-v-919b6527]{font-family:var(--radar-mono);color:var(--radar-muted);overflow-wrap:anywhere}.airport-view-all[data-v-919b6527]{color:var(--radar-accent);font-size:11px}.dropdown-heading[data-v-919b6527],.pagination[data-v-919b6527]{background:var(--radar-surface-raised);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.dropdown-heading[data-v-919b6527]{border-bottom:1px solid var(--radar-border);font-weight:600}.dropdown-heading span[data-v-919b6527],.pagination[data-v-919b6527]{color:var(--radar-muted);font-size:11px;font-weight:400}.dropdown-list[data-v-919b6527]{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent;min-height:0;max-height:min(360px,100dvh - 208px);overflow-y:auto}.dropdown-item[data-v-919b6527]{box-sizing:border-box;width:100%;min-height:40px;color:var(--radar-text);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:8px 12px;display:flex}.dropdown-item[data-v-919b6527]:hover,.dropdown-item.selected[data-v-919b6527]{background:var(--radar-accent-soft);color:var(--radar-accent)}.dropdown-item[data-v-919b6527]:focus-visible{outline-offset:-2px}.emergency-pilot-item[data-v-919b6527]{border-color:var(--radar-danger);background:#f871711f}.emergency-pilot-item[data-v-919b6527]:hover,.emergency-pilot-item.selected[data-v-919b6527]{background:#f8717133}.emergency-pilot[data-v-919b6527]{color:var(--radar-danger)}.item-callsign[data-v-919b6527]{text-overflow:ellipsis;min-width:0;font-family:var(--radar-mono);overflow:hidden}.item-sub[data-v-919b6527]{color:var(--radar-muted);flex-shrink:0;font-size:11px}.pilot-dropdown .dropdown-list[data-v-919b6527],.controller-dropdown .dropdown-list[data-v-919b6527]{max-height:min(600px,100dvh - 160px);padding:6px}.pilot-item[data-v-919b6527],.controller-item[data-v-919b6527]{border:1px solid var(--radar-border);background:var(--radar-bg);border-radius:10px;flex-direction:column;align-items:stretch;gap:8px;padding:10px}.pilot-item+.pilot-item[data-v-919b6527],.controller-item+.controller-item[data-v-919b6527]{margin-top:6px}.controller-details[data-v-919b6527]{flex-direction:column;gap:8px;min-width:0;display:flex}.facility-badge[data-v-919b6527]{border:1px solid var(--radar-accent);background:var(--radar-accent-soft);max-width:100%;color:var(--radar-accent);overflow-wrap:anywhere;border-radius:999px;margin-left:auto;padding:2px 7px;font-size:11px}.controller-grid[data-v-919b6527]{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.controller-grid>span[data-v-919b6527]{overflow-wrap:anywhere;flex-direction:column;gap:3px;display:flex}.controller-grid small[data-v-919b6527],.atis-preview small[data-v-919b6527]{color:var(--radar-muted);font-size:11px}.controller-grid b[data-v-919b6527]{font-family:var(--radar-mono);font-weight:500}.atis-preview[data-v-919b6527]{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;text-align:left;-webkit-box-orient:vertical;font-size:11px;line-height:1.5;display:-webkit-box;overflow:hidden}.pilot-identity[data-v-919b6527],.pilot-telemetry[data-v-919b6527]{flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0;display:flex}.pilot-identity .item-callsign[data-v-919b6527]{color:var(--radar-accent);font-weight:600}.pilot-identity .item-callsign[data-v-919b6527],.pilot-identity .item-sub[data-v-919b6527],.pilot-equipment[data-v-919b6527]{overflow-wrap:anywhere;white-space:normal;flex-shrink:1;min-width:0;max-width:100%;overflow:visible}.pilot-equipment[data-v-919b6527]{color:var(--radar-muted);font-family:var(--radar-mono);margin-left:auto;font-size:11px}.pilot-route[data-v-919b6527]{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.pilot-route>span[data-v-919b6527]{overflow-wrap:anywhere;min-width:0}.pilot-route>span[data-v-919b6527]:last-child{text-align:right}.pilot-route small[data-v-919b6527],.pilot-telemetry[data-v-919b6527],.route-arrow[data-v-919b6527]{color:var(--radar-muted);font-size:11px}.pilot-route b[data-v-919b6527],.pilot-telemetry b[data-v-919b6527]{color:var(--radar-text);font-family:var(--radar-mono);font-weight:500}.pilot-telemetry>span[data-v-919b6527]{overflow-wrap:anywhere;min-width:0}.pilot-status[data-v-919b6527]{border:1px solid var(--radar-border);color:var(--radar-accent);background:var(--radar-accent-soft);border-radius:999px;margin-left:auto;padding:2px 7px}.dropdown-empty[data-v-919b6527]{color:var(--radar-muted);text-align:center;padding:24px 12px}.pagination[data-v-919b6527]{border-top:1px solid var(--radar-border);padding:6px 10px}.pagination button[data-v-919b6527]{min-height:32px;color:var(--radar-accent);background:0 0;border:0;border-radius:10px;padding:0 8px}.pagination button[data-v-919b6527]:hover:not(:disabled){background:var(--radar-surface-hover)}.pagination button[data-v-919b6527]:disabled{color:var(--radar-muted);opacity:.5;cursor:default}@media (width<=1100px){.feed-status[data-v-919b6527],.stat-label[data-v-919b6527]{display:none}}@media (width<=768px){.topbar[data-v-919b6527]{gap:8px;height:48px;padding:0 8px}.brand-logo[data-v-919b6527]{width:88px;height:22px}.radar-label[data-v-919b6527]{display:none}.topbar-right[data-v-919b6527]{flex:0 auto;gap:4px}.search-box[data-v-919b6527]{flex:0 140px;width:clamp(72px,24vw,140px);min-width:56px;max-width:140px}.search-box input[data-v-919b6527]{height:32px;padding-left:28px;font-size:16px}.search-icon[data-v-919b6527]{font-size:11px;left:8px}.stat-button[data-v-919b6527]{flex-direction:column;gap:1px;width:28px;min-width:28px;height:36px;padding:0}.stat-count[data-v-919b6527]{text-overflow:ellipsis;max-width:100%;font-size:11px;overflow:hidden}.dropdown-panel[data-v-919b6527]{width:auto;max-width:none;position:fixed;top:54px;left:8px;right:8px}.dropdown-item[data-v-919b6527]{min-height:44px}.language-dropdown[data-v-919b6527]{width:170px;max-width:calc(100vw - 16px);left:auto;right:8px}.pagination button[data-v-919b6527]{min-height:40px}}@media (width<=480px){.topbar[data-v-919b6527]{gap:6px}.brand-logo[data-v-919b6527]{width:44px;height:20px}.search-icon[data-v-919b6527]{display:none}.search-box input[data-v-919b6527]{padding:0 6px}.traffic-menus[data-v-919b6527]{gap:2px}.stat-button[data-v-919b6527]{flex-direction:column;gap:1px;width:24px;min-width:24px;padding:0}.stat-button i[data-v-919b6527]{font-size:10px}.stat-count[data-v-919b6527]{font-size:11px}.time-display[data-v-919b6527]{display:none}.time-value[data-v-919b6527]{font-size:11px}.time-seconds[data-v-919b6527]{display:none}}.map-controls[data-v-6f7c109c]{border:1px solid var(--radar-border);border-radius:var(--radar-radius);background:var(--radar-surface);box-shadow:var(--radar-shadow);font-family:var(--radar-font);z-index:19;flex-direction:column;padding:3px;display:flex;position:fixed;top:68px;left:16px}.ctrl-btn[data-v-6f7c109c]{border-radius:var(--radar-radius-sm);width:36px;height:38px;color:var(--radar-text);cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:14px;display:flex}.ctrl-btn[data-v-6f7c109c]:hover{background:var(--radar-surface-hover);color:var(--radar-accent)}.ctrl-btn[data-v-6f7c109c]:active{background:var(--radar-accent-soft)}.ctrl-btn.active[data-v-6f7c109c]{background:var(--radar-accent-soft);color:var(--radar-accent)}.ctrl-btn.loading[data-v-6f7c109c]{color:var(--radar-accent);cursor:wait}.radar-spinner[data-v-6f7c109c]{animation:.8s linear infinite radar-spinner-rotate-6f7c109c}@keyframes radar-spinner-rotate-6f7c109c{to{transform:rotate(360deg)}}.ctrl-btn[data-v-6f7c109c]:disabled{opacity:.8}.ctrl-btn[data-v-6f7c109c]:focus-visible{outline:2px solid var(--radar-accent);outline-offset:-2px}.radar-control[data-v-6f7c109c]{position:relative}.radar-popover[data-v-6f7c109c]{border:1px solid var(--radar-border);border-radius:var(--radar-radius);background:var(--radar-surface);width:150px;box-shadow:var(--radar-shadow);color:var(--radar-text);opacity:0;pointer-events:none;padding:9px 10px;font-size:11px;transition:opacity .12s,transform .12s;position:absolute;top:0;left:calc(100% + 8px);transform:translate(-4px)}.radar-control:hover .radar-popover[data-v-6f7c109c],.radar-control:focus-within .radar-popover[data-v-6f7c109c]{opacity:1;pointer-events:auto;transform:translate(0)}.radar-popover label[data-v-6f7c109c],.radar-popover output[data-v-6f7c109c]{display:block}.radar-popover output[data-v-6f7c109c]{color:var(--radar-muted);font-family:var(--radar-mono);margin-top:3px}.radar-popover input[data-v-6f7c109c]{width:100%;accent-color:var(--radar-accent)}.settings-btn[data-v-6f7c109c]{border-top:1px solid var(--radar-border);border-radius:0 0 var(--radar-radius-sm) var(--radar-radius-sm);margin-top:4px}.compass-arrow[data-v-6f7c109c]{color:var(--radar-accent);font-size:12px;line-height:1}.compass-deg[data-v-6f7c109c]{font-family:var(--radar-mono);font-variant-numeric:tabular-nums;color:var(--radar-muted);font-size:9px}@media (width<=768px){.map-controls[data-v-6f7c109c]{top:60px}.ctrl-btn[data-v-6f7c109c]{width:40px;height:44px}}.settings-panel[data-v-b82a955d]{box-sizing:border-box;border:1px solid var(--radar-border);border-radius:var(--radar-radius);background:var(--radar-surface);width:280px;max-height:calc(100dvh - 140px);color:var(--radar-text);font-family:var(--radar-font);z-index:25;box-shadow:var(--radar-shadow);flex-direction:column;line-height:1.5;display:flex;position:fixed;top:72px;left:72px;overflow:hidden}.sp-header[data-v-b82a955d]{color:var(--radar-text);background:var(--radar-surface-raised);border-bottom:1px solid var(--radar-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;font-weight:600;display:flex}.sp-body[data-v-b82a955d]{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent;flex:auto;min-height:0;padding:8px;overflow-y:auto}.sp-body[data-v-b82a955d]::-webkit-scrollbar{width:6px}.sp-body[data-v-b82a955d]::-webkit-scrollbar-thumb{background:var(--radar-border);border-radius:3px}.sp-body[data-v-b82a955d]:hover::-webkit-scrollbar-thumb{background:var(--radar-muted)}.sp-section[data-v-b82a955d]{letter-spacing:.06em;color:var(--radar-muted);border-bottom:1px solid var(--radar-border);margin:12px 4px 4px;padding-bottom:6px;font-size:11px;font-weight:600}.sp-section[data-v-b82a955d]:first-child{margin-top:4px}.style-options[data-v-b82a955d]{flex-wrap:wrap;gap:6px;padding:4px;display:flex}.style-option[data-v-b82a955d]{border:1px solid var(--radar-border);background:var(--radar-surface-raised);text-align:center;overflow-wrap:anywhere;min-width:0;color:var(--radar-muted);cursor:pointer;border-radius:8px;flex:64px;padding:7px 8px;font-family:inherit;font-size:12px;line-height:1.5;transition:background-color .15s,border-color .15s,color .15s}.style-option[data-v-b82a955d]:hover{background:var(--radar-surface-hover);border-color:var(--radar-accent);color:var(--radar-text)}.style-option.on[data-v-b82a955d]{border-color:var(--radar-accent);background:var(--radar-accent-soft);color:var(--radar-accent)}.setting-item[data-v-b82a955d]{background:var(--radar-surface);text-align:left;width:100%;min-height:36px;color:var(--radar-text);cursor:pointer;border:0;border-radius:8px;align-items:center;gap:10px;padding:7px 8px;font-family:inherit;font-size:12px;line-height:1.5;transition:background-color .15s;display:flex}.setting-item[data-v-b82a955d]:hover{background:var(--radar-surface-hover)}.terrain-scale[data-v-b82a955d]{color:var(--radar-muted);padding:4px 8px 8px 46px;font-size:11px}.terrain-scale.disabled[data-v-b82a955d]{opacity:.45}.terrain-scale-label[data-v-b82a955d]{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.terrain-scale output[data-v-b82a955d]{color:var(--radar-text);font-family:var(--radar-mono);font-variant-numeric:tabular-nums}.terrain-scale input[data-v-b82a955d]{width:100%;accent-color:var(--radar-accent);cursor:pointer}.check[data-v-b82a955d]{box-sizing:border-box;border:1px solid var(--radar-muted);background:var(--radar-surface-raised);border-radius:8px;flex-shrink:0;order:1;width:28px;height:16px;margin-left:auto;position:relative}.check[data-v-b82a955d]:after{content:"";background:var(--radar-muted);border-radius:50%;width:10px;height:10px;transition:transform .15s;position:absolute;top:2px;left:2px}.check.on[data-v-b82a955d]{background:var(--radar-accent-strong);border-color:var(--radar-accent)}.check.on[data-v-b82a955d]:after{background:var(--radar-text);transform:translate(12px)}.close-btn[data-v-b82a955d]{border:1px solid var(--radar-border);background:var(--radar-surface);width:30px;height:30px;color:var(--radar-muted);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;transition:background-color .15s,color .15s;display:flex}.close-btn[data-v-b82a955d]:hover{background:var(--radar-surface-hover);color:var(--radar-text)}@media (width<=768px){.settings-panel[data-v-b82a955d]{width:min(320px,100vw - 24px);max-height:calc(100dvh - 120px);top:60px;left:12px}}.panel-content[data-v-871a8cfa]{display:contents}.draggable-panel.mobile[data-v-871a8cfa]{box-sizing:border-box;flex-direction:column;width:100%;max-height:none;display:flex;position:fixed;inset:auto 0 48px;overflow:hidden}.draggable-panel.mobile>.panel-content[data-v-871a8cfa]{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent;flex-direction:column;height:calc(100% - 44px);min-height:0;display:flex;overflow-y:auto}.draggable-panel.mobile.snapping[data-v-871a8cfa]:not(.slide-up-enter-active):not(.slide-up-leave-active){transition:height .22s}.draggable-panel.mobile.dragging[data-v-871a8cfa]:not(.slide-up-enter-active):not(.slide-up-leave-active){-webkit-user-select:none;user-select:none;transition:height}.drag-handle[data-v-871a8cfa]{z-index:3;box-sizing:border-box;cursor:grab;touch-action:none;appearance:none;background:var(--radar-surface);border:0;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:100%;height:44px;padding:0;display:flex;position:relative}.drag-handle[data-v-871a8cfa]:focus-visible{outline:2px solid var(--radar-accent);outline-offset:-3px}.drag-handle[data-v-871a8cfa]:before{content:"";background:var(--radar-muted);border-radius:2px;align-self:flex-start;width:32px;height:4px;margin-top:8px}.airport-panel[data-v-0ed1fc95]{box-sizing:border-box;border:1px solid var(--radar-border);background:var(--radar-surface);color:var(--radar-text);font-family:var(--radar-font);font-variant-numeric:tabular-nums;z-index:36;box-shadow:var(--radar-shadow);flex-direction:column;line-height:1.5;display:flex;overflow:hidden}.airport-panel.desktop-panel[data-v-0ed1fc95]{border-radius:var(--radar-radius);width:360px;max-height:calc(100dvh - 140px);position:fixed;top:72px;left:72px}.airport-panel:not(.desktop-panel) .ap-body[data-v-0ed1fc95]{flex:none;overflow:visible}.ap-header[data-v-0ed1fc95]{background:var(--radar-surface-raised);border-bottom:1px solid var(--radar-border);flex-shrink:0;align-items:center;gap:10px;padding:10px 12px;display:flex}.ap-code[data-v-0ed1fc95]{overflow-wrap:anywhere;min-width:0;font-family:var(--radar-mono);letter-spacing:.04em;color:var(--radar-accent);font-size:20px;font-weight:700}.ap-name[data-v-0ed1fc95]{min-width:0;color:var(--radar-muted);overflow-wrap:anywhere;flex:1;font-size:12px}.close-btn[data-v-0ed1fc95]{border:1px solid var(--radar-border);background:var(--radar-surface);width:30px;height:30px;color:var(--radar-muted);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;transition:background-color .15s,color .15s;display:flex}.close-btn[data-v-0ed1fc95]:hover{background:var(--radar-surface-hover);color:var(--radar-text)}.ap-body[data-v-0ed1fc95]{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent;flex:auto;min-height:0;padding:12px;overflow-y:auto}.ap-body[data-v-0ed1fc95]::-webkit-scrollbar{width:6px}.ap-body[data-v-0ed1fc95]::-webkit-scrollbar-thumb{background:var(--radar-border);border-radius:3px}.ap-body[data-v-0ed1fc95]:hover::-webkit-scrollbar-thumb{background:var(--radar-muted)}.ap-rows[data-v-0ed1fc95],.weather-card[data-v-0ed1fc95]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface-raised);padding:2px 10px}.ap-row[data-v-0ed1fc95]{border-bottom:1px solid var(--radar-border);justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;display:flex}.ap-row[data-v-0ed1fc95]:last-child{border-bottom:none}.ap-row>span[data-v-0ed1fc95]{min-width:0;max-width:45%;color:var(--radar-muted);overflow-wrap:anywhere;font-size:12px}.ap-row>b[data-v-0ed1fc95]{min-width:0;color:var(--radar-text);text-align:right;overflow-wrap:anywhere;font-size:12px;font-weight:600}.data-code[data-v-0ed1fc95],.runway-code[data-v-0ed1fc95]{font-family:var(--radar-mono)}.ap-row>.runway-code[data-v-0ed1fc95]{border:1px solid var(--radar-border);background:var(--radar-bg);color:var(--radar-text);white-space:normal;overflow-wrap:anywhere;border-radius:999px;padding:1px 5px}.ap-raw[data-v-0ed1fc95]{border-radius:var(--radar-radius-sm);background:var(--radar-bg);border:1px solid var(--radar-border);border-left:2px solid var(--radar-accent);font-family:var(--radar-mono);color:var(--radar-text);overflow-wrap:anywhere;margin:8px 0;padding:8px 10px;font-size:12px;line-height:1.6}.ap-empty[data-v-0ed1fc95]{text-align:center;color:var(--radar-muted);padding:18px 0;font-size:12px}.section-title[data-v-0ed1fc95]{letter-spacing:.06em;color:var(--radar-muted);border-bottom:1px solid var(--radar-border);margin:14px 0 8px;padding-bottom:6px;font-size:11px;font-weight:600}.runway-details summary[data-v-0ed1fc95]{cursor:pointer;min-height:44px;color:var(--radar-text);justify-content:space-between;align-items:center;list-style:none;display:flex}.runway-details summary[data-v-0ed1fc95]::-webkit-details-marker{display:none}.runway-details summary[data-v-0ed1fc95]:hover{color:var(--radar-accent)}.runway-details[open] summary i[data-v-0ed1fc95]{transform:rotate(180deg)}.traffic-hint[data-v-0ed1fc95]{color:var(--radar-muted);overflow-wrap:anywhere;margin:14px 0 0;font-size:12px}.traffic-list[data-v-0ed1fc95]{gap:8px;display:grid}.traffic-pilot[data-v-0ed1fc95],.show-more[data-v-0ed1fc95]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface-raised);min-width:0;min-height:44px;color:var(--radar-text);font:inherit;overflow-wrap:anywhere;cursor:pointer;padding:10px;font-size:12px}.traffic-pilot[data-v-0ed1fc95]{text-align:left;gap:6px;display:grid}.traffic-heading[data-v-0ed1fc95],.traffic-route[data-v-0ed1fc95],.traffic-stats[data-v-0ed1fc95]{flex-wrap:wrap;gap:4px 12px;min-width:0;display:flex}.traffic-heading[data-v-0ed1fc95]>*,.traffic-route[data-v-0ed1fc95]>*,.traffic-stats[data-v-0ed1fc95]>*{min-width:0}.traffic-heading b[data-v-0ed1fc95],.show-more[data-v-0ed1fc95]{color:var(--radar-accent)}.traffic-stats[data-v-0ed1fc95]{color:var(--radar-muted)}.traffic-pilot[data-v-0ed1fc95]:hover,.show-more[data-v-0ed1fc95]:hover{background:var(--radar-surface-hover);border-color:var(--radar-accent)}@media (width<=768px){.close-btn[data-v-0ed1fc95]{width:44px;height:44px}}.controller-rank[data-v-981cf87f]{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;display:flex}.rank-icon[data-v-981cf87f]{object-fit:contain;max-width:72px;height:18px}.permission-tags[data-v-981cf87f]{flex-wrap:wrap;gap:4px;display:flex}.permission-tag[data-v-981cf87f]{border:1px solid var(--radar-border);color:var(--radar-muted);background:var(--radar-surface-raised);border-radius:999px;align-items:center;gap:4px;padding:2px 6px;font-size:10px;display:inline-flex}.permission-tag[data-status="1"][data-v-981cf87f]{color:var(--radar-warning)}.permission-tag[data-status="2"][data-v-981cf87f]{color:var(--radar-success)}.controller-panel[data-v-981cf87f]{box-sizing:border-box;border:1px solid var(--radar-border);background:var(--radar-surface);color:var(--radar-text);font-family:var(--radar-font);font-variant-numeric:tabular-nums;z-index:35;box-shadow:var(--radar-shadow);flex-direction:column;font-size:12px;font-weight:400;line-height:1.5;display:flex;overflow:hidden}.controller-panel.desktop-panel[data-v-981cf87f]{border-radius:var(--radar-radius);width:360px;max-height:calc(100dvh - 140px);position:fixed;top:72px;left:72px}.controller-panel:not(.desktop-panel) .cp-body[data-v-981cf87f]{flex:none;overflow:visible}.cp-header[data-v-981cf87f]{background:var(--radar-surface-raised);border-bottom:1px solid var(--radar-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.cp-title[data-v-981cf87f]{flex-wrap:wrap;align-items:baseline;gap:4px 8px;min-width:0;display:flex}.cp-callsign[data-v-981cf87f]{font-family:var(--radar-mono);letter-spacing:.04em;overflow-wrap:anywhere;color:var(--radar-accent);font-size:18px;font-weight:700}.cp-facility[data-v-981cf87f]{box-sizing:border-box;overflow-wrap:anywhere;border:1px solid var(--radar-border);background:var(--radar-surface);max-width:100%;color:var(--radar-success);border-radius:999px;padding:2px 6px;font-size:11px}.close-btn[data-v-981cf87f]{border:1px solid var(--radar-border);background:var(--radar-surface);width:30px;height:30px;color:var(--radar-muted);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;transition:background-color .15s,color .15s;display:flex}.close-btn[data-v-981cf87f]:hover{background:var(--radar-surface-hover);color:var(--radar-text)}.cp-body[data-v-981cf87f]{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent;flex:auto;min-height:0;padding:12px;overflow-y:auto}.cp-body[data-v-981cf87f]::-webkit-scrollbar{width:6px}.cp-body[data-v-981cf87f]::-webkit-scrollbar-thumb{background:var(--radar-border);border-radius:3px}.cp-body[data-v-981cf87f]:hover::-webkit-scrollbar-thumb{background:var(--radar-muted)}.cp-rows[data-v-981cf87f]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface-raised);padding:2px 10px}.cp-row[data-v-981cf87f]{border-bottom:1px solid var(--radar-border);justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;display:flex}.cp-row[data-v-981cf87f]:last-child{border-bottom:none}.cp-row>span[data-v-981cf87f]{min-width:0;max-width:45%;color:var(--radar-muted);overflow-wrap:anywhere;font-size:12px}.cp-row>b[data-v-981cf87f]{min-width:0;color:var(--radar-text);text-align:right;overflow-wrap:anywhere;font-size:12px;font-weight:500}.data-code[data-v-981cf87f]{font-family:var(--radar-mono)}.cp-row>.frequency[data-v-981cf87f]{color:var(--radar-accent)}.section-title[data-v-981cf87f]{letter-spacing:.06em;color:var(--radar-muted);border-bottom:1px solid var(--radar-border);margin:14px 0 8px;padding-bottom:6px;font-size:11px;font-weight:500}.atis-box[data-v-981cf87f]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-bg);padding:8px 10px}.atis-line[data-v-981cf87f]{color:var(--radar-text);overflow-wrap:anywhere;white-space:pre-wrap;padding:3px 0;font-size:12px;line-height:1.6}.pilots-box[data-v-981cf87f]{flex-wrap:wrap;gap:6px;display:flex}.pilot-tag[data-v-981cf87f]{border:1px solid var(--radar-border);background:var(--radar-surface-raised);max-width:100%;min-height:32px;color:var(--radar-accent);font-family:var(--radar-mono);overflow-wrap:anywhere;cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:5px 8px;font-size:12px;transition:background-color .15s,border-color .15s;display:inline-flex}.pilot-tag[data-v-981cf87f]:hover{background:var(--radar-surface-hover);border-color:var(--radar-accent)}.empty[data-v-981cf87f]{text-align:center;width:100%;color:var(--radar-muted);padding:18px 0;font-size:12px}.pilots-box>.empty[data-v-981cf87f]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface-raised)}@media (width<=768px){.close-btn[data-v-981cf87f]{width:44px;height:44px}.pilot-tag[data-v-981cf87f]{min-height:44px}}.airway-panel[data-v-db166eda]{box-sizing:border-box;border:1px solid var(--radar-border);background:var(--radar-surface);color:var(--radar-text);font-family:var(--radar-font);font-variant-numeric:tabular-nums;z-index:35;box-shadow:var(--radar-shadow);flex-direction:column;font-size:12px;font-weight:400;line-height:1.5;display:flex;overflow:hidden}.airway-panel.desktop-panel[data-v-db166eda]{border-radius:var(--radar-radius);width:320px;max-height:calc(100dvh - 140px);position:fixed;top:72px;left:72px}.airway-panel:not(.desktop-panel) .ap-body[data-v-db166eda]{flex:none;overflow:visible}.ap-header[data-v-db166eda]{background:var(--radar-surface-raised);border-bottom:1px solid var(--radar-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.ap-title[data-v-db166eda]{flex-wrap:wrap;align-items:baseline;gap:4px 8px;min-width:0;display:flex}.ap-name[data-v-db166eda]{font-family:var(--radar-mono);letter-spacing:.04em;overflow-wrap:anywhere;color:var(--radar-accent);font-size:18px;font-weight:700}.ap-type[data-v-db166eda]{box-sizing:border-box;overflow-wrap:anywhere;border:1px solid var(--radar-border);background:var(--radar-surface);max-width:100%;color:var(--radar-success);border-radius:999px;padding:2px 6px;font-size:11px}.close-btn[data-v-db166eda]{border:1px solid var(--radar-border);background:var(--radar-surface);width:30px;height:30px;color:var(--radar-muted);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;transition:background-color .15s,color .15s;display:flex}.close-btn[data-v-db166eda]:hover{background:var(--radar-surface-hover);color:var(--radar-text)}.ap-body[data-v-db166eda]{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent;flex:auto;min-height:0;padding:12px;overflow-y:auto}.ap-body[data-v-db166eda]::-webkit-scrollbar{width:6px}.ap-body[data-v-db166eda]::-webkit-scrollbar-thumb{background:var(--radar-border);border-radius:3px}.segment[data-v-db166eda]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface-raised);overflow:hidden}.segment+.segment[data-v-db166eda]{margin-top:8px}.segment.active[data-v-db166eda]{border-color:var(--radar-accent)}.segment-header[data-v-db166eda]{width:100%;min-height:34px;color:var(--radar-muted);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:6px 10px;font-family:inherit;font-size:12px;transition:background-color .15s,color .15s;display:flex}.segment-header[data-v-db166eda]:hover{background:var(--radar-surface-hover);color:var(--radar-text)}.segment.active .segment-header[data-v-db166eda]{color:var(--radar-accent)}.segment-index[data-v-db166eda]{font-family:var(--radar-mono);flex-shrink:0;font-weight:600}.segment-meta[data-v-db166eda]{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--radar-muted);flex:auto;font-size:11px;overflow:hidden}.seg-chevron[data-v-db166eda]{flex-shrink:0;font-size:10px;transition:transform .15s}.seg-chevron.open[data-v-db166eda]{transform:rotate(180deg)}.segment-body[data-v-db166eda]{padding:0 10px 10px}.ap-rows[data-v-db166eda]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface);padding:2px 10px}.ap-row[data-v-db166eda]{border-bottom:1px solid var(--radar-border);justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;display:flex}.ap-row[data-v-db166eda]:last-child{border-bottom:none}.ap-row>span[data-v-db166eda]{min-width:0;max-width:45%;color:var(--radar-muted);overflow-wrap:anywhere;font-size:12px}.ap-row>b[data-v-db166eda]{min-width:0;color:var(--radar-text);text-align:right;overflow-wrap:anywhere;font-size:12px;font-weight:500}.data-code[data-v-db166eda]{font-family:var(--radar-mono)}.section-title[data-v-db166eda]{letter-spacing:.06em;color:var(--radar-muted);border-bottom:1px solid var(--radar-border);margin:14px 0 8px;padding-bottom:6px;font-size:11px;font-weight:500}.waypoint-list[data-v-db166eda]{flex-direction:column;gap:4px;display:flex}.leg-distance[data-v-db166eda]{font-family:var(--radar-mono);color:var(--radar-muted);align-items:center;gap:6px;padding:0 0 0 14px;font-size:11px;display:flex}.leg-distance i[data-v-db166eda]{color:#fff;font-size:11px}.waypoint-item[data-v-db166eda]{border:1px solid var(--radar-border);background:var(--radar-surface);width:100%;min-height:32px;color:var(--radar-text);text-align:left;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:baseline;gap:10px;padding:6px 8px;font-family:inherit;font-size:12px;transition:background-color .15s,border-color .15s;display:flex}.waypoint-item[data-v-db166eda]:hover{background:var(--radar-surface-hover);border-color:var(--radar-accent)}.waypoint-name[data-v-db166eda]{min-width:0;font-family:var(--radar-mono);color:var(--radar-accent);overflow-wrap:anywhere;font-weight:600}.waypoint-coord[data-v-db166eda]{font-family:var(--radar-mono);color:var(--radar-muted);flex-shrink:0;font-size:11px}.empty[data-v-db166eda]{text-align:center;width:100%;color:var(--radar-muted);border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface-raised);padding:18px 0;font-size:12px}@media (width<=768px){.close-btn[data-v-db166eda]{width:44px;height:44px}.segment-header[data-v-db166eda],.waypoint-item[data-v-db166eda]{min-height:44px}}.aircraft-schematic[data-v-3e5d999b]{border:1px solid var(--radar-border);background:var(--radar-surface);color:var(--radar-text);font-family:var(--radar-font);border-radius:14px;margin-top:8px;padding:8px;line-height:1.5}.schema-panel[data-v-3e5d999b]{border:1px solid var(--radar-border);background:var(--radar-bg);border-radius:10px;overflow:hidden}.schema-heading[data-v-3e5d999b]{overflow-wrap:anywhere;color:var(--radar-muted);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:10px 12px 0;font-size:10px;display:flex}.schema-heading[data-v-3e5d999b]>:first-child{color:var(--radar-accent);font-family:var(--radar-mono);letter-spacing:.1em}.schema-svg[data-v-3e5d999b]{width:100%;height:auto;max-height:280px;display:block}.guide[data-v-3e5d999b]{fill:none;stroke:var(--radar-border);stroke-width:.6px;stroke-dasharray:2 6;opacity:.5}.airframe[data-v-3e5d999b],.nacelle[data-v-3e5d999b]{fill:var(--radar-surface-raised);stroke:var(--radar-muted);stroke-width:.9px;stroke-linejoin:round}.fuselage[data-v-3e5d999b],.nacelle[data-v-3e5d999b]{fill:color-mix(in srgb, var(--radar-surface-raised) 85%, var(--radar-accent) 15%)}.panel-line[data-v-3e5d999b],.body-highlight[data-v-3e5d999b]{fill:none;stroke:var(--radar-muted);stroke-width:.6px;opacity:.45}.wingtip[data-v-3e5d999b]{stroke:var(--radar-accent-strong,#b8962e);stroke-width:2px;stroke-linecap:round}.pylon[data-v-3e5d999b],.fin[data-v-3e5d999b]{fill:var(--radar-border);stroke:var(--radar-muted);stroke-width:.7px}.cockpit[data-v-3e5d999b],.intake[data-v-3e5d999b]{fill:var(--radar-bg);stroke:var(--radar-muted);stroke-width:.6px}.engine-mark[data-v-3e5d999b]{stroke:var(--radar-muted);stroke-width:2px;stroke-linecap:round}.running .nacelle[data-v-3e5d999b],.running .intake[data-v-3e5d999b],.running .engine-mark[data-v-3e5d999b]{stroke:var(--radar-success)}.control-surface[data-v-3e5d999b]{fill:var(--radar-surface);stroke:var(--radar-muted);stroke-width:.6px}.control-surface.deployed[data-v-3e5d999b]{fill:var(--radar-accent-soft,#d4af3724);stroke:var(--radar-accent);stroke-width:1.2px}.spoiler.deployed[data-v-3e5d999b]{fill:var(--radar-accent)}.gear-overlay[data-v-3e5d999b]{fill:var(--radar-bg);stroke:var(--radar-success);stroke-width:1.2px;stroke-dasharray:3 2}.gear-legend[data-v-3e5d999b]{color:var(--radar-muted);justify-content:center;align-items:center;gap:6px;padding:0 8px 8px;font-size:10px;display:flex}.gear-legend span[data-v-3e5d999b]{border-top:1px dashed var(--radar-success);flex-shrink:0;width:16px}.status-grid[data-v-3e5d999b]{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:8px;display:grid}.status-chip[data-v-3e5d999b]{border:1px solid var(--radar-border);overflow-wrap:anywhere;min-width:0;color:var(--radar-muted);background:var(--radar-surface);border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px;padding:5px 6px;font-size:11px;display:flex}.status-chip[data-v-3e5d999b]:before{content:"";box-sizing:border-box;border:1px solid;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-chip.on[data-v-3e5d999b]{color:var(--radar-accent);border-color:var(--radar-accent-strong,#b8962e);background:var(--radar-accent-soft,#d4af3724)}.status-chip.on[data-v-3e5d999b]:before{background:currentColor}.data-code[data-v-3e5d999b]{font-family:var(--radar-mono);font-variant-numeric:tabular-nums}@media (width<=768px){.status-grid[data-v-3e5d999b]{grid-template-columns:repeat(2,minmax(0,1fr))}}.pilot-drawer[data-v-d63e8552]{box-sizing:border-box;border:1px solid var(--radar-border);border-radius:var(--radar-radius);background:var(--radar-surface);width:480px;max-height:calc(100dvh - 140px);color:var(--radar-text);font-family:var(--radar-font);font-variant-numeric:tabular-nums;z-index:30;box-shadow:var(--radar-shadow);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent;flex-direction:column;line-height:1.5;display:flex;position:fixed;top:72px;right:20px;overflow:hidden}.drawer-image[data-v-d63e8552]{box-sizing:border-box;background:var(--radar-bg);flex-shrink:0;align-items:end;min-height:240px;padding-top:60px;display:grid;position:relative;overflow:hidden}.drawer-img[data-v-d63e8552]{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.image-fade[data-v-d63e8552]{background:linear-gradient(180deg, #0000, #0000004d 55%, #000000b3 100%, var(--radar-surface));pointer-events:none;position:absolute;inset:0}.photo-badges[data-v-d63e8552]{z-index:2;pointer-events:none;flex-direction:column;align-items:flex-start;gap:5px;max-height:calc(100% - 20px);display:flex;position:absolute;top:10px;left:10px;right:52px;overflow-y:auto}.photo-badge[data-v-d63e8552]{box-sizing:border-box;border:1px solid var(--radar-border);background:var(--radar-surface-raised);border-radius:999px;flex-wrap:wrap;align-items:center;gap:4px 6px;max-width:100%;padding:3px 7px;display:flex}.photo-badge span[data-v-d63e8552]{color:var(--radar-muted);font-size:11px}.photo-badge b[data-v-d63e8552]{min-width:0;color:var(--radar-accent);font-family:var(--radar-mono);overflow-wrap:anywhere;font-size:11px;font-weight:600}.close-btn[data-v-d63e8552]{border:1px solid var(--radar-border);background:var(--radar-surface);width:32px;height:32px;color:var(--radar-muted);cursor:pointer;z-index:2;border-radius:8px;justify-content:center;align-items:center;font-size:14px;transition:background-color .15s,color .15s;display:flex;position:absolute;top:10px;right:10px}.close-btn[data-v-d63e8552]:hover{background:var(--radar-surface-hover);color:var(--radar-text)}.follow-btn[data-v-d63e8552]{border:1px solid var(--radar-border);background:var(--radar-surface);height:32px;color:var(--radar-text);cursor:pointer;z-index:2;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-family:inherit;font-size:12px;transition:background-color .15s,border-color .15s;display:flex;position:absolute;top:10px;right:50px}.follow-btn.active[data-v-d63e8552]{border-color:var(--radar-accent);background:var(--radar-accent-strong);color:var(--radar-text)}.follow-btn[data-v-d63e8552]:hover{border-color:var(--radar-accent);background:var(--radar-surface-hover)}.follow-btn.active[data-v-d63e8552]:hover{background:var(--radar-accent-strong)}.drawer-content[data-v-d63e8552]{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent;flex:auto;min-height:0;padding:12px;overflow-y:auto}.drawer-content[data-v-d63e8552]::-webkit-scrollbar{width:6px}.pilot-drawer[data-v-d63e8552]::-webkit-scrollbar{width:6px}.drawer-content[data-v-d63e8552]::-webkit-scrollbar-thumb{background:var(--radar-border);border-radius:3px}.pilot-drawer[data-v-d63e8552]::-webkit-scrollbar-thumb{background:var(--radar-border);border-radius:3px}.drawer-content[data-v-d63e8552]::-webkit-scrollbar-thumb:hover{background:var(--radar-muted)}.drawer-title[data-v-d63e8552]{background:linear-gradient(180deg, transparent, #000000a6 32%, var(--radar-surface));border-bottom:1px solid var(--radar-border);flex-direction:column;flex-shrink:0;align-items:flex-start;min-width:0;padding:8px 14px 12px;display:flex;position:relative}.title-callsign[data-v-d63e8552]{max-width:100%;font-family:var(--radar-mono);letter-spacing:.04em;overflow-wrap:anywhere;color:var(--radar-accent);font-size:24px;font-weight:700}.title-sub[data-v-d63e8552]{overflow-wrap:anywhere;max-width:100%;color:var(--radar-muted);margin-top:2px;font-size:12px}.data-code[data-v-d63e8552]{font-family:var(--radar-mono)}.badge-row[data-v-d63e8552]{flex-wrap:wrap;align-items:center;gap:6px;max-width:100%;margin-top:8px;display:flex}.status-badge[data-v-d63e8552]{box-sizing:border-box;overflow-wrap:anywhere;border:1px solid var(--radar-border);background:var(--radar-surface-raised);max-width:100%;color:var(--radar-success);border-radius:999px;padding:3px 7px;font-size:11px;font-weight:600}.controller-badge[data-v-d63e8552]{box-sizing:border-box;border:1px solid var(--radar-border);background:var(--radar-surface-raised);border-radius:999px;flex-wrap:wrap;align-items:center;gap:4px 6px;max-width:100%;padding:3px 7px;display:flex}.controller-badge span[data-v-d63e8552]{color:var(--radar-muted);font-size:11px}.controller-badge b[data-v-d63e8552]{min-width:0;font-family:var(--radar-mono);overflow-wrap:anywhere;color:var(--radar-accent);font-size:11px;font-weight:600}.controller-badge b.no-controller[data-v-d63e8552]{color:var(--radar-muted)}.stats[data-v-d63e8552]{border-bottom:1px solid var(--radar-border);background:var(--radar-surface-raised);flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat[data-v-d63e8552]{border-right:1px solid var(--radar-border);flex-direction:column;align-items:center;min-width:0;padding:8px 2px;display:flex}.stat[data-v-d63e8552]:last-child{border-right:none}.stat-label[data-v-d63e8552]{letter-spacing:.04em;color:var(--radar-muted);font-size:10px}.stat-value[data-v-d63e8552]{max-width:100%;font-family:var(--radar-mono);overflow-wrap:anywhere;color:var(--radar-text);margin-top:3px;font-size:18px;font-weight:600}.stat-value small[data-v-d63e8552]{font-family:var(--radar-font);color:var(--radar-muted);margin-left:3px;font-size:10px;font-weight:400}.section-title[data-v-d63e8552]{letter-spacing:.06em;color:var(--radar-muted);border-bottom:1px solid var(--radar-border);margin:14px 0 8px;padding-bottom:6px;font-size:11px;font-weight:600}.section-title[data-v-d63e8552]:first-child{margin-top:0}.flightplan-card[data-v-d63e8552]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface-raised);padding:10px}.flightplan-reminder[data-v-d63e8552]{overflow-wrap:anywhere;font-size:13px}.identity-profile[data-v-d63e8552],.profile-status[data-v-d63e8552]{overflow-wrap:anywhere;max-width:100%;color:var(--radar-muted);flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:12px;display:flex}.identity-profile[data-v-d63e8552]{gap:4px;margin-top:4px;font-size:11px;line-height:1.25}.rank-icon[data-v-d63e8552]{object-fit:contain;max-width:72px;height:18px;max-height:18px}.profile-retry[data-v-d63e8552]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface-raised);min-width:44px;max-width:100%;min-height:44px;color:var(--radar-text);font:inherit;overflow-wrap:anywhere;cursor:pointer;padding:8px 12px;font-size:12px}.profile-retry[data-v-d63e8552]:hover{background:var(--radar-surface-hover)}.profile-retry[data-v-d63e8552]:focus-visible{outline:2px solid var(--radar-accent);outline-offset:2px}.fp-route[data-v-d63e8552]{align-items:stretch;gap:10px;display:flex}.fp-airport[data-v-d63e8552]{border:1px solid var(--radar-border);background:var(--radar-surface);cursor:pointer;border-radius:8px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-width:0;padding:8px 4px;font-family:inherit;line-height:1.5;transition:border-color .2s,background .2s;display:flex}.fp-airport[data-v-d63e8552]:hover{border-color:var(--radar-accent);background:var(--radar-surface-hover)}.fp-code[data-v-d63e8552]{max-width:100%;font-family:var(--radar-mono);letter-spacing:.03em;overflow-wrap:anywhere;color:var(--radar-accent);font-size:20px;font-weight:700}.fp-iata[data-v-d63e8552]{font-family:var(--radar-mono);color:var(--radar-text);font-size:11px}.fp-label[data-v-d63e8552]{overflow-wrap:anywhere;letter-spacing:.06em;max-width:100%;color:var(--radar-muted);font-size:9px}.fp-mid[data-v-d63e8552]{flex-direction:column;flex:1.2;justify-content:center;gap:8px;min-width:0;display:flex}.fp-progress[data-v-d63e8552]{background:var(--radar-border);border-radius:3px;height:4px;position:relative;overflow:visible}.fp-progress-fill[data-v-d63e8552]{background:var(--radar-accent);border-radius:3px;height:100%;transition:width .5s}.fp-plane-marker[data-v-d63e8552]{background:var(--radar-text);border:2px solid var(--radar-accent);border-radius:50%;width:8px;height:8px;transition:left .5s;position:absolute;top:50%;transform:translate(-50%,-50%)}.fp-progress-info[data-v-d63e8552]{color:var(--radar-muted);justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.fp-pct[data-v-d63e8552]{font-family:var(--radar-mono);color:var(--radar-accent);font-weight:600}.fp-arrow[data-v-d63e8552]{color:var(--radar-accent)}.plan-rows[data-v-d63e8552]{margin-top:6px}.drawer-content>.plan-rows[data-v-d63e8552]{border:1px solid var(--radar-border);border-radius:var(--radar-radius-sm);background:var(--radar-surface-raised);padding:2px 10px}.plan-row[data-v-d63e8552]{border-bottom:1px solid var(--radar-border);justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;display:flex}.plan-row[data-v-d63e8552]:last-child{border-bottom:0}.plan-row>span[data-v-d63e8552]{min-width:0;max-width:45%;color:var(--radar-muted);overflow-wrap:anywhere;font-size:11px}.plan-row>b[data-v-d63e8552]{min-width:0;color:var(--radar-text);text-align:right;overflow-wrap:anywhere;font-size:12px;font-weight:500}.route-row[data-v-d63e8552]{flex-direction:column;align-items:stretch;gap:6px}.route-row>b[data-v-d63e8552]{border:1px solid var(--radar-border);border-left:2px solid var(--radar-accent);border-radius:var(--radar-radius-sm);background:var(--radar-bg);color:var(--radar-text);text-align:left;padding:8px;line-height:1.7}.pilot-drawer.mobile .drawer-image[data-v-d63e8552]{min-height:200px}.pilot-drawer.mobile .drawer-content[data-v-d63e8552]{flex:none;overflow:visible}@media (width<=768px){.pilot-drawer[data-v-d63e8552]{width:min(320px,100vw - 24px);max-height:calc(100dvh - 120px);top:60px;right:12px;overflow-y:auto}.drawer-image[data-v-d63e8552]{min-height:200px}.drawer-content[data-v-d63e8552]{flex:none;padding:10px;overflow:visible}.drawer-title[data-v-d63e8552]{padding:6px 10px 10px}.title-callsign[data-v-d63e8552]{font-size:22px}.stat-value[data-v-d63e8552]{font-size:14px}.fp-route[data-v-d63e8552]{gap:8px}.fp-code[data-v-d63e8552]{font-size:17px}}@media (height<=600px){.pilot-drawer[data-v-d63e8552]{overflow-y:auto}.drawer-image[data-v-d63e8552]{min-height:200px}.drawer-content[data-v-d63e8552]{flex:none;overflow:visible}}.footer[data-v-8c2beb2a]{box-sizing:border-box;border-top:1px solid var(--radar-border);background:var(--radar-surface);height:48px;color:var(--radar-text);font-family:var(--radar-font);font-variant-numeric:tabular-nums;z-index:20;align-items:center;gap:16px;padding:0 16px;font-size:12px;display:flex;position:fixed;inset:auto 0 0}.footer-left[data-v-8c2beb2a],.connection[data-v-8c2beb2a],.nav-select[data-v-8c2beb2a]{flex-shrink:0;align-items:center;gap:8px;display:flex}.app-version[data-v-8c2beb2a]{color:var(--radar-muted);font-family:var(--radar-mono);white-space:nowrap;padding-left:4px;font-size:10px}.connection[data-v-8c2beb2a]{color:var(--radar-muted);white-space:nowrap}.connection.connected[data-v-8c2beb2a]{color:var(--radar-success)}.connection.failed[data-v-8c2beb2a]{color:var(--radar-danger)}.status-dot[data-v-8c2beb2a]{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.ws-btn[data-v-8c2beb2a],.follow-button[data-v-8c2beb2a]{border:1px solid var(--radar-border);border-radius:var(--radar-radius);background:var(--radar-surface-raised);min-height:32px;color:var(--radar-text);font:inherit;cursor:pointer;white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:flex}.ws-btn[data-v-8c2beb2a]{color:var(--radar-accent)}.ws-btn[data-v-8c2beb2a]:hover,.follow-button[data-v-8c2beb2a]:hover{background:var(--radar-surface-hover);border-color:var(--radar-accent)}button[data-v-8c2beb2a]:focus-visible,.footer-tags[data-v-8c2beb2a]:focus-visible{outline:2px solid var(--radar-accent);outline-offset:2px}.nav-select[data-v-8c2beb2a]{border-left:1px solid var(--radar-border);color:var(--radar-muted);padding-left:12px}.nav-select[data-v-8c2beb2a] .el-select{--el-fill-color-blank:var(--radar-bg);--el-border-color:var(--radar-border);--el-border-color-hover:var(--radar-accent);--el-color-primary:var(--radar-accent);--el-text-color-regular:var(--radar-text);--el-text-color-placeholder:var(--radar-muted);--el-border-radius-base:var(--radar-radius);width:140px}.nav-select[data-v-8c2beb2a] .el-select__wrapper{min-height:30px;font-family:var(--radar-font);border-radius:10px}.nav-select[data-v-8c2beb2a] .el-select__wrapper.is-disabled{background:var(--radar-surface-raised);box-shadow:0 0 0 1px var(--radar-border) inset}.nav-select[data-v-8c2beb2a] .el-select__selected-item:not(.is-transparent){color:var(--radar-accent);font-family:var(--radar-mono)}.nav-cycle-popper.el-popper{border-radius:12px}.nav-cycle-popper .el-select-dropdown__item{font-family:var(--radar-mono);border-radius:8px;margin:2px 6px}.footer-tags[data-v-8c2beb2a]{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--radar-border) transparent;flex:1;align-items:center;gap:14px;min-width:0;display:flex;overflow-x:auto}.readout[data-v-8c2beb2a]{white-space:nowrap;flex-shrink:0;align-items:baseline;gap:5px;display:inline-flex}.readout b[data-v-8c2beb2a],.callsign[data-v-8c2beb2a],.follow-callsign[data-v-8c2beb2a]{font-family:var(--radar-mono);font-weight:500}.route-text[data-v-8c2beb2a]{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.readout-label[data-v-8c2beb2a],.unit[data-v-8c2beb2a],.empty-hint[data-v-8c2beb2a]{color:var(--radar-muted)}.unit[data-v-8c2beb2a]{font-size:10px}.callsign[data-v-8c2beb2a]{color:var(--radar-accent);font-weight:600}.flight-status[data-v-8c2beb2a]{border-right:1px solid var(--radar-border);padding-right:14px}.empty-hint[data-v-8c2beb2a]{white-space:nowrap}.follow-button.active[data-v-8c2beb2a]{border-color:var(--radar-accent);background:var(--radar-accent-soft);color:var(--radar-accent)}.follow-callsign[data-v-8c2beb2a]{text-overflow:ellipsis;max-width:120px;overflow:hidden}.sr-only[data-v-8c2beb2a]{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1100px){.follow-callsign[data-v-8c2beb2a]{display:none}.footer[data-v-8c2beb2a]{gap:12px}}@media (width<=768px){.footer[data-v-8c2beb2a]{gap:8px;padding:0 8px}.footer-left[data-v-8c2beb2a]{gap:6px}.connection-label[data-v-8c2beb2a],.reconnect-label[data-v-8c2beb2a],.secondary[data-v-8c2beb2a],.empty-hint[data-v-8c2beb2a]{display:none}.nav-select[data-v-8c2beb2a]{border-left:0;padding-left:0}.nav-select[data-v-8c2beb2a] .el-select{width:126px}.nav-select[data-v-8c2beb2a] .el-select__wrapper{min-height:36px}.footer-tags[data-v-8c2beb2a]{gap:10px}.ws-btn[data-v-8c2beb2a],.follow-button[data-v-8c2beb2a]{min-height:36px;padding:0 8px}.flight-status[data-v-8c2beb2a]{padding-right:10px}}@media (width<=380px){.nav-select[data-v-8c2beb2a] .el-select{width:122px}.follow-button>span[data-v-8c2beb2a]{display:none}.follow-button[data-v-8c2beb2a]{min-width:36px}}.map-container[data-v-13b75f1c]{width:100%;height:100%}.hover-tooltip[data-v-13b75f1c]{z-index:35;border:1px solid var(--radar-border);border-radius:var(--radar-radius);background:var(--radar-surface);min-width:170px;color:var(--radar-text);font-family:var(--radar-font);pointer-events:none;box-shadow:var(--radar-shadow);padding:10px 12px;font-size:12px;position:fixed}.ht-title[data-v-13b75f1c]{font-size:14px;font-weight:700;font-family:var(--radar-mono);color:var(--radar-accent);border-bottom:1px solid var(--radar-border);margin-bottom:6px;padding-bottom:5px}.ht-row[data-v-13b75f1c]{justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;display:flex}.ht-row span[data-v-13b75f1c]{color:var(--radar-muted)}.ht-row b[data-v-13b75f1c]{color:var(--radar-text);font-family:var(--radar-mono);font-weight:600}.slide-left-enter-active,.slide-left-leave-active{transition:transform .35s,opacity .35s}.slide-left-enter-from,.slide-left-leave-to{opacity:0;transform:translate(calc(-100% - 30px))}.slide-right-enter-active,.slide-right-leave-active{transition:transform .35s,opacity .35s}.slide-right-enter-from,.slide-right-leave-to{opacity:0;transform:translate(calc(100% + 30px))}.slide-up-enter-active,.slide-up-leave-active{transition:transform .35s}.slide-up-enter-from,.slide-up-leave-to{transform:translateY(100%)}.update-notice-text[data-v-e5dc2bc3]{color:var(--radar-text);line-height:1.7}.update-notice-button[data-v-e5dc2bc3]{border:1px solid var(--radar-accent);border-radius:var(--radar-radius-sm);background:var(--radar-accent);color:#18181b;cursor:pointer;min-width:96px;padding:8px 14px;font-size:12px}.update-notice-button[data-v-e5dc2bc3]:hover{background:var(--radar-accent-strong);color:var(--radar-text)}[data-v-e5dc2bc3] .version-update-overlay{-webkit-backdrop-filter:blur(8px);background:#05050894}[data-v-e5dc2bc3] .version-update-dialog.el-dialog{border:1px solid var(--radar-accent);border-radius:var(--radar-radius);background:var(--radar-surface-raised);box-shadow:0 18px 48px #0000006b}[data-v-e5dc2bc3] .version-update-dialog .el-dialog__header{border-bottom:1px solid var(--radar-border);margin-right:0}[data-v-e5dc2bc3] .version-update-dialog .el-dialog__title{color:var(--radar-text);font-size:15px}[data-v-e5dc2bc3] .version-update-dialog .el-dialog__body{padding-top:20px;padding-bottom:8px}[data-v-e5dc2bc3] .version-update-dialog .el-dialog__footer{border-top:1px solid var(--radar-border)}
