/* GENERATED by scripts/themes/generate.mjs from design/themes/themes.json. Do not edit by hand.
 * Run `node scripts/themes/generate.mjs` in the leapterm repository after editing the theme file.
 *
 * The team picks the site style in content/site.json ("theme"); the build writes it to
 * <html data-site-theme>. Professional is the default and matches styles.css exactly.
 * Light and dark follow the visitor's system, or html[data-theme] when a page forces one. */

/* Professional: Calm titanium neutrals. The original LeapTerm look. */
:root,
:root[data-site-theme="professional"] {
  --font-display: 'Roboto', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-display-weight: 600;
  --font-display-tracking: -0.01em;
  --radius-sm: 8px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --border-width: 1px;
  --bg-primary: #131519;
  --bg-secondary: #171a1f;
  --bg-card: #1d2026;
  --bg-card-hover: #343944;
  --bg-subtle: #171a1f;
  --bg-raised: #292d35;
  --border-color: #373d47;
  --border-hover: #f5f1ea52;
  --outline: #737985;
  --accent-orange: #f5f1ea;
  --accent-mint: #5ce6a1;
  --accent-peach: #d1d5db;
  --text-primary: #f5f1ea;
  --text-secondary: #b9b5af;
  --text-muted: #a39f99;
  --accent: #f5f1ea;
  --accent-ink: #131519;
  --accent-text: #f5f1ea;
  --highlight: #5ce6a1;
  --success: #5ce6a1;
  --warning: #f5b947;
  --danger: #f87171;
  --shadow-color: #00000080;
  --grid-line: #f5f1ea08;
  --accent-gradient: linear-gradient(135deg, #f5f1ea, #b9b5af);
  --glow-1: #5ce6a10f;
  --glow-2: #5ce6a10a;
  --shadow-card: 0 10px 30px -10px #00000080;
}
@media (prefers-color-scheme: light) {
  :root:not([data-theme="dark"]) {
    --bg-primary: #f5f1ea;
    --bg-secondary: #f0ebe3;
    --bg-card: #ffffff;
    --bg-card-hover: #e2dacf;
    --bg-subtle: #f0ebe3;
    --bg-raised: #ebe5dc;
    --border-color: #cec5b9;
    --border-hover: #13151952;
    --outline: #857b70;
    --accent-orange: #131519;
    --accent-mint: #047857;
    --accent-peach: #374151;
    --text-primary: #131519;
    --text-secondary: #49443e;
    --text-muted: #625c54;
    --accent: #131519;
    --accent-ink: #f5f1ea;
    --accent-text: #131519;
    --highlight: #047857;
    --success: #047857;
    --warning: #9c4a07;
    --danger: #b91c1c;
    --shadow-color: #1315191f;
    --grid-line: #13151908;
    --accent-gradient: linear-gradient(135deg, #131519, #49443e);
    --glow-1: #0478570f;
    --glow-2: #0478570a;
    --shadow-card: 0 10px 30px -10px #1315191f;
  }
}
html[data-theme="light"],
:root[data-site-theme="professional"][data-theme="light"] {
  --bg-primary: #f5f1ea;
  --bg-secondary: #f0ebe3;
  --bg-card: #ffffff;
  --bg-card-hover: #e2dacf;
  --bg-subtle: #f0ebe3;
  --bg-raised: #ebe5dc;
  --border-color: #cec5b9;
  --border-hover: #13151952;
  --outline: #857b70;
  --accent-orange: #131519;
  --accent-mint: #047857;
  --accent-peach: #374151;
  --text-primary: #131519;
  --text-secondary: #49443e;
  --text-muted: #625c54;
  --accent: #131519;
  --accent-ink: #f5f1ea;
  --accent-text: #131519;
  --highlight: #047857;
  --success: #047857;
  --warning: #9c4a07;
  --danger: #b91c1c;
  --shadow-color: #1315191f;
  --grid-line: #13151908;
  --accent-gradient: linear-gradient(135deg, #131519, #49443e);
  --glow-1: #0478570f;
  --glow-2: #0478570a;
  --shadow-card: 0 10px 30px -10px #1315191f;
}

/* Live Wire: Energetic mint, cyan and violet with soft glows. */
:root[data-site-theme="live-wire"] {
  --font-display: 'Space Grotesk', ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-display-weight: 700;
  --font-display-tracking: -0.02em;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-xl: 26px;
  --border-width: 1px;
  --bg-primary: #0a0d12;
  --bg-secondary: #0e121a;
  --bg-card: #121720;
  --bg-card-hover: #1c2431;
  --bg-subtle: #0e121a;
  --bg-raised: #161c26;
  --border-color: #263040;
  --border-hover: #3a4a60;
  --outline: #64738a;
  --accent-orange: #3df5a6;
  --accent-mint: #3df5a6;
  --accent-peach: #7dd3fc;
  --text-primary: #f5f1ea;
  --text-secondary: #c9cfd8;
  --text-muted: #a3acb9;
  --accent: #3df5a6;
  --accent-ink: #04140c;
  --accent-text: #3df5a6;
  --highlight: #38bdf8;
  --success: #3df5a6;
  --warning: #ffb547;
  --danger: #ff7a8a;
  --shadow-color: #000000d9;
  --grid-line: #f5f1ea12;
  --accent-gradient: linear-gradient(135deg, #3df5a6, #38bdf8, #a898ff);
  --glow-1: #3df5a633;
  --glow-2: #7b61ff38;
  --shadow-card: 0 28px 64px -28px #000000d9;
}
@media (prefers-color-scheme: light) {
  :root[data-site-theme="live-wire"]:not([data-theme="dark"]) {
    --bg-primary: #f7f4ee;
    --bg-secondary: #f1ece3;
    --bg-card: #ffffff;
    --bg-card-hover: #e6dfd3;
    --bg-subtle: #f1ece3;
    --bg-raised: #efeae1;
    --border-color: #dad2c5;
    --border-hover: #b9ae9c;
    --outline: #8a8174;
    --accent-orange: #047857;
    --accent-mint: #047857;
    --accent-peach: #0369a1;
    --text-primary: #0e1116;
    --text-secondary: #45413b;
    --text-muted: #57524b;
    --accent: #12d98b;
    --accent-ink: #04140c;
    --accent-text: #047857;
    --highlight: #0369a1;
    --success: #047857;
    --warning: #9c4a07;
    --danger: #b91c1c;
    --shadow-color: #4030185c;
    --grid-line: #0e111617;
    --accent-gradient: linear-gradient(135deg, #059669, #0284c7, #5b47e0);
    --glow-1: #12d98b47;
    --glow-2: #5b47e038;
    --shadow-card: 0 28px 64px -28px #4030185c;
  }
}
:root[data-site-theme="live-wire"][data-theme="light"] {
  --bg-primary: #f7f4ee;
  --bg-secondary: #f1ece3;
  --bg-card: #ffffff;
  --bg-card-hover: #e6dfd3;
  --bg-subtle: #f1ece3;
  --bg-raised: #efeae1;
  --border-color: #dad2c5;
  --border-hover: #b9ae9c;
  --outline: #8a8174;
  --accent-orange: #047857;
  --accent-mint: #047857;
  --accent-peach: #0369a1;
  --text-primary: #0e1116;
  --text-secondary: #45413b;
  --text-muted: #57524b;
  --accent: #12d98b;
  --accent-ink: #04140c;
  --accent-text: #047857;
  --highlight: #0369a1;
  --success: #047857;
  --warning: #9c4a07;
  --danger: #b91c1c;
  --shadow-color: #4030185c;
  --grid-line: #0e111617;
  --accent-gradient: linear-gradient(135deg, #059669, #0284c7, #5b47e0);
  --glow-1: #12d98b47;
  --glow-2: #5b47e038;
  --shadow-card: 0 28px 64px -28px #4030185c;
}

/* Pop Shell: Playful coral and violet with chunky outlines. */
:root[data-site-theme="pop-shell"] {
  --font-display: 'Bricolage Grotesque', ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-display-weight: 800;
  --font-display-tracking: -0.03em;
  --radius-sm: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-xl: 30px;
  --border-width: 2px;
  --bg-primary: #130f18;
  --bg-secondary: #18131f;
  --bg-card: #1c1723;
  --bg-card-hover: #2c2438;
  --bg-subtle: #18131f;
  --bg-raised: #231c2d;
  --border-color: #3a3048;
  --border-hover: #5a4b72;
  --outline: #7a6a92;
  --accent-orange: #ff8f6b;
  --accent-mint: #4ade80;
  --accent-peach: #c4b5fd;
  --text-primary: #fbf5ee;
  --text-secondary: #d9cfe2;
  --text-muted: #afa4ba;
  --accent: #ff7a52;
  --accent-ink: #1b1424;
  --accent-text: #ff8f6b;
  --highlight: #b79cff;
  --success: #4ade80;
  --warning: #fbbf24;
  --danger: #fb7185;
  --shadow-color: #7c3aed;
  --grid-line: #fbf5ee0f;
  --accent-gradient: linear-gradient(135deg, #ff7a52, #ff5c9e, #b79cff);
  --glow-1: #ff6a3d6b;
  --glow-2: #7c3aed6b;
  --shadow-card: 4px 4px 0 #7c3aed;
}
@media (prefers-color-scheme: light) {
  :root[data-site-theme="pop-shell"]:not([data-theme="dark"]) {
    --bg-primary: #fff8f2;
    --bg-secondary: #ffefe4;
    --bg-card: #ffffff;
    --bg-card-hover: #ffe3cf;
    --bg-subtle: #ffefe4;
    --bg-raised: #fff0e6;
    --border-color: #f0dccd;
    --border-hover: #1b1424;
    --outline: #6a5d72;
    --accent-orange: #c2410c;
    --accent-mint: #13773a;
    --accent-peach: #6d28d9;
    --text-primary: #1b1424;
    --text-secondary: #4a3f52;
    --text-muted: #6a5d72;
    --accent: #ff6a3d;
    --accent-ink: #1b1424;
    --accent-text: #c2410c;
    --highlight: #7c3aed;
    --success: #13773a;
    --warning: #92400e;
    --danger: #be123c;
    --shadow-color: #1b1424;
    --grid-line: #1b142412;
    --accent-gradient: linear-gradient(135deg, #ff6a3d, #ff3d8b, #7c3aed);
    --glow-1: #ff9a6b9e;
    --glow-2: #c4b5fd9e;
    --shadow-card: 4px 4px 0 #1b1424;
  }
}
:root[data-site-theme="pop-shell"][data-theme="light"] {
  --bg-primary: #fff8f2;
  --bg-secondary: #ffefe4;
  --bg-card: #ffffff;
  --bg-card-hover: #ffe3cf;
  --bg-subtle: #ffefe4;
  --bg-raised: #fff0e6;
  --border-color: #f0dccd;
  --border-hover: #1b1424;
  --outline: #6a5d72;
  --accent-orange: #c2410c;
  --accent-mint: #13773a;
  --accent-peach: #6d28d9;
  --text-primary: #1b1424;
  --text-secondary: #4a3f52;
  --text-muted: #6a5d72;
  --accent: #ff6a3d;
  --accent-ink: #1b1424;
  --accent-text: #c2410c;
  --highlight: #7c3aed;
  --success: #13773a;
  --warning: #92400e;
  --danger: #be123c;
  --shadow-color: #1b1424;
  --grid-line: #1b142412;
  --accent-gradient: linear-gradient(135deg, #ff6a3d, #ff3d8b, #7c3aed);
  --glow-1: #ff9a6b9e;
  --glow-2: #c4b5fd9e;
  --shadow-card: 4px 4px 0 #1b1424;
}

/* Blueprint: Technical electric blue and lime on graph paper. */
:root[data-site-theme="blueprint"] {
  --font-display: 'Martian Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --font-display-weight: 700;
  --font-display-tracking: -0.01em;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 6px;
  --radius-xl: 8px;
  --border-width: 1px;
  --bg-primary: #06080c;
  --bg-secondary: #0a0d12;
  --bg-card: #0d1117;
  --bg-card-hover: #18202b;
  --bg-subtle: #0a0d12;
  --bg-raised: #111720;
  --border-color: #222b36;
  --border-hover: #334051;
  --outline: #5a6a80;
  --accent-orange: #8fb3ff;
  --accent-mint: #5ce6a1;
  --accent-peach: #d4ff3a;
  --text-primary: #e6edf3;
  --text-secondary: #c3ccd6;
  --text-muted: #8d99a6;
  --accent: #6b9bff;
  --accent-ink: #06080c;
  --accent-text: #8fb3ff;
  --highlight: #d4ff3a;
  --success: #5ce6a1;
  --warning: #ffb86b;
  --danger: #ff7b72;
  --shadow-color: #6b9bff47;
  --grid-line: #e6edf30a;
  --accent-gradient: linear-gradient(135deg, #6b9bff, #a5beff, #d4ff3a);
  --glow-1: #6b9bff1f;
  --glow-2: #d4ff3a0f;
  --shadow-card: none;
}
@media (prefers-color-scheme: light) {
  :root[data-site-theme="blueprint"]:not([data-theme="dark"]) {
    --bg-primary: #f3f5f8;
    --bg-secondary: #e8ecf1;
    --bg-card: #ffffff;
    --bg-card-hover: #dde3ea;
    --bg-subtle: #e8ecf1;
    --bg-raised: #eef1f5;
    --border-color: #d0d7e0;
    --border-hover: #b3bdca;
    --outline: #6f7c8e;
    --accent-orange: #2a1eff;
    --accent-mint: #047857;
    --accent-peach: #435500;
    --text-primary: #0a1220;
    --text-secondary: #2e3a4b;
    --text-muted: #4a5566;
    --accent: #2a1eff;
    --accent-ink: #ffffff;
    --accent-text: #2a1eff;
    --highlight: #d4ff3a;
    --success: #047857;
    --warning: #9c4a07;
    --danger: #c81e1e;
    --shadow-color: #2a1eff61;
    --grid-line: #0a12200a;
    --accent-gradient: linear-gradient(135deg, #2a1eff, #5b8cff, #d4ff3a);
    --glow-1: #2a1eff12;
    --glow-2: #d4ff3a1a;
    --shadow-card: none;
  }
}
:root[data-site-theme="blueprint"][data-theme="light"] {
  --bg-primary: #f3f5f8;
  --bg-secondary: #e8ecf1;
  --bg-card: #ffffff;
  --bg-card-hover: #dde3ea;
  --bg-subtle: #e8ecf1;
  --bg-raised: #eef1f5;
  --border-color: #d0d7e0;
  --border-hover: #b3bdca;
  --outline: #6f7c8e;
  --accent-orange: #2a1eff;
  --accent-mint: #047857;
  --accent-peach: #435500;
  --text-primary: #0a1220;
  --text-secondary: #2e3a4b;
  --text-muted: #4a5566;
  --accent: #2a1eff;
  --accent-ink: #ffffff;
  --accent-text: #2a1eff;
  --highlight: #d4ff3a;
  --success: #047857;
  --warning: #9c4a07;
  --danger: #c81e1e;
  --shadow-color: #2a1eff61;
  --grid-line: #0a12200a;
  --accent-gradient: linear-gradient(135deg, #2a1eff, #5b8cff, #d4ff3a);
  --glow-1: #2a1eff12;
  --glow-2: #d4ff3a1a;
  --shadow-card: none;
}
