@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Rajdhani:wght@400;500;600;700&family=Share+Tech+Mono&display=swap";:root{--bg-deep: #050a14;--bg-panel: rgba(10, 20, 40, .75);--bg-panel-solid: #0a1428;--bg-card: rgba(15, 28, 55, .8);--bg-hover: rgba(22, 42, 80, .9);--cyan-primary: #00d4ff;--cyan-dim: #0099bb;--cyan-glow: rgba(0, 212, 255, .2);--amber: #ffb347;--amber-dim: #cc8822;--amber-glow: rgba(255, 179, 71, .2);--green: #39ff14;--green-dim: #22cc00;--red: #ff4444;--red-dim: #cc2222;--yellow: #ffe14d;--purple: #b983ff;--text-primary: #e8f4fd;--text-secondary: #7ba8cc;--text-muted: #4a6880;--text-mono: #00d4ff;--border: rgba(0, 212, 255, .15);--border-bright: rgba(0, 212, 255, .4);--border-amber: rgba(255, 179, 71, .3);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--shadow-panel: 0 8px 32px rgba(0, 0, 0, .6), 0 0 0 1px var(--border);--shadow-cyan: 0 0 20px rgba(0, 212, 255, .3);--shadow-amber: 0 0 20px rgba(255, 179, 71, .3);--sidebar-width: 240px;--header-height: 64px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{font-family:Inter,sans-serif;background:var(--bg-deep);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse 80% 60% at 20% 10%,rgba(0,100,180,.12) 0%,transparent 60%),radial-gradient(ellipse 60% 50% at 80% 90%,rgba(0,60,120,.1) 0%,transparent 60%),radial-gradient(ellipse 40% 40% at 50% 50%,rgba(0,212,255,.03) 0%,transparent 100%);pointer-events:none;z-index:0}#root{height:100vh;position:relative;z-index:1}.app-layout{display:flex;height:100vh;overflow:hidden}.app-main{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.page-content{flex:1;overflow-y:auto;padding:24px 28px}.page-content::-webkit-scrollbar{width:6px}.page-content::-webkit-scrollbar-track{background:transparent}.page-content::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:3px}.glass-panel{background:var(--bg-panel);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel)}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px;transition:border-color .3s ease,box-shadow .3s ease}.glass-card:hover{border-color:var(--border-bright);box-shadow:0 0 24px #00d4ff1a}h1,h2,h3,h4{font-family:Rajdhani,sans-serif;letter-spacing:.05em}h1{font-size:2rem;font-weight:700}h2{font-size:1.5rem;font-weight:600}h3{font-size:1.2rem;font-weight:600}h4{font-size:1rem;font-weight:600}.mono{font-family:Share Tech Mono,monospace}.text-cyan{color:var(--cyan-primary)}.text-amber{color:var(--amber)}.text-green{color:var(--green)}.text-red{color:var(--red)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--radius-sm);font-family:Rajdhani,sans-serif;font-size:.95rem;font-weight:600;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--cyan-primary),var(--cyan-dim));color:var(--bg-deep);box-shadow:0 4px 15px #00d4ff59}.btn-primary:hover:not(:disabled){box-shadow:0 6px 25px #00d4ff8c;transform:translateY(-1px)}.btn-amber{background:linear-gradient(135deg,var(--amber),var(--amber-dim));color:var(--bg-deep);box-shadow:0 4px 15px #ffb34759}.btn-amber:hover:not(:disabled){box-shadow:0 6px 25px #ffb3478c;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-bright)}.btn-danger{background:linear-gradient(135deg,var(--red),var(--red-dim));color:#fff;box-shadow:0 4px 15px #ff444459}.btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 25px #ff44448c}.btn-sm{padding:6px 14px;font-size:.82rem}.btn-lg{padding:13px 28px;font-size:1.05rem}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.badge-green{background:#39ff1426;color:var(--green);border:1px solid rgba(57,255,20,.3)}.badge-amber{background:var(--amber-glow);color:var(--amber);border:1px solid var(--border-amber)}.badge-cyan{background:var(--cyan-glow);color:var(--cyan-primary);border:1px solid var(--border-bright)}.badge-red{background:#ff444426;color:var(--red);border:1px solid rgba(255,68,68,.3)}.badge-purple{background:#b983ff26;color:var(--purple);border:1px solid rgba(185,131,255,.3)}.badge-muted{background:#4a688033;color:var(--text-muted);border:1px solid rgba(74,104,128,.3)}.conf-pill{font-family:Share Tech Mono,monospace;font-size:.7rem;padding:2px 8px;border-radius:10px;font-weight:700}.conf-high{background:#39ff1426;color:var(--green)}.conf-medium{background:#ffe14d26;color:var(--yellow)}.conf-low{background:#ff444426;color:var(--red)}.input-field{width:100%;padding:10px 14px;background:#0a1428b3;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:Inter,sans-serif;font-size:.9rem;transition:border-color .2s ease,box-shadow .2s ease;outline:none}.input-field:focus,.input-field:hover{border-color:var(--cyan-primary);box-shadow:0 0 0 3px var(--cyan-glow)}.input-field option{background:var(--bg-panel-solid)}.page-header{margin-bottom:24px}.page-header h1{font-size:1.8rem;color:var(--text-primary)}.page-header p{color:var(--text-secondary);margin-top:4px;font-size:.9rem}.page-title-row{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.flex-col{display:flex;flex-direction:column;gap:16px}.flex-row{display:flex;align-items:center;gap:12px}.scrollable-feed{overflow-y:auto;max-height:100%}.scrollable-feed::-webkit-scrollbar{width:4px}.scrollable-feed::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.status-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.status-dot.live{background:var(--green);box-shadow:0 0 8px var(--green),0 0 16px #39ff1466;animation:pulse-green 1.5s ease-in-out infinite}.status-dot.idle{background:var(--text-muted)}.status-dot.error{background:var(--red);box-shadow:0 0 8px var(--red)}@keyframes pulse-green{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.gauge-wrap{display:flex;flex-direction:column;align-items:center;gap:8px}.gauge-label{font-size:.72rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em}.gauge-value{font-family:Share Tech Mono,monospace;font-size:1.1rem;font-weight:700}.alert-banner{display:flex;align-items:center;gap:12px;padding:12px 18px;border-radius:var(--radius-md);font-size:.88rem;font-weight:500;animation:slide-down .3s ease}.alert-banner.danger{background:#ff444426;border:1px solid rgba(255,68,68,.4);color:var(--red)}.alert-banner.warning{background:#ffe14d1a;border:1px solid rgba(255,225,77,.3);color:var(--yellow)}.alert-banner.info{background:var(--cyan-glow);border:1px solid var(--border-bright);color:var(--cyan-primary)}@keyframes slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chat-bubble-wrap{display:flex;flex-direction:column;margin-bottom:14px}.chat-bubble-wrap.atc{align-items:flex-start}.chat-bubble-wrap.pilot{align-items:flex-end}.chat-bubble{max-width:82%;padding:12px 16px;border-radius:var(--radius-md);font-size:.88rem;position:relative;line-height:1.5}.chat-bubble.atc{background:#00d4ff1a;border:1px solid rgba(0,212,255,.3);border-bottom-left-radius:4px}.chat-bubble.pilot{background:#ffb3471a;border:1px solid rgba(255,179,71,.3);border-bottom-right-radius:4px}.chat-meta{font-size:.72rem;color:var(--text-muted);margin-top:4px}@keyframes glow-cyan{0%,to{box-shadow:0 0 10px var(--cyan-glow)}50%{box-shadow:0 0 25px #00d4ff73}}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fade-in .35s ease both}.tab-bar{display:flex;gap:4px;background:#050a1499;padding:4px;border-radius:var(--radius-sm);border:1px solid var(--border)}.tab-btn{flex:1;padding:8px 16px;font-family:Rajdhani,sans-serif;font-size:.9rem;font-weight:600;letter-spacing:.05em;background:transparent;border:none;border-radius:calc(var(--radius-sm) - 2px);color:var(--text-muted);cursor:pointer;transition:all .2s ease}.tab-btn:hover{color:var(--text-secondary);background:#ffffff0a}.tab-btn.active{background:var(--bg-card);color:var(--cyan-primary);box-shadow:0 0 12px #00d4ff26}.divider{height:1px;background:var(--border);margin:20px 0}.waveform-container{background:#050a14cc;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;padding:8px}.progress-bar-wrap{width:100%;height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:4px;transition:width .4s ease}.progress-bar-fill.cyan{background:linear-gradient(90deg,var(--cyan-dim),var(--cyan-primary))}.progress-bar-fill.amber{background:linear-gradient(90deg,var(--amber-dim),var(--amber))}.progress-bar-fill.green{background:linear-gradient(90deg,var(--green-dim),var(--green))}.progress-bar-fill.red{background:linear-gradient(90deg,var(--red-dim),var(--red))}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:#ffffff0d}.recharts-text{fill:var(--text-muted);font-size:11px;font-family:Share Tech Mono,monospace}.recharts-tooltip-wrapper{filter:none!important}.footer{padding:12px 28px;text-align:center;font-size:.78rem;color:var(--text-muted);border-top:1px solid var(--border);background:#050a1480;flex-shrink:0}.footer a{color:var(--cyan-primary);text-decoration:none}.footer a:hover{text-decoration:underline}@media(max-width:900px){.grid-2{grid-template-columns:1fr}.grid-3,.grid-4{grid-template-columns:1fr 1fr}}@media(max-width:600px){.page-content{padding:16px}.grid-3,.grid-4{grid-template-columns:1fr}}
