@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap";
:root{--primary:#4f46e5;--primary-dark:#4338ca;--primary-light:#818cf8;--primary-50:#eef2ff;--accent-green:#10b981;--accent-teal:#14b8a6;--accent-cyan:#06b6d4;--accent-orange:#f59e0b;--accent-red:#ef4444;--accent-purple:#a855f7;--bg-primary:#030712;--bg-secondary:#0f172a;--bg-tertiary:#ffffff08;--bg-elevated:#1e293b;--sidebar-bg:#030712d9;--sidebar-hover:#ffffff0f;--sidebar-active:#4f46e51f;--header-bg:#030712b3;--dropdown-bg:#0f172af2;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--text-white:#fff;--border:#ffffff14;--border-light:#ffffff0a;--border-hover:#ffffff26;--border-glow:#4f46e540;--gradient-brand:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);--gradient-brand-subtle:linear-gradient(135deg,#4f46e526 0%,#7c3aed26 100%);--gradient-danger:linear-gradient(135deg,#ef4444,#dc2626);--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 8px 24px #0009;--shadow-xl:0 20px 40px #000000b3;--shadow-glow:0 0 20px #4f46e533;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.875rem;--text-lg:1rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-base:.3s cubic-bezier(.4,0,.2,1);--transition-bounce:.4s cubic-bezier(.68,-.55,.265,1.55);--transition-spring:.35s cubic-bezier(.34,1.56,.64,1);--sidebar-width:260px;--sidebar-collapsed:72px;--header-height:64px}[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#00000005;--bg-elevated:#f1f5f9;--sidebar-bg:#ffffffeb;--sidebar-hover:#0000000a;--sidebar-active:#4f46e514;--header-bg:#ffffffd9;--dropdown-bg:#fffffffa;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border:#00000014;--border-light:#0000000a;--border-hover:#00000026;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #00000014;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--shadow-glow:0 0 15px #4f46e51a}*{box-sizing:border-box;margin:0;padding:0}html,body{color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;overflow-x:hidden}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-family:Outfit,sans-serif}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:Outfit,sans-serif}input,select,textarea{font-family:inherit;font-size:inherit;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary)}input::placeholder{color:var(--text-muted)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff14}::-webkit-scrollbar-thumb:hover{background:#ffffff26}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.flex-1{flex:1}.text-center{text-align:center}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px #4f46e533}50%{box-shadow:0 0 25px #4f46e573}}@keyframes dataPulse{0%{box-shadow:0 0 #4f46e566}70%{box-shadow:0 0 0 8px #4f46e500}to{box-shadow:0 0 #4f46e500}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.animate-fade-in{animation:fadeIn .4s var(--transition-base)forwards}
