/* Dashboard design tokens. Loaded before theme-init.js and shared by CSS,
   Tailwind utilities and third-party UI. Edit theme values here only. */
:root {
  --font-ui: 'Inter Variable', ui-sans-serif, system-ui, sans-serif;
  --font-code: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  /* A 4px unit, with half steps for dense controls. */
  --control-xs: 1.75rem;
  --control-sm: 2rem;
  --control-md: 2.25rem;
  --control-lg: 2.625rem;
  --control-touch: 2.75rem;

  --space-unit: 0.25rem;
  --space-px: 1px;
  --space-0-5: calc(var(--space-unit) * 0.5);
  --space-1: calc(var(--space-unit) * 1);
  --space-1-5: calc(var(--space-unit) * 1.5);
  --space-2: calc(var(--space-unit) * 2);
  --space-2-5: calc(var(--space-unit) * 2.5);
  --space-3: calc(var(--space-unit) * 3);
  --space-3-5: calc(var(--space-unit) * 3.5);
  --space-4: calc(var(--space-unit) * 4);
  --space-4-5: calc(var(--space-unit) * 4.5);
  --space-5: calc(var(--space-unit) * 5);
  --space-5-5: calc(var(--space-unit) * 5.5);
  --space-6: calc(var(--space-unit) * 6);
  --space-7: calc(var(--space-unit) * 7);
  --space-8: calc(var(--space-unit) * 8);
  --space-9: calc(var(--space-unit) * 9);
  --space-10: calc(var(--space-unit) * 10);
  --space-11: calc(var(--space-unit) * 11);
  --space-12: calc(var(--space-unit) * 12);
  --space-14: calc(var(--space-unit) * 14);
  --space-15: calc(var(--space-unit) * 15);
  --space-16: calc(var(--space-unit) * 16);
  --space-18: calc(var(--space-unit) * 18);
  --space-19: calc(var(--space-unit) * 19);
  --space-20: calc(var(--space-unit) * 20);
  --space-24: calc(var(--space-unit) * 24);
  --space-25: calc(var(--space-unit) * 25);

  /* A compact product type scale; size and rhythm can change independently. */
  --type-micro: 0.5625rem;
  --type-overline: 0.625rem;
  --type-caption: 0.6875rem;
  --type-small: 0.75rem;
  --type-body: 0.8125rem;
  --type-label: 0.875rem;
  --type-subheading: 0.9375rem;
  --type-lead: 1rem;
  --type-title: 1.125rem;
  --type-section: 1.25rem;
  --type-heading: 1.5rem;
  --type-display: 2rem;
  --type-hero: 2.25rem;
  --weight-normal: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --line-none: 1;
  --line-heading: 1.25;
  --line-tight: 1.4;
  --line-body: 1.5;
  --line-relaxed: 1.65;
  --line-loose: 1.8;
  --letter-heading: -0.04em;
  --letter-tight: -0.02em;
  --letter-normal: 0;
  --letter-wide: 0.06em;
  --letter-code: 0.2em;

  --corner-xs: 0.1875rem;
  --corner-sm: 0.3125rem;
  --corner-md: 0.4375rem;
  --corner-lg: 0.625rem;
  --corner-xl: 0.75rem;
  --corner-2xl: 1rem;
  --corner-full: 9999px;
  --background: #eef1f5;
  --surface: #fff;
  --surface-2: #e8ecf1;
  --surface-3: #dce2e9;
  --border: #cbd2dc;
  --border-strong: #aeb8c5;
  --fg: #171b22;
  --fg-muted: #424c5a;
  --fg-subtle: #566171;
  --primary: #08794e;
  --primary-hover: #05613e;
  --accent: #dceee3;
  --accent-fg: #0d603e;
  --ring: #08794e;
  --primary-fg: #fff;
  --chart-fill-opacity: 1;
  --success: #117a54;
  --success-soft: #eaf5ee;
  --warning: #855814;
  --warning-soft: #fff6e6;
  --danger: #b83f3f;
  --danger-soft: #fcedec;
  --info: #3d6f94;
  --info-soft: #edf4f9;
  --shadow-color: 24 28 38;
  --brand-pulse: #b7f5df;
  --danger-fg: #fff;
  --tooltip: var(--fg);
  --tooltip-fg: var(--surface);
  --switch-thumb: #fff;
  --logo-surface: #fff;
  --scrim: rgb(24 28 38 / 0.28);
  --elevation-xs: 0 1px 2px rgb(var(--shadow-color) / 0.04);
  --elevation-sm: 0 2px 4px rgb(var(--shadow-color) / 0.05);
  --elevation-md: 0 5px 16px rgb(var(--shadow-color) / 0.09);
  --elevation-lg: 0 16px 45px rgb(var(--shadow-color) / 0.16);
  --shadow-menu: 0 8px 28px rgb(var(--shadow-color) / 0.13);
  --shadow-drag: 0 2px 8px rgb(var(--shadow-color) / 0.07);
  --category-green: #047857;
  --category-green-soft: #ecfdf5;
  --category-blue: #0369a1;
  --category-blue-soft: #f0f9ff;
  --category-purple: #6d28d9;
  --category-purple-soft: #f5f3ff;
  --category-amber: #92400e;
  --category-amber-soft: #fffbeb;
  --category-rose: #be123c;
  --category-rose-soft: #fff1f2;
  --category-teal: #0f766e;
  --category-teal-soft: #f0fdfa;
  --category-indigo: #4338ca;
  --category-indigo-soft: #eef2ff;
}

.dark {
  --background: #111113;
  --surface: #19191c;
  --surface-2: #232326;
  --surface-3: #303034;
  --border: #303034;
  --border-strong: #48484f;
  --fg: #f1f1f3;
  --fg-muted: #adadb5;
  --fg-subtle: #9898a2;
  --primary: #64c895;
  --primary-hover: #85d6ad;
  --accent: #2a2a2f;
  --accent-fg: #85d6ad;
  --ring: #64c895;
  --primary-fg: #111113;
  --chart-fill-opacity: 0.8;
  --success: #73c69a;
  --success-soft: #203c2c;
  --warning: #d7af68;
  --warning-soft: #342a1b;
  --danger: #e88787;
  --danger-soft: #392324;
  --info: #93bad6;
  --info-soft: #23323d;
  --shadow-color: 0 0 0;
  --brand-pulse: #203c2c;
  --danger-fg: #281314;
  --scrim: rgb(0 0 0 / 0.55);
  --category-green: #6ee7b7;
  --category-green-soft: #173d2e;
  --category-blue: #7dd3fc;
  --category-blue-soft: #173445;
  --category-purple: #c4b5fd;
  --category-purple-soft: #312543;
  --category-amber: #fcd34d;
  --category-amber-soft: #3e311e;
  --category-rose: #fda4af;
  --category-rose-soft: #402730;
  --category-teal: #5eead4;
  --category-teal-soft: #1a3a37;
  --category-indigo: #a5b4fc;
  --category-indigo-soft: #282e44;
}
