@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--sidebar-width: 240px;--header-height: 56px;--bg-base: #0d1117;--bg-surface: #161b22;--bg-raised: #1c2230;--bg-overlay: #21293a;--border: rgba(255,255,255,.07);--border-bright: rgba(255,255,255,.12);--text-primary: #e6edf3;--text-secondary: #8b949e;--text-muted: #484f58;--accent: #3d8ef0;--accent-dim: rgba(61,142,240,.12);--accent-hover: #5a9ff5;--success: #3fb950;--success-dim: rgba(63,185,80,.12);--warning: #d29922;--warning-dim: rgba(210,153,34,.12);--danger: #f85149;--danger-dim: rgba(248,81,73,.12);--info: #58a6ff;--info-dim: rgba(88,166,255,.1);--shadow: 0 2px 8px rgba(0,0,0,.3);--shadow-lg: 0 8px 32px rgba(0,0,0,.5);--radius: 10px;--radius-sm: 6px;--radius-lg: 14px}[data-theme=light]{--bg-base: #f3f6fa;--bg-surface: #ffffff;--bg-raised: #f0f4f8;--bg-overlay: #e8edf4;--border: rgba(0,0,0,.08);--border-bright: rgba(0,0,0,.14);--text-primary: #1a202c;--text-secondary: #4a5568;--text-muted: #a0aec0;--accent: #2563eb;--accent-dim: rgba(37,99,235,.1);--accent-hover: #1d4ed8;--success: #16a34a;--success-dim: rgba(22,163,74,.1);--warning: #d97706;--warning-dim: rgba(217,119,6,.1);--danger: #dc2626;--danger-dim: rgba(220,38,38,.1);--info: #2563eb;--info-dim: rgba(37,99,235,.08);--shadow: 0 2px 8px rgba(0,0,0,.08);--shadow-lg: 0 8px 32px rgba(0,0,0,.15)}[data-theme=ocean]{--bg-base: #071a24;--bg-surface: #0c2530;--bg-raised: #12313d;--bg-overlay: #173c4a;--border: rgba(148,213,255,.08);--border-bright: rgba(148,213,255,.16);--text-primary: #e3f6ff;--text-secondary: #8fb9cc;--text-muted: #4a6b7a;--accent: #22b8cf;--accent-dim: rgba(34,184,207,.14);--accent-hover: #3fd0e6;--success: #2dd4bf;--success-dim: rgba(45,212,191,.12);--warning: #f0b429;--warning-dim: rgba(240,180,41,.12);--danger: #ef4444;--danger-dim: rgba(239,68,68,.12);--info: #38bdf8;--info-dim: rgba(56,189,248,.1);--shadow: 0 2px 8px rgba(0,0,0,.3);--shadow-lg: 0 8px 32px rgba(0,0,0,.5)}[data-theme=forest]{--bg-base: #0f1a10;--bg-surface: #16241a;--bg-raised: #1c2e21;--bg-overlay: #233a29;--border: rgba(180,255,190,.07);--border-bright: rgba(180,255,190,.14);--text-primary: #e6f5e8;--text-secondary: #94b89a;--text-muted: #4f6754;--accent: #4ade80;--accent-dim: rgba(74,222,128,.12);--accent-hover: #6ee89f;--success: #4ade80;--success-dim: rgba(74,222,128,.12);--warning: #eab308;--warning-dim: rgba(234,179,8,.12);--danger: #f87171;--danger-dim: rgba(248,113,113,.12);--info: #60a5fa;--info-dim: rgba(96,165,250,.1);--shadow: 0 2px 8px rgba(0,0,0,.3);--shadow-lg: 0 8px 32px rgba(0,0,0,.5)}[data-theme=sunset]{--bg-base: #1c1410;--bg-surface: #261b15;--bg-raised: #32241b;--bg-overlay: #3e2d21;--border: rgba(255,200,150,.08);--border-bright: rgba(255,200,150,.16);--text-primary: #fdf1e7;--text-secondary: #c9a48c;--text-muted: #7a5c48;--accent: #fb923c;--accent-dim: rgba(251,146,60,.14);--accent-hover: #fdab6b;--success: #4ade80;--success-dim: rgba(74,222,128,.12);--warning: #fbbf24;--warning-dim: rgba(251,191,36,.14);--danger: #f87171;--danger-dim: rgba(248,113,113,.12);--info: #fb923c;--info-dim: rgba(251,146,60,.1);--shadow: 0 2px 8px rgba(0,0,0,.3);--shadow-lg: 0 8px 32px rgba(0,0,0,.5)}[data-theme=slate]{--bg-base: #eef1f5;--bg-surface: #ffffff;--bg-raised: #e4e8ee;--bg-overlay: #dbe0e8;--border: rgba(30,41,59,.09);--border-bright: rgba(30,41,59,.16);--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #94a3b8;--accent: #475569;--accent-dim: rgba(71,85,105,.1);--accent-hover: #334155;--success: #059669;--success-dim: rgba(5,150,105,.1);--warning: #d97706;--warning-dim: rgba(217,119,6,.1);--danger: #dc2626;--danger-dim: rgba(220,38,38,.1);--info: #475569;--info-dim: rgba(71,85,105,.08);--shadow: 0 2px 8px rgba(0,0,0,.08);--shadow-lg: 0 8px 32px rgba(0,0,0,.15)}[data-theme=violet]{--bg-base: #170f23;--bg-surface: #20162f;--bg-raised: #2b1f3d;--bg-overlay: #35284a;--border: rgba(216,180,255,.08);--border-bright: rgba(216,180,255,.16);--text-primary: #f2e9ff;--text-secondary: #b7a3cf;--text-muted: #6a5a80;--accent: #a78bfa;--accent-dim: rgba(167,139,250,.14);--accent-hover: #c0a8fd;--success: #4ade80;--success-dim: rgba(74,222,128,.12);--warning: #fbbf24;--warning-dim: rgba(251,191,36,.12);--danger: #f87171;--danger-dim: rgba(248,113,113,.12);--info: #a78bfa;--info-dim: rgba(167,139,250,.1);--shadow: 0 2px 8px rgba(0,0,0,.3);--shadow-lg: 0 8px 32px rgba(0,0,0,.5)}html,body,#root{height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;background:var(--bg-base);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.page-title{font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.page-subtitle{font-size:13px;color:var(--text-secondary);margin-top:2px}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-title{font-size:14px;font-weight:600}.stat-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px;transition:border-color .2s}.stat-card:hover{border-color:var(--border-bright)}.stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px}.stat-value{font-size:24px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.stat-change{font-size:12px;margin-top:4px}.stat-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media(max-width:1200px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.grid-3{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:1fr 1fr}}@media(max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:11px 12px;font-size:13px;color:var(--text-primary);border-bottom:1px solid var(--border);vertical-align:middle}tr:last-child td{border-bottom:none}tr:hover td{background:var(--bg-raised)}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.badge-success{background:var(--success-dim);color:var(--success)}.badge-warning{background:var(--warning-dim);color:var(--warning)}.badge-danger{background:var(--danger-dim);color:var(--danger)}.badge-info{background:var(--info-dim);color:var(--info)}.badge-neutral{background:var(--bg-raised);color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;border:none;transition:all .15s ease;white-space:nowrap;font-family:inherit}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--bg-raised);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-overlay)}.btn-danger{background:var(--danger-dim);color:var(--danger);border:1px solid transparent}.btn-danger:hover:not(:disabled){background:var(--danger);color:#fff}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-raised);color:var(--text-primary)}.btn-sm{padding:5px 10px;font-size:12px}.btn-icon{padding:7px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:5px}.form-input,.form-select{width:100%;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;color:var(--text-primary);font-family:inherit;transition:border-color .15s;outline:none}.form-input:focus,.form-select:focus{border-color:var(--accent)}.alert-bar{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-raised)}.alert-bar.critical,.alert-bar.danger{border-color:var(--danger);background:var(--danger-dim)}.alert-bar.warning{border-color:var(--warning);background:var(--warning-dim)}.alert-bar.info{border-color:var(--accent);background:var(--accent-dim)}.stats-grid{display:grid;gap:16px}.divider{border:none;border-top:1px solid var(--border);margin:12px 0}.w-full{width:100%}:root{--amber: #d29922}.progress-wrap{background:var(--bg-raised);border-radius:999px;height:6px;overflow:hidden}.progress-bar{height:100%;border-radius:999px;transition:width .5s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.animate-fadeIn{animation:fadeIn .25s ease}.mono{font-family:JetBrains Mono,monospace}.status-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}.dot-success{background:var(--success)}.dot-warning{background:var(--warning)}.dot-danger{background:var(--danger)}.dot-muted{background:var(--text-muted)}.risk-low{color:var(--success)}.risk-medium{color:var(--warning)}.risk-high{color:var(--danger)}.empty-state{text-align:center;padding:48px 24px;color:var(--text-muted)}.empty-state svg{margin-bottom:12px;opacity:.4}.card-hover{transition:border-color .15s,transform .15s}.card-hover:hover{border-color:var(--border-bright);transform:translateY(-1px)}.badge-muted{background:var(--bg-raised);color:var(--text-secondary)}.progress-fill{height:100%;border-radius:999px;transition:width .5s ease}input[type=text],input[type=number],input[type=search],input:not([type]),select,textarea{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;color:var(--text-primary);font-family:inherit;outline:none;transition:border-color .15s;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--accent)}.tab-bar{display:flex;gap:4px;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px}.tab-btn{padding:6px 12px;border-radius:5px;font-size:12px;font-weight:500;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;white-space:nowrap;transition:all .15s ease}.tab-btn.active{background:var(--bg-overlay);color:var(--text-primary)}.tab-btn:hover:not(.active){color:var(--text-primary)}.modal-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}.modal{background:var(--bg-surface);border:1px solid var(--border-bright);border-radius:var(--radius-lg);padding:24px;max-width:560px;width:100%;max-height:88vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-title{display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:700;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border)}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);padding:10px 12px;border-bottom:1px solid var(--border)}.data-table td{padding:11px 12px;font-size:13px;border-bottom:1px solid var(--border)}@media print{aside,header,.btn{display:none!important}main{padding:0!important;margin-left:0!important}body,.card{background:#fff!important;color:#000!important}}
