:root {
  color-scheme: light;
  --brand-navy: #10223c; --brand-teal: #09c6a7; --brand-cyan: #38cbe8;
  --bg: #f4f6f9; --surface: #ffffff; --surface-soft: #f8fafc; --surface-hover: #eef3f7;
  --text: #10223c; --text-secondary: #4d6077; --muted: #60738a; --line: #e1e7ef;
  --accent: #087360; --accent-soft: #e2f6ef; --accent-line: #c1e8dc;
  --warning: #8c590d; --warning-soft: #fff5df; --danger: #ac3547; --danger-soft: #fff0f1;
  --blue: #3155ad; --blue-soft: #ebf0ff; --violet: #7652ae; --violet-soft: #f2edfc;
  --sidebar-bg: #10223c; --sidebar-text: #c1cddd; --sidebar-active: #213952;
  --sidebar-muted: #8fa4bc; --white: #ffffff; --overlay: #071b31a6;
  --radius-xs: 6px; --radius-sm: 10px; --radius-md: 14px; --radius-lg: 20px; --radius-xl: 28px;
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 20px;
  --space-6: 24px; --space-7: 32px; --space-8: 40px; --space-9: 48px;
  --font: 'Segoe UI', Tahoma, Arial, sans-serif;
  --text-xs: 11px; --text-sm: 12px; --text-md: 14px; --text-lg: 16px; --text-xl: 20px;
  --title: clamp(24px, 2.4vw, 34px); --kpi: 32px;
  --shadow-sm: 0 3px 12px #10223c05; --shadow-md: 0 12px 36px #10223c0d;
  --shadow-lg: 0 24px 80px #071b3129; --focus: #2387c9;
  --sidebar-width: 258px; --sidebar-collapsed: 82px; --topbar-height: 80px;
  --duration: 180ms; --z-sidebar: 30; --z-dialog: 60; --z-toast: 80;
}
[data-theme='dark'] {
  color-scheme: dark;
  --bg: #0c1625; --surface: #132235; --surface-soft: #172a40; --surface-hover: #21364d;
  --text: #e8eef5; --text-secondary: #b4c4d7; --muted: #94a9c0; --line: #2a3b50;
  --accent: #5cddbd; --accent-soft: #163c36; --accent-line: #26584a;
  --warning: #efc679; --warning-soft: #3c3221; --danger: #ffb0ba; --danger-soft: #402535;
  --blue: #a1baff; --blue-soft: #233653; --violet: #c5adff; --violet-soft: #312b48;
  --sidebar-bg: #0b1524; --sidebar-text: #c1cddd; --sidebar-active: #20374e;
}
