@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@300;400;600;700&family=JetBrains+Mono:wght@400;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";
:root{--bg-primary:#05070a;--bg-secondary:#0a0f14;--bg-surface:#111922;--text-primary:#e6eef7;--text-secondary:#a6b5c7;--accent-blue:#00d9ff;--accent-cyan:#1e9af9;--primary:#00d9ff;--secondary:#7c3aed;--status-critical:#f43f5e;--status-high:#f59e0b;--status-medium:#f59e0b;--status-success:#10b981;--status-info:#38bdf8;--live:#10b981;--emergency:#f43f5e;--intel:#c084fc;--metric-ram:#8b5cf6;--text-body:#e2e8f0;--warn:#f59e0b;--info:#38bdf8;--z-dropdown:50;--z-player:100;--z-overlay:1000;--z-modal:1100;--z-toast:1200;--background:#05070a;--foreground:#e6eef7;--card:#111922cc;--card-border:#ffffff0d;--muted:#8b9bb0;--text-label:#94a3b8;--text-value:#cbd5e1;--surface-inset:#0a0e14;--primary-glow:#00d9ff4d;--neon-glow:0 0 10px #00d9ff4d;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background:var(--bg-primary);width:100vw;max-width:100vw;height:100dvh;color:var(--text-primary);-webkit-font-smoothing:antialiased;overscroll-behavior:none;font-family:Inter,Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}.glass{background:var(--card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--card-border);border-radius:16px;box-shadow:0 4px 24px #0006}.neon-border{border:1px solid var(--primary);box-shadow:0 0 15px var(--primary-glow)}.tactical-popup .maplibregl-popup-content{-webkit-backdrop-filter:blur(10px);border:1px solid var(--card-border);color:var(--text-primary);background:#111922f5;border-radius:12px;padding:12px 14px;box-shadow:0 6px 24px #00000080}.tactical-popup .maplibregl-popup-tip{border-top-color:#111922f5;border-bottom-color:#111922f5}.tactical-popup .maplibregl-popup-close-button{color:var(--muted);padding:12px;font-size:16px;line-height:1}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:var(--z-modal);background:#030508d1;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.font-tactical{text-transform:uppercase;letter-spacing:.1em;font-family:Space Grotesk,JetBrains Mono,monospace}.page-title{text-transform:uppercase;letter-spacing:.1em;color:#fff;margin:0;font-family:Space Grotesk,JetBrains Mono,monospace;font-size:20px;font-weight:700}.panel-heading{letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:0;font-size:13px;font-weight:700}.gradient-text{background:linear-gradient(135deg,#fff 0%,var(--primary)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.editor-modal{background:#05070af7;border:1px solid #00d9ff4d;flex-direction:column;width:90%;max-height:90dvh;display:flex;overflow:hidden}.editor-modal-header{border-bottom:1px solid var(--card-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.editor-modal-title{color:#fff;text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.editor-modal-body{flex-direction:column;gap:16px;min-height:0;padding:20px;display:flex;overflow-y:auto}.editor-modal-footer{border-top:1px solid var(--card-border);flex-shrink:0;justify-content:flex-end;gap:12px;padding:16px 20px;display:flex}button{background:0 0;border:none;font-family:inherit}.glass-button{border:1px solid var(--card-border);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#ffffff08;transition:all .2s cubic-bezier(.4,0,.2,1)}.glass-button:hover{border-color:var(--accent-blue);box-shadow:var(--neon-glow);background:#00d9ff14;transform:translateY(-1px)}.glass-button:active{transform:translateY(0)scale(.98)}.glass-button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px;border-radius:6px}.nav-item-hover:hover{color:#fff!important;background:#ffffff0d!important}.pulse{animation:2s infinite pulse-animation}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:.8s linear infinite spin}@keyframes pulse-animation{0%{box-shadow:0 0 0 0px var(--primary-glow)}to{box-shadow:0 0 0 20px #00d9ff00}}@keyframes signal-pulse{0%{box-shadow:0 0 #00d9ffb3}70%{box-shadow:0 0 0 10px #00d9ff00}to{box-shadow:0 0 #00d9ff00}}.pulse-signal{animation:2s infinite signal-pulse}@media (prefers-reduced-motion:reduce){.pulse,.pulse-signal,.animate-spin{animation:none!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.skip-link{z-index:var(--z-toast,9999);background:var(--accent-blue,#00d9ff);color:#05070a;border-radius:8px;padding:10px 16px;font-weight:700;text-decoration:none;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:8px}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--card-border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--accent-blue)}.app-container{background:var(--background);width:100vw;height:100dvh;padding-bottom:72px;display:flex;position:relative;overflow:hidden}.sidebar{scrollbar-width:none;flex-direction:column;display:flex;overflow-y:auto}.sidebar::-webkit-scrollbar{display:none}.hud-rail{z-index:5;flex-direction:column;gap:16px;height:100%;padding:16px;display:flex}.mission-grid{grid-template-columns:320px 1fr 380px;width:100vw;height:100vh;display:grid;overflow:hidden}.dashboard-grid{grid-template-columns:1fr 350px;gap:10px;height:100%;display:grid;overflow:hidden}.radio-player{z-index:var(--z-player);position:fixed;bottom:0;left:0;right:0}.mobile-only{display:none!important}.sidebar-overlay{display:none}@media (max-width:1200px){.dashboard-grid{grid-template-columns:1fr;overflow-y:auto}.dashboard-grid>section,.dashboard-grid>div{min-height:400px;height:auto!important}}@media (max-width:1023px){.app-container{padding-bottom:calc(72px + var(--safe-bottom));flex-direction:column}input,select,textarea{font-size:16px!important}.sidebar{z-index:200;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--primary-glow);background:#05070afa;max-width:300px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;transform:translate(-110%);width:80%!important;height:100%!important}.sidebar.mobile-open{transform:translate(0)}.sidebar-overlay.visible{z-index:190;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:block;position:fixed;inset:0}.bottom-nav{border-top:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:90;background:#05070af2;justify-content:space-around;align-items:center;height:56px;padding-bottom:0;display:flex;position:fixed;bottom:72px;left:0;right:0}.radio-player{padding-bottom:var(--safe-bottom);bottom:0}.main-content{width:100vw;padding:8px;overflow-y:hidden}.dashboard-grid{-webkit-overflow-scrolling:touch;flex-direction:column;display:flex;overflow-y:auto}.mobile-only{display:flex!important}.desktop-only{display:none!important}.glass{border-radius:10px}h1,h2{font-size:1.1rem!important}::-webkit-scrollbar{width:0}button,a,[role=button]{touch-action:manipulation}.glass-button{-webkit-user-select:none;user-select:none}}@media (display-mode:standalone){.app-container{padding-top:var(--safe-top)}}#__next-build-watcher,[data-nextjs-toast],[data-nextjs-dialog-overlay],#nextjs-portal,div[class*=Turbopack],div[class*=nextjs-toast],nextjs-portal,div[id^=next-]>div[style*=bottom\:]{display:none!important}@media (max-width:767px){.touch-target{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.scan-select{max-width:170px;min-height:44px}.page-action{justify-content:center;width:100%;min-height:44px}.check-hit{cursor:pointer;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin:-10px 0 -10px -10px;display:inline-flex}.check-hit input[type=checkbox]{width:20px;height:20px}}
