:root{--bg-base:#0a0a0b;--bg-subtle:#111113;--bg-overlay:#18181b;--bg-inset:#0d0d0f;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-strong:#ffffff2e;--border-accent:#6366f166;--text-primary:#f4f4f5;--text-secondary:#a1a1aa;--text-muted:#52525b;--text-disabled:#3f3f46;--accent:#6366f1;--accent-dim:#6366f11f;--accent-glow:#6366f140;--status-success:#22c55e;--status-warning:#f59e0b;--status-error:#ef4444;--status-info:#6366f1;--status-neutral:#71717a;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080, 0 0 0 1px #ffffff0a;--shadow-lg:0 8px 32px #0009, 0 0 0 1px #ffffff0f;--shadow-glow:0 0 20px var(--accent-glow);--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--font-sans:"Geist", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"Geist Mono", "JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}*,:before,:after{transition-timing-function:cubic-bezier(.4,0,.2,1)}html{font-family:var(--font-sans);background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg-base);color:var(--text-primary);min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.text-xs{font-size:11px;line-height:16px}.text-sm{font-size:13px;line-height:20px}.text-base{font-size:15px;line-height:24px}.text-lg{font-size:17px;line-height:28px}.text-xl{font-size:20px;line-height:32px}.text-2xl{font-size:24px;font-weight:600;line-height:36px}.text-3xl{font-size:30px;font-weight:700;line-height:40px}.card{background:var(--bg-subtle);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:border-color .2s,box-shadow .2s}.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg)}.glass{-webkit-backdrop-filter:blur(16px)saturate(180%);border-radius:var(--radius-xl);background:#18181bb3;border:1px solid #ffffff14}.btn-primary{background:var(--accent);color:#000;border-radius:var(--radius-md);cursor:pointer;border:none;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;text-decoration:none;transition:opacity .15s,transform .1s;display:inline-flex}.btn-primary:hover{opacity:.9}.btn-primary:active{transform:scale(.98)}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:7px 15px;font-size:13px;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn-ghost:hover{background:var(--bg-overlay);border-color:var(--border-strong);color:var(--text-primary)}.btn-danger{color:var(--status-error);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:1px solid #ef444433;align-items:center;gap:6px;padding:7px 15px;font-size:13px;text-decoration:none;transition:all .15s;display:inline-flex}.btn-danger:hover{background:#ef44441a;border-color:#ef444466}.btn-secondary{background:var(--bg-overlay);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:6px;padding:7px 15px;font-size:13px;text-decoration:none;transition:all .15s;display:inline-flex}.btn-secondary:hover{background:var(--bg-subtle);border-color:var(--border-strong)}.input{background:var(--bg-inset);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);outline:none;width:100%;padding:8px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.input::placeholder{color:var(--text-muted)}.badge{border-radius:var(--radius-pill);letter-spacing:.02em;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:500;display:inline-flex}.badge-success{color:#4ade80;background:#22c55e1f}.badge-error{color:#f87171;background:#ef44441f}.badge-warning{color:#fbbf24;background:#f59e0b1f}.badge-info{color:#818cf8;background:#6366f11f}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.metric-card{background:var(--bg-subtle);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:20px;transition:border-color .2s}.metric-card:hover{border-color:var(--border-strong)}.metric-card--alert{border-color:#ef444440}.metric-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:500}.metric-value{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:6px;font-size:28px;font-weight:700;line-height:1}.metric-unit{color:var(--text-secondary);font-size:14px;font-weight:400}.metric-sub{color:var(--text-muted);font-size:12px}.card{background:var(--bg-overlay);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:24px}.label{color:var(--text-secondary);margin-bottom:6px;font-size:12px;font-weight:500;display:block}.form-group{flex-direction:column;display:flex}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:64px 24px;display:flex}.empty-icon{border-radius:var(--radius-lg);background:var(--bg-overlay);border:1px solid var(--border-default);width:56px;height:56px;color:var(--text-muted);justify-content:center;align-items:center;margin-bottom:4px;display:flex}.empty-title{color:var(--text-primary);font-size:16px;font-weight:600}.empty-desc{color:var(--text-muted);max-width:360px;font-size:14px;line-height:1.6}.nav{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);z-index:100;background:#0a0a0bd9;position:sticky;top:0}.sidebar{background:var(--bg-subtle);border-right:1px solid var(--border-subtle);flex-direction:column;flex-shrink:0;width:240px;height:100vh;padding:0;display:flex;overflow-y:auto}.main-content{background:var(--bg-base);flex-direction:column;display:flex}.page-container{width:100%;max-width:100%;margin:0 auto;padding:32px}.page-header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.page-header h1{color:var(--text-primary);letter-spacing:-.02em;font-size:24px;font-weight:600}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:.5s forwards fadeUp}.fade-up:nth-child(2){animation-delay:.1s}.fade-up:nth-child(3){animation-delay:.2s}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.live-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 6px var(--accent-glow);border-radius:50%;animation:2s ease-in-out infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}.spin-animation{animation:1s linear infinite spin}.grid-bg{background-image:linear-gradient(var(--border-subtle) 1px, transparent 1px), linear-gradient(90deg, var(--border-subtle) 1px, transparent 1px);background-size:32px 32px}.error-message{color:#f87171;border-radius:var(--radius-md);background:#ef44441a;border:1px solid #ef444433;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.success-message{color:#4ade80;border-radius:var(--radius-md);background:#22c55e1a;border:1px solid #22c55e33;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border-subtle);padding:10px 16px;font-size:11px;font-weight:500}td{color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);padding:12px 16px;font-size:13px}tr:hover td{color:var(--text-primary);background:#ffffff05}@media (max-width:768px){.sidebar{z-index:200;transition:transform .3s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}}
