:root{--color-primary:#2f4a7a;--color-primary-hover:#1e3357;--color-primary-light:#3d5a8f;--color-primary-dark:#152036;--color-accent:#4fe3c1;--color-accent-hover:#3bc2a3;--color-accent-light:#6ef5d8;--color-accent-dark:#2fb89a;--color-success:#10b981;--color-success-light:#34d399;--color-success-dark:#059669;--color-warning:#f59e0b;--color-warning-light:#fbbf24;--color-warning-dark:#d97706;--color-danger:#ef4444;--color-danger-light:#f87171;--color-danger-dark:#dc2626;--color-info:#3b82f6;--color-info-light:#60a5fa;--color-info-dark:#2563eb;--color-bg-body:#f8fafc;--color-bg-white:#fff;--color-bg-sidebar:#0f172a;--color-bg-card:#fff;--color-bg-hover:#f1f5f9;--color-bg-active:#e2e8f0;--color-text-main:#0f172a;--color-text-secondary:#64748b;--color-text-tertiary:#94a3b8;--color-text-inverted:#fff;--color-text-muted:#cbd5e1;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-border-dark:#cbd5e1;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:14px;--spacing-lg:20px;--spacing-xl:28px;--spacing-2xl:40px;--spacing-3xl:56px;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--font-family:"Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"Courier New",monospace;--font-size-xs:.72rem;--font-size-sm:.84rem;--font-size-base:.95rem;--font-size-lg:1.0625rem;--font-size-xl:1.1875rem;--font-size-2xl:1.375rem;--font-size-3xl:1.75rem;--font-size-4xl:2.125rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--container-max-width:1320px;--sidebar-width:260px;--sidebar-width-collapsed:80px;--header-height:64px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-tooltip:1060}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);background-color:var(--color-bg-body);color:var(--color-text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:var(--line-height-normal);font-size:var(--font-size-base)}@media (max-width:1200px){:root{--container-max-width:1200px;--sidebar-width:240px;--spacing-md:12px;--spacing-lg:18px;--spacing-xl:24px;--spacing-2xl:36px;--spacing-3xl:48px;--header-height:60px}}@media (max-width:992px){:root{--font-size-base:.92rem;--font-size-lg:1.02rem;--font-size-xl:1.12rem;--font-size-2xl:1.28rem;--font-size-3xl:1.62rem;--font-size-4xl:2rem;--spacing-md:11px;--spacing-lg:16px;--spacing-xl:22px}}@media (max-width:768px){:root{--font-size-base:.9rem;--font-size-lg:1rem;--font-size-xl:1.08rem;--font-size-2xl:1.22rem;--font-size-3xl:1.5rem;--font-size-4xl:1.85rem;--spacing-md:10px;--spacing-lg:14px;--spacing-xl:18px;--spacing-2xl:28px;--spacing-3xl:36px;--header-height:56px}}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-main)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary)}button{cursor:pointer;transition:all var(--transition-base);background:0 0;border:none;font-family:inherit}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}input:focus,textarea:focus,select:focus{outline:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-body)}::-webkit-scrollbar-thumb{background:var(--color-border-dark);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}::selection{background-color:var(--color-primary);color:var(--color-text-inverted)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
