@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--surface-0:#0a0a0b;--surface-1:#101013;--surface-2:#141417;--surface-3:#1a1a1f;--surface-4:#222228;--surface-glass:#101013d9;--border-0:#ffffff0f;--border-1:#ffffff14;--border-2:#ffffff24;--border-accent:#10b98173;--border-glass:#ffffff14;--gray-950:#09090b;--gray-900:#101013;--gray-850:#141417;--gray-800:#1a1a1f;--gray-750:#222228;--gray-700:#2e2e35;--gray-600:#52525b;--gray-500:#71717a;--gray-400:#a1a1aa;--gray-300:#c9c9d1;--gray-200:#e4e4e7;--gray-150:#ededef;--gray-100:#f4f4f5;--gray-50:#fafafa;--accent-1:#10b981;--accent:#10b981;--accent-dim:#10b9811f;--accent-hover:#059669;--accent-muted:#10b98159;--accent-tertiary:#34d399;--text-1:#fafafa;--text-2:#e4e4e7;--text-3:#a1a1aa;--text-muted:#71717a;--risk-critical:#ef4444;--risk-critical-dim:#ef44441f;--risk-critical-text:#fca5a5;--risk-high:#f97316;--risk-high-dim:#f973161f;--risk-high-text:#fdba74;--risk-medium:#f59e0b;--risk-medium-dim:#f59e0b1f;--risk-medium-text:#fcd34d;--risk-low:#10b981;--risk-low-dim:#10b9811f;--risk-low-text:#6ee7b7;--risk-safe:#10b981;--risk-safe-dim:#10b9811a;--risk-safe-text:#6ee7b7;--status-success:#22c55e;--status-warning:#f59e0b;--status-error:#ef4444;--status-info:#3b82f6;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--text-11:.6875rem;--text-12:.75rem;--text-13:.8125rem;--text-14:.875rem;--text-16:1rem;--text-20:1.25rem;--text-28:1.75rem;--text-36:2.25rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--motion-fast:.15s cubic-bezier(.4, 0, .2, 1);--motion-normal:.2s cubic-bezier(.4, 0, .2, 1);--motion-slow:.3s cubic-bezier(.4, 0, .2, 1);--sidebar-width:220px;--sidebar-collapsed-width:52px;--topbar-height:48px;scrollbar-width:thin;scrollbar-color:var(--gray-700) transparent}[data-theme=light]{--surface-0:#f8f8fa;--surface-1:#fff;--surface-2:#f2f2f5;--surface-3:#e8e8ed;--surface-4:#dcdce3;--border-0:#e4e4e8;--border-1:#d4d4db;--border-2:#bbbbc4;--gray-950:#f8f8fa;--gray-900:#f2f2f5;--gray-800:#e8e8ed;--gray-700:#d4d4db;--gray-600:#bbbbc4;--gray-500:#8e8e9a;--gray-400:#6e6e78;--gray-300:#52525c;--gray-200:#3a3a42;--gray-150:#2a2a32;--gray-100:#1c1c22;--gray-50:#09090b;scrollbar-color:var(--gray-600) transparent}
:root{--surface-0:#0a0a0b;--surface-1:#101013;--surface-2:#141417;--surface-3:#1a1a1f;--surface-4:#222228;--surface-glass:#101013d9;--border-0:#ffffff0f;--border-1:#ffffff14;--border-2:#ffffff24;--border-accent:#10b98173;--border-glass:#ffffff14;--gray-950:#09090b;--gray-900:#101013;--gray-850:#141417;--gray-800:#1a1a1f;--gray-750:#222228;--gray-700:#2e2e35;--gray-600:#52525b;--gray-500:#71717a;--gray-400:#a1a1aa;--gray-300:#c9c9d1;--gray-200:#e4e4e7;--gray-150:#ededef;--gray-100:#f4f4f5;--gray-50:#fafafa;--accent-1:#10b981;--accent:#10b981;--accent-dim:#10b9811f;--accent-hover:#059669;--accent-muted:#10b98159;--accent-tertiary:#34d399;--text-1:#fafafa;--text-2:#e4e4e7;--text-3:#a1a1aa;--text-muted:#71717a;--risk-critical:#ef4444;--risk-critical-dim:#ef44441f;--risk-critical-text:#fca5a5;--risk-high:#f97316;--risk-high-dim:#f973161f;--risk-high-text:#fdba74;--risk-medium:#f59e0b;--risk-medium-dim:#f59e0b1f;--risk-medium-text:#fcd34d;--risk-low:#10b981;--risk-low-dim:#10b9811f;--risk-low-text:#6ee7b7;--risk-safe:#10b981;--risk-safe-dim:#10b9811a;--risk-safe-text:#6ee7b7;--status-success:#22c55e;--status-warning:#f59e0b;--status-error:#ef4444;--status-info:#3b82f6;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--text-11:.6875rem;--text-12:.75rem;--text-13:.8125rem;--text-14:.875rem;--text-16:1rem;--text-20:1.25rem;--text-28:1.75rem;--text-36:2.25rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--motion-fast:.15s cubic-bezier(.4, 0, .2, 1);--motion-normal:.2s cubic-bezier(.4, 0, .2, 1);--motion-slow:.3s cubic-bezier(.4, 0, .2, 1);--sidebar-width:220px;--sidebar-collapsed-width:52px;--topbar-height:48px;scrollbar-width:thin;scrollbar-color:var(--gray-700) transparent}[data-theme=light]{--surface-0:#f8f8fa;--surface-1:#fff;--surface-2:#f2f2f5;--surface-3:#e8e8ed;--surface-4:#dcdce3;--border-0:#e4e4e8;--border-1:#d4d4db;--border-2:#bbbbc4;--gray-950:#f8f8fa;--gray-900:#f2f2f5;--gray-800:#e8e8ed;--gray-700:#d4d4db;--gray-600:#bbbbc4;--gray-500:#8e8e9a;--gray-400:#6e6e78;--gray-300:#52525c;--gray-200:#3a3a42;--gray-150:#2a2a32;--gray-100:#1c1c22;--gray-50:#09090b;scrollbar-color:var(--gray-600) transparent}.dashboard-wrapper,.dashboard-wrapper *,.dashboard-wrapper :before,.dashboard-wrapper :after{box-sizing:border-box;margin:0;padding:0}.dashboard-wrapper{font-family:var(--font-sans);font-size:var(--text-14);color:var(--gray-200);background-color:var(--surface-0);width:100vw;height:100vh;font-weight:400;line-height:1.5;overflow:hidden}.text-label{font-size:var(--text-11);letter-spacing:.06em;text-transform:uppercase;color:var(--gray-400);font-weight:600}.text-caption{font-size:var(--text-12);color:var(--gray-400);font-weight:400}.text-body-sm{font-size:var(--text-13);color:var(--gray-300);font-weight:400}.text-body{font-size:var(--text-14);color:var(--gray-200);font-weight:400}.text-title{font-size:var(--text-16);color:var(--gray-100);font-weight:600}.text-heading{font-size:var(--text-20);color:var(--gray-50);font-weight:700}.text-kpi{font-size:var(--text-28);color:var(--gray-50);font-variant-numeric:tabular-nums;font-weight:700}.text-hero{font-size:var(--text-36);color:var(--gray-50);font-variant-numeric:tabular-nums;font-weight:700}.text-mono{font-family:var(--font-mono)}.dashboard-wrapper ::-webkit-scrollbar{width:6px;height:6px}.dashboard-wrapper ::-webkit-scrollbar-track{background:0 0}.dashboard-wrapper ::-webkit-scrollbar-thumb{background:var(--gray-700);border-radius:3px}.dashboard-wrapper ::-webkit-scrollbar-thumb:hover{background:var(--gray-600)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.dashboard-wrapper ::selection{background-color:var(--accent-dim);color:var(--accent)}.transition-fast{transition:all var(--motion-fast)}.transition-normal{transition:all var(--motion-normal)}.app-shell{height:100vh;display:flex;overflow:hidden}.app-main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.page-content{padding:var(--space-6);flex:1;overflow-y:auto}.table-dense td,.table-dense th{font-size:var(--text-13);padding:6px 12px}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes row-flash{0%{background-color:var(--accent-dim)}to{background-color:#0000}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.live-pulse{animation:2s ease-in-out infinite live-pulse}.row-flash{animation:1.5s ease-out forwards row-flash}.glass-surface{background:var(--surface-1);border:1px solid var(--border-1);box-shadow:none}.glass-card{background:var(--surface-2);border:1px solid var(--border-1);border-radius:12px;transition:border-color .15s;box-shadow:0 1px 2px #0006}.glass-card:hover{border-color:var(--border-2);box-shadow:0 1px 2px #0006}.gradient-border-shell{background:var(--border-1);border-radius:12px;padding:1px;position:relative}.amber-glow-text{color:var(--gray-50)}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin-animation{animation:1s linear infinite spin-slow}.skeleton{background:linear-gradient(90deg, var(--surface-2) 0px, var(--surface-3) 100px, var(--surface-2) 200px);border-radius:var(--radius-sm);background-size:400px 100%;animation:1.4s ease-in-out infinite shimmer}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);background-color:var(--surface-1);border-right:1px solid var(--border-0);transition:width var(--motion-normal), min-width var(--motion-normal);z-index:40;flex-direction:column;display:flex;overflow:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed-width);min-width:var(--sidebar-collapsed-width)}.topbar{height:var(--topbar-height);background-color:var(--surface-1);border-bottom:1px solid var(--border-0);padding:0 var(--space-4);align-items:center;gap:var(--space-3);z-index:30;flex-shrink:0;display:flex}.card{background-color:var(--surface-2);border:1px solid var(--border-1);border-radius:var(--radius-lg);padding:var(--space-5)}.card-hover:hover{background-color:var(--surface-3);border-color:var(--border-2);transition:all var(--motion-fast)}.btn{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font-size:var(--text-13);cursor:pointer;transition:all var(--motion-fast);white-space:nowrap;border:1px solid #0000;padding:6px 12px;font-weight:500;line-height:1;display:inline-flex}.btn-ghost{color:var(--gray-300);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-3);color:var(--gray-100)}.btn-outline{color:var(--gray-200);border-color:var(--border-2);background:0 0}.btn-outline:hover{background:var(--surface-3);border-color:var(--gray-500);color:var(--gray-100)}.btn-primary{background:var(--accent-dim);color:var(--accent);border-color:var(--accent-muted)}.btn-primary:hover{background:var(--accent-dim);filter:brightness(1.15)}.btn-danger{background:var(--risk-critical-dim);color:var(--risk-critical-text);border-color:var(--risk-critical)}.btn-danger:hover{background:var(--risk-critical);color:#fff}.btn-icon{border-radius:var(--radius-md);padding:6px}.input{background-color:var(--surface-2);border:1px solid var(--border-2);border-radius:var(--radius-md);font-size:var(--text-13);color:var(--gray-100);font-family:var(--font-sans);transition:border-color var(--motion-fast);outline:none;width:100%;padding:6px 10px}.input:focus{border-color:var(--accent)}.input::placeholder{color:var(--gray-500)}.nav-item{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);font-size:var(--text-13);color:var(--gray-400);cursor:pointer;transition:all var(--motion-fast);white-space:nowrap;padding:7px 10px;font-weight:500;text-decoration:none;display:flex;overflow:hidden}.nav-item:hover{background:var(--surface-3);color:var(--gray-200)}.nav-item.active{background:var(--accent-dim);color:var(--accent)}.nav-item.active svg{color:var(--accent)}.nav-item svg{flex-shrink:0}.nav-section-label{font-size:var(--text-11);letter-spacing:.06em;text-transform:uppercase;color:var(--gray-600);padding:var(--space-3) 10px var(--space-1);white-space:nowrap;font-weight:600}.risk-badge{font-size:var(--text-11);letter-spacing:.03em;font-weight:600;font-family:var(--font-sans);white-space:nowrap;border:1px solid #0000;border-radius:9999px;align-items:center;gap:6px;padding:3px 9px;display:inline-flex}.risk-badge.critical{background:var(--risk-critical-dim);color:var(--risk-critical-text)}.risk-badge.high{background:var(--risk-high-dim);color:var(--risk-high-text)}.risk-badge.medium{background:var(--risk-medium-dim);color:var(--risk-medium-text)}.risk-badge.low{background:var(--risk-low-dim);color:var(--risk-low-text)}.risk-badge.safe{background:var(--risk-safe-dim);color:var(--risk-safe-text)}.drawer-overlay{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;position:fixed;inset:0}.drawer-panel{background:var(--surface-1);border-left:1px solid var(--border-1);z-index:51;flex-direction:column;width:min(600px,90vw);height:100%;display:flex;position:fixed;top:0;right:0;overflow:hidden}.cmdk-overlay{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:flex-start;padding-top:15vh;display:flex;position:fixed;inset:0}.cmdk-panel{background:var(--surface-2);border:1px solid var(--border-2);border-radius:var(--radius-xl);width:min(640px,90vw);overflow:hidden;box-shadow:0 24px 64px #0009}.recharts-tooltip-wrapper .recharts-default-tooltip{background:var(--surface-3)!important;border:1px solid var(--border-2)!important;border-radius:var(--radius-md)!important;font-size:var(--text-12)!important;font-family:var(--font-sans)!important;color:var(--gray-200)!important;box-shadow:0 4px 16px #0006!important}.live-dot{background:var(--status-success);border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite live-pulse}.live-dot.disconnected{background:var(--risk-critical);animation:none}@media (max-width:768px){.sidebar{height:100%;transition:transform var(--motion-normal);position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.page-content{padding:var(--space-4)}}
