/* ============================================================
   PULSE Theme Presets
   Each block mirrors the variable structure from index.css.
   Dark-based themes must also be listed in the @custom-variant
   dark selector in index.css.
   ============================================================ */

/* ── Midnight ── deep navy, cool blue accents ───────────────── */
html.midnight {
  --background: #0b1221;
  --foreground: #e2e8f0;
  --card: #0f1729;
  --card-foreground: #e2e8f0;
  --popover: #091020;
  --popover-foreground: #e2e8f0;
  --primary: #60a5fa;
  --primary-foreground: #0c1a36;
  --secondary: #162033;
  --secondary-foreground: #cbd5e1;
  --muted: #131c2e;
  --muted-foreground: #94a3b8;
  --accent: #1a2740;
  --accent-foreground: #e2e8f0;
  --destructive: #ef4444;
  --border: #1a2740;
  --input: #162033;
  --ring: #60a5fa;
  --chart-1: #60a5fa;
  --chart-2: #34d399;
  --chart-3: #fbbf24;
  --chart-4: #f472b6;
  --chart-5: #f87171;
  --sidebar: #091020;
  --sidebar-foreground: #e2e8f0;
  --sidebar-primary: #60a5fa;
  --sidebar-primary-foreground: #0c1a36;
  --sidebar-accent: #0f1729;
  --sidebar-accent-foreground: #e2e8f0;
  --sidebar-border: #162033;
  --sidebar-ring: #60a5fa;
  --link-color: #60a5fa;
  --code-bg: #0f1729;
  --code-border: #1a2740;
  --code-text: #cbd5e1;
  --code-header-text: #94a3b8;
  --code-copy-hover-bg: #1a2740;
  --code-inline-bg: #131c2e;
  --code-inline-text: #93c5fd;
  --scrollbar-thumb: #1e3050;
  --scrollbar-thumb-hover: #2a4060;
  --hl-keyword: #c084fc;
  --hl-string: #86efac;
  --hl-comment: #475569;
  --hl-number: #fdba74;
  --hl-function: #7dd3fc;
  --hl-variable: #fca5a5;
  --hl-symbol: #67e8f9;
}

/* ── Sunset ── warm charcoal, amber glow ────────────────────── */
html.sunset {
  --background: #1a1210;
  --foreground: #f5e6d3;
  --card: #211815;
  --card-foreground: #f5e6d3;
  --popover: #160f0d;
  --popover-foreground: #f5e6d3;
  --primary: #f59e0b;
  --primary-foreground: #1a1210;
  --secondary: #2a1f1a;
  --secondary-foreground: #e7d5c0;
  --muted: #211815;
  --muted-foreground: #a1897a;
  --accent: #33261f;
  --accent-foreground: #f5e6d3;
  --destructive: #ef4444;
  --border: #33261f;
  --input: #2a1f1a;
  --ring: #f59e0b;
  --chart-1: #f59e0b;
  --chart-2: #34d399;
  --chart-3: #fb923c;
  --chart-4: #f472b6;
  --chart-5: #f87171;
  --sidebar: #160f0d;
  --sidebar-foreground: #f5e6d3;
  --sidebar-primary: #f59e0b;
  --sidebar-primary-foreground: #1a1210;
  --sidebar-accent: #211815;
  --sidebar-accent-foreground: #f5e6d3;
  --sidebar-border: #2a1f1a;
  --sidebar-ring: #f59e0b;
  --link-color: #fbbf24;
  --code-bg: #211815;
  --code-border: #33261f;
  --code-text: #e7d5c0;
  --code-header-text: #a1897a;
  --code-copy-hover-bg: #33261f;
  --code-inline-bg: #261c18;
  --code-inline-text: #fbbf24;
  --scrollbar-thumb: #3d2e25;
  --scrollbar-thumb-hover: #4d3b30;
  --hl-keyword: #f97316;
  --hl-string: #a3e635;
  --hl-comment: #78716c;
  --hl-number: #fbbf24;
  --hl-function: #38bdf8;
  --hl-variable: #fb923c;
  --hl-symbol: #fcd34d;
}

/* ── Rose ── warm dark, pink/rose accents ───────────────────── */
html.rose {
  --background: #1a0f14;
  --foreground: #f5e0e8;
  --card: #21131a;
  --card-foreground: #f5e0e8;
  --popover: #160c11;
  --popover-foreground: #f5e0e8;
  --primary: #fb7185;
  --primary-foreground: #1a0f14;
  --secondary: #2a1820;
  --secondary-foreground: #e8c8d4;
  --muted: #21131a;
  --muted-foreground: #a1808e;
  --accent: #331d28;
  --accent-foreground: #f5e0e8;
  --destructive: #ef4444;
  --border: #331d28;
  --input: #2a1820;
  --ring: #fb7185;
  --chart-1: #fb7185;
  --chart-2: #34d399;
  --chart-3: #fbbf24;
  --chart-4: #e879f9;
  --chart-5: #f87171;
  --sidebar: #160c11;
  --sidebar-foreground: #f5e0e8;
  --sidebar-primary: #fb7185;
  --sidebar-primary-foreground: #1a0f14;
  --sidebar-accent: #21131a;
  --sidebar-accent-foreground: #f5e0e8;
  --sidebar-border: #2a1820;
  --sidebar-ring: #fb7185;
  --link-color: #fb7185;
  --code-bg: #21131a;
  --code-border: #331d28;
  --code-text: #e8c8d4;
  --code-header-text: #a1808e;
  --code-copy-hover-bg: #331d28;
  --code-inline-bg: #261620;
  --code-inline-text: #fda4af;
  --scrollbar-thumb: #3d2530;
  --scrollbar-thumb-hover: #4d3040;
  --hl-keyword: #f472b6;
  --hl-string: #86efac;
  --hl-comment: #6b5565;
  --hl-number: #fdba74;
  --hl-function: #7dd3fc;
  --hl-variable: #fda4af;
  --hl-symbol: #f9a8d4;
}

/* ── Forest ── dark earthy greens ───────────────────────────── */
html.forest {
  --background: #0a1410;
  --foreground: #d5ede3;
  --card: #0f1b16;
  --card-foreground: #d5ede3;
  --popover: #08110d;
  --popover-foreground: #d5ede3;
  --primary: #34d399;
  --primary-foreground: #052e16;
  --secondary: #152820;
  --secondary-foreground: #c0ddd1;
  --muted: #0f1b16;
  --muted-foreground: #7da393;
  --accent: #1a3328;
  --accent-foreground: #d5ede3;
  --destructive: #ef4444;
  --border: #1a3328;
  --input: #152820;
  --ring: #34d399;
  --chart-1: #34d399;
  --chart-2: #60a5fa;
  --chart-3: #fbbf24;
  --chart-4: #f472b6;
  --chart-5: #f87171;
  --sidebar: #08110d;
  --sidebar-foreground: #d5ede3;
  --sidebar-primary: #34d399;
  --sidebar-primary-foreground: #052e16;
  --sidebar-accent: #0f1b16;
  --sidebar-accent-foreground: #d5ede3;
  --sidebar-border: #152820;
  --sidebar-ring: #34d399;
  --link-color: #34d399;
  --code-bg: #0f1b16;
  --code-border: #1a3328;
  --code-text: #c0ddd1;
  --code-header-text: #7da393;
  --code-copy-hover-bg: #1a3328;
  --code-inline-bg: #12201a;
  --code-inline-text: #6ee7b7;
  --scrollbar-thumb: #1e3e30;
  --scrollbar-thumb-hover: #2a5040;
  --hl-keyword: #a78bfa;
  --hl-string: #86efac;
  --hl-comment: #4b6558;
  --hl-number: #fdba74;
  --hl-function: #7dd3fc;
  --hl-variable: #fca5a5;
  --hl-symbol: #5eead4;
}

/* ── Dracula ── purple-tinted, lavender primary ─────────────── */
html.dracula {
  --background: #14111e;
  --foreground: #e4dff0;
  --card: #1a1628;
  --card-foreground: #e4dff0;
  --popover: #100d19;
  --popover-foreground: #e4dff0;
  --primary: #c4b5fd;
  --primary-foreground: #1a1028;
  --secondary: #221d33;
  --secondary-foreground: #d1c9e3;
  --muted: #1a1628;
  --muted-foreground: #9389a8;
  --accent: #2a2440;
  --accent-foreground: #e4dff0;
  --destructive: #ef4444;
  --border: #2a2440;
  --input: #221d33;
  --ring: #c4b5fd;
  --chart-1: #c4b5fd;
  --chart-2: #34d399;
  --chart-3: #fbbf24;
  --chart-4: #f472b6;
  --chart-5: #f87171;
  --sidebar: #100d19;
  --sidebar-foreground: #e4dff0;
  --sidebar-primary: #c4b5fd;
  --sidebar-primary-foreground: #1a1028;
  --sidebar-accent: #1a1628;
  --sidebar-accent-foreground: #e4dff0;
  --sidebar-border: #221d33;
  --sidebar-ring: #c4b5fd;
  --link-color: #c4b5fd;
  --code-bg: #1a1628;
  --code-border: #2a2440;
  --code-text: #d1c9e3;
  --code-header-text: #9389a8;
  --code-copy-hover-bg: #2a2440;
  --code-inline-bg: #1e192e;
  --code-inline-text: #d8b4fe;
  --scrollbar-thumb: #322b4a;
  --scrollbar-thumb-hover: #403660;
  --hl-keyword: #ff79c6;
  --hl-string: #50fa7b;
  --hl-comment: #6272a4;
  --hl-number: #bd93f9;
  --hl-function: #8be9fd;
  --hl-variable: #ffb86c;
  --hl-symbol: #f1fa8c;
}

/* ── Nord ── cool blue-gray Scandinavian light ──────────────── */
html.nord {
  --background: #eceff4;
  --foreground: #2e3440;
  --card: #e5e9f0;
  --card-foreground: #2e3440;
  --popover: #eceff4;
  --popover-foreground: #2e3440;
  --primary: #5e81ac;
  --primary-foreground: #eceff4;
  --secondary: #d8dee9;
  --secondary-foreground: #4c566a;
  --muted: #e5e9f0;
  --muted-foreground: #6a7384;
  --accent: #d8dee9;
  --accent-foreground: #2e3440;
  --destructive: #bf616a;
  --border: #d0d6e1;
  --input: #d8dee9;
  --ring: #5e81ac;
  --chart-1: #5e81ac;
  --chart-2: #a3be8c;
  --chart-3: #ebcb8b;
  --chart-4: #b48ead;
  --chart-5: #bf616a;
  --sidebar: #e5e9f0;
  --sidebar-foreground: #2e3440;
  --sidebar-primary: #5e81ac;
  --sidebar-primary-foreground: #eceff4;
  --sidebar-accent: #d8dee9;
  --sidebar-accent-foreground: #2e3440;
  --sidebar-border: #d0d6e1;
  --sidebar-ring: #5e81ac;
  --link-color: #5e81ac;
  --code-bg: #e5e9f0;
  --code-border: #d0d6e1;
  --code-text: #2e3440;
  --code-header-text: #4c566a;
  --code-copy-hover-bg: #d0d6e1;
  --code-inline-bg: #dde1e9;
  --code-inline-text: #5e81ac;
  --scrollbar-thumb: #c5ccd8;
  --scrollbar-thumb-hover: #b0b8c7;
  --hl-keyword: #81a1c1;
  --hl-string: #a3be8c;
  --hl-comment: #7b8394;
  --hl-number: #b48ead;
  --hl-function: #88c0d0;
  --hl-variable: #bf616a;
  --hl-symbol: #8fbcbb;
}

/* ── Sand ── warm cream, earthy brown ───────────────────────── */
html.sand {
  --background: #faf6f1;
  --foreground: #1c1410;
  --card: #f5ede4;
  --card-foreground: #1c1410;
  --popover: #faf6f1;
  --popover-foreground: #1c1410;
  --primary: #b45309;
  --primary-foreground: #fef3c7;
  --secondary: #eee4d8;
  --secondary-foreground: #57453a;
  --muted: #f5ede4;
  --muted-foreground: #7a6b5f;
  --accent: #eae0d3;
  --accent-foreground: #1c1410;
  --destructive: #dc2626;
  --border: #e0d5c7;
  --input: #eae0d3;
  --ring: #b45309;
  --chart-1: #b45309;
  --chart-2: #65a30d;
  --chart-3: #ea580c;
  --chart-4: #c026d3;
  --chart-5: #dc2626;
  --sidebar: #f5ede4;
  --sidebar-foreground: #1c1410;
  --sidebar-primary: #b45309;
  --sidebar-primary-foreground: #fef3c7;
  --sidebar-accent: #eae0d3;
  --sidebar-accent-foreground: #1c1410;
  --sidebar-border: #e0d5c7;
  --sidebar-ring: #b45309;
  --link-color: #b45309;
  --code-bg: #f0e7db;
  --code-border: #e0d5c7;
  --code-text: #1c1410;
  --code-header-text: #57453a;
  --code-copy-hover-bg: #ddd1c2;
  --code-inline-bg: #f0e7db;
  --code-inline-text: #b45309;
  --scrollbar-thumb: #d5c9b8;
  --scrollbar-thumb-hover: #c4b6a2;
  --hl-keyword: #be123c;
  --hl-string: #166534;
  --hl-comment: #7a6b5f;
  --hl-number: #1d4ed8;
  --hl-function: #7c3aed;
  --hl-variable: #c2410c;
  --hl-symbol: #b45309;
}
