:root{--bg: #F5F7FA;--surface: #FFFFFF;--surface2: #F0F3F7;--border: #E2E8F0;--border2: #CBD5E1;--text: #0F172A;--text2: #475569;--muted: #94A3B8;--accent: #2563EB;--accent-s: rgba(37,99,235,.1);--accent-b: rgba(37,99,235,.2);--success: #16A34A;--success-s: rgba(22,163,74,.1);--warn: #D97706;--warn-s: rgba(217,119,6,.1);--danger: #DC2626;--danger-s: rgba(220,38,38,.1);--danger-b: rgba(220,38,38,.2);--info: #7C3AED;--info-s: rgba(124,58,237,.1);--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow: 0 1px 3px rgba(0,0,0,.07), 0 4px 12px rgba(0,0,0,.05);--shadow-md: 0 4px 16px rgba(0,0,0,.1), 0 1px 4px rgba(0,0,0,.06);--shadow-lg: 0 12px 40px rgba(0,0,0,.12), 0 2px 8px rgba(0,0,0,.06);--sidebar-w: 240px;--nav-h: 56px;--radius: 10px;--radius-sm: 6px;--radius-lg: 14px;--radius-xl: 20px}[data-theme=dark]{--bg: #0B0F1A;--surface: #111827;--surface2: #1A2236;--border: #1E2D45;--border2: #2D3F5C;--text: #E2E8F0;--text2: #94A3B8;--muted: #475569;--accent: #3B82F6;--accent-s: rgba(59,130,246,.12);--accent-b: rgba(59,130,246,.22);--success: #22C55E;--success-s: rgba(34,197,94,.12);--warn: #F59E0B;--warn-s: rgba(245,158,11,.12);--danger: #EF4444;--danger-s: rgba(239,68,68,.12);--danger-b: rgba(239,68,68,.22);--info: #A78BFA;--info-s: rgba(167,139,250,.12);--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow: 0 1px 3px rgba(0,0,0,.3), 0 4px 12px rgba(0,0,0,.25);--shadow-md: 0 4px 16px rgba(0,0,0,.35);--shadow-lg: 0 12px 40px rgba(0,0,0,.45)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;font-size:14px}body{font-family:DM Sans,sans-serif;background:var(--bg);color:var(--text);line-height:1.55;height:100%;transition:background .25s,color .25s;-webkit-font-smoothing:antialiased}#root{height:100%}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:99px}h1,h2,h3,h4{font-family:Syne,sans-serif;letter-spacing:-.02em}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer;border:none;background:none}input,select,textarea{font-family:inherit;font-size:inherit}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.5)}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn .22s ease both}.animate-fade-in-scale{animation:fadeInScale .25s ease both}.animate-slide-right{animation:slideInRight .22s ease both}
