:root {
  /* neutrals */
  --background: oklch(1 0 0);
  --foreground: oklch(0.22 0.03 262);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.22 0.03 262);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.22 0.03 262);

  /* brand */
  --primary: oklch(0.66 0.14 48.5);      /* warm amber */
  --primary-foreground: oklch(1 0 0);
  --secondary: oklch(0.62 0.10 200);     /* calm blue */
  --secondary-foreground: oklch(0.99 0 0);

  /* UI states */
  --muted: oklch(0.96 0.01 255);
  --muted-foreground: oklch(0.48 0.02 255);
  --accent: oklch(0.94 0.03 262);        /* subtle tint for hovers */
  --accent-foreground: oklch(0.24 0.03 262);
  --destructive: oklch(0.58 0.20 27);    /* red/orange */
  --destructive-foreground: oklch(0.99 0 0);

  /* form + borders */
  --border: oklch(0.90 0.01 255);
  --input: oklch(0.90 0.01 255);
  --ring: oklch(0.66 0.14 48.5);

  /* charts – distinct, color-blind friendly spacing */
  --chart-1: oklch(0.72 0.13 48);   /* amber */
  --chart-2: oklch(0.70 0.10 200);  /* blue */
  --chart-3: oklch(0.74 0.12 135);  /* green */
  --chart-4: oklch(0.68 0.12 350);  /* magenta */
  --chart-5: oklch(0.66 0.08 270);  /* violet */

  /* sidebar */
  --sidebar: oklch(0.98 0.005 255);
  --sidebar-foreground: oklch(0.22 0.03 262);
  --sidebar-primary: oklch(0.66 0.14 48.5);
  --sidebar-primary-foreground: oklch(1 0 0);
  --sidebar-accent: oklch(0.94 0.03 262);
  --sidebar-accent-foreground: oklch(0.24 0.03 262);
  --sidebar-border: oklch(0.90 0.01 255);
  --sidebar-ring: oklch(0.66 0.14 48.5);

  /* typography + effects (unchanged) */
  --font-sans: Geist Mono, ui-monospace, monospace;
  --font-serif: serif;
  --font-mono: JetBrains Mono, monospace;
  --radius: 0.75rem;
  --shadow-x: 0px; --shadow-y: 1px; --shadow-blur: 4px; --shadow-spread: 0px;
  --shadow-opacity: 0.05; --shadow-color: #000000;
  --shadow-2xs: 0px 1px 4px 0px hsl(0 0% 0% / 0.03);
  --shadow-xs: 0px 1px 4px 0px hsl(0 0% 0% / 0.03);
  --shadow-sm: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 1px 2px -1px hsl(0 0% 0% / 0.05);
  --shadow: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 1px 2px -1px hsl(0 0% 0% / 0.05);
  --shadow-md: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 2px 4px -1px hsl(0 0% 0% / 0.05);
  --shadow-lg: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 4px 6px -1px hsl(0 0% 0% / 0.05);
  --shadow-xl: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 8px 10px -1px hsl(0 0% 0% / 0.05);
  --shadow-2xl: 0px 1px 4px 0px hsl(0 0% 0% / 0.13);
  --tracking-normal: 0rem;
  --spacing: 0.25rem;
}

.dark {
  /* neutrals */
  --background: oklch(0.16 0.02 262);
  --foreground: oklch(0.92 0.01 262);
  --card: oklch(0.18 0.02 262);
  --card-foreground: oklch(0.92 0.01 262);
  --popover: oklch(0.16 0.02 262);
  --popover-foreground: oklch(0.92 0.01 262);

  /* brand */
  --primary: oklch(0.75 0.15 48.5);
  --primary-foreground: oklch(0.16 0.02 262);
  --secondary: oklch(0.72 0.12 200);
  --secondary-foreground: oklch(0.16 0.02 262);

  /* UI states */
  --muted: oklch(0.24 0.01 262);
  --muted-foreground: oklch(0.73 0.02 262);
  --accent: oklch(0.30 0.02 262);
  --accent-foreground: oklch(0.92 0.01 262);
  --destructive: oklch(0.67 0.20 27);
  --destructive-foreground: oklch(0.16 0.02 262);

  /* form + borders */
  --border: oklch(0.30 0.01 262);
  --input: oklch(0.30 0.01 262);
  --ring: oklch(0.75 0.15 48.5);

  /* charts – tuned for dark bg */
  --chart-1: oklch(0.78 0.15 48);
  --chart-2: oklch(0.76 0.12 200);
  --chart-3: oklch(0.78 0.13 135);
  --chart-4: oklch(0.74 0.14 350);
  --chart-5: oklch(0.74 0.10 270);

  /* sidebar */
  --sidebar: oklch(0.19 0.02 262);
  --sidebar-foreground: oklch(0.92 0.01 262);
  --sidebar-primary: oklch(0.75 0.15 48.5);
  --sidebar-primary-foreground: oklch(0.16 0.02 262);
  --sidebar-accent: oklch(0.30 0.02 262);
  --sidebar-accent-foreground: oklch(0.92 0.01 262);
  --sidebar-border: oklch(0.30 0.01 262);
  --sidebar-ring: oklch(0.75 0.15 48.5);

  /* keep your font/shadow/radius tokens as-is */
  --font-sans: Geist Mono, ui-monospace, monospace;
  --font-serif: serif;
  --font-mono: JetBrains Mono, monospace;
  --radius: 0.75rem;
  --shadow-x: 0px; --shadow-y: 1px; --shadow-blur: 4px; --shadow-spread: 0px;
  --shadow-opacity: 0.05; --shadow-color: #000000;
  --shadow-2xs: 0px 1px 4px 0px hsl(0 0% 0% / 0.03);
  --shadow-xs: 0px 1px 4px 0px hsl(0 0% 0% / 0.03);
  --shadow-sm: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 1px 2px -1px hsl(0 0% 0% / 0.05);
  --shadow: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 1px 2px -1px hsl(0 0% 0% / 0.05);
  --shadow-md: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 2px 4px -1px hsl(0 0% 0% / 0.05);
  --shadow-lg: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 4px 6px -1px hsl(0 0% 0% / 0.05);
  --shadow-xl: 0px 1px 4px 0px hsl(0 0% 0% / 0.05), 0px 8px 10px -1px hsl(0 0% 0% / 0.05);
  --shadow-2xl: 0px 1px 4px 0px hsl(0 0% 0% / 0.13);
}

/* theme map + tracking: keep your existing block */
/* Removed @theme inline - not a standard CSS at-rule */

body { letter-spacing: var(--tracking-normal); }
