:root{--color-bg:#f8fafc;--color-bg-white:#fff;--color-text:#0f172a;--color-text-secondary:#64748b;--color-text-muted:#94a3b8;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-light:#eff6ff;--color-primary-ring:#2563eb40;--color-sidebar:#0f172a;--color-sidebar-hover:#ffffff0f;--color-sidebar-text:#94a3b8;--color-sidebar-active-bg:#2563eb26;--color-sidebar-active-text:#60a5fa;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-success:#16a34a;--color-success-light:#f0fdf4;--color-warning:#f59e0b;--color-warning-light:#fffbeb;--color-error:#dc2626;--color-error-light:#fef2f2;--color-row-alt:#f8fafc;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000000d;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.3s cubic-bezier(.4, 0, .2, 1);--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body{font-family:var(--font-family);color:var(--color-text);background-color:var(--color-bg);line-height:1.6}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:var(--font-family);cursor:pointer}input,select,textarea{font-family:var(--font-family)}table{border-collapse:collapse;width:100%}img{max-width:100%;height:auto}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (width<=768px){:root{--sidebar-width:0px}html{font-size:13px}}
