/**
 * Alysum accent / gradient themes (all app pages except index.html).
 * Set on <html data-gradient-theme="…"> via localStorage key alysum-gradient-theme.
 * "classic" = no attribute (removeItem) — these :root values match the original site.
 */

@import url("alysum-display-typography.css?v=11");

:root {
    --purple: #6d28d9;
    --purple-dark: #5b21b6;
    --purple-bright: #9333ea;
    --pink: #ec4899;
    --gold: #f5d489;

    --theme-body-spot: rgba(109, 40, 217, 0.18);
    --theme-body-spot-strong: rgba(109, 40, 217, 0.22);
    --theme-header-mid: #7c3aed;
    --theme-header-end: #a855f7;
    --theme-card-a: rgba(147, 51, 234, 0.34);
    --theme-card-b: rgba(236, 72, 153, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(147, 51, 234, 0.28), rgba(236, 72, 153, 0.12)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(109, 40, 217, 0.16);
    --theme-brand-kicker: #c4b5fd;

    --alysum-purple: #6d28d9;
    --alysum-purple-dark: #5b21b6;

    --accent: #6d28d9;
    --accent-hover: #5b21b6;
    --accent-soft: #7c3aed;
    --accent-muted: rgba(109, 40, 217, 0.18);
    --btn-primary-bg: #6d28d9;
    --btn-primary-bg-hover: #5b21b6;
    --link: #6d28d9;

    --nb-top-gradient: linear-gradient(135deg, #5b21b6, #7c3aed 55%, #a855f7);
    --nb-float-bg: linear-gradient(145deg, #1e1b4b 0%, #0f172a 42%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(124, 58, 237, 0.45), rgba(236, 72, 153, 0.12));

    --vp-r1: rgba(124, 58, 237, 0.2);
    --vp-r2: rgba(236, 72, 153, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(91, 33, 182, 0.55), rgba(124, 58, 237, 0.35), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #5b21b6;

    --login-page-bg: linear-gradient(135deg, #5b21b6, #7c3aed, #a78bfa);

    --ne-header-1: #5b21b6;
    --ne-header-2: #6d28d9;
    --ne-header-3: #7c3aed;
    --ne-header-4: #a855f7;
    --ne-body-spot: rgba(109, 40, 217, 0.22);

    --theme-prompt-topbar: linear-gradient(135deg, rgba(109, 40, 217, 0.35), rgba(236, 72, 153, 0.18));
    --theme-prompt-entry-border: rgba(236, 72, 153, 0.35);
    --theme-prompt-entry-ring: rgba(109, 40, 217, 0.25);
}

/* ——— Rose & pink ——— */
html[data-gradient-theme="rose"] {
    --purple: #db2777;
    --purple-dark: #9f1239;
    --purple-bright: #f43f5e;
    --pink: #fb7185;
    --gold: #fecdd3;
    --theme-body-spot: rgba(219, 39, 119, 0.24);
    --theme-body-spot-strong: rgba(244, 63, 94, 0.28);
    --theme-header-mid: #e11d48;
    --theme-header-end: #fb7185;
    --theme-card-a: rgba(244, 63, 94, 0.38);
    --theme-card-b: rgba(251, 113, 133, 0.22);
    --theme-hero-bg: linear-gradient(135deg, rgba(244, 63, 94, 0.32), rgba(251, 113, 133, 0.16)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(244, 63, 94, 0.2);
    --theme-brand-kicker: #fecdd3;
    --alysum-purple: #db2777;
    --alysum-purple-dark: #9f1239;
    --accent: #e11d48;
    --accent-hover: #be123c;
    --accent-soft: #fb7185;
    --accent-muted: rgba(244, 63, 94, 0.22);
    --btn-primary-bg: #db2777;
    --btn-primary-bg-hover: #be123c;
    --link: #f43f5e;
    --nb-top-gradient: linear-gradient(135deg, #9f1239, #e11d48 52%, #fb7185);
    --nb-float-bg: linear-gradient(145deg, #4c0519 0%, #1f0a12 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(244, 63, 94, 0.5), rgba(251, 113, 133, 0.16));
    --vp-r1: rgba(244, 63, 94, 0.22);
    --vp-r2: rgba(251, 113, 133, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(159, 18, 57, 0.65), rgba(225, 29, 72, 0.4), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #9f1239;
    --login-page-bg: linear-gradient(135deg, #9f1239, #e11d48, #fda4af);
    --ne-header-1: #9f1239;
    --ne-header-2: #db2777;
    --ne-header-3: #e11d48;
    --ne-header-4: #fb7185;
    --ne-body-spot: rgba(244, 63, 94, 0.26);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(244, 63, 94, 0.4), rgba(251, 113, 133, 0.2));
    --theme-prompt-entry-border: rgba(251, 113, 133, 0.38);
    --theme-prompt-entry-ring: rgba(244, 63, 94, 0.3);
}

/* ——— Ocean (blue / cyan) ——— */
html[data-gradient-theme="ocean"] {
    --purple: #0284c7;
    --purple-dark: #0c4a6e;
    --purple-bright: #38bdf8;
    --pink: #22d3ee;
    --gold: #bae6fd;
    --theme-body-spot: rgba(14, 165, 233, 0.22);
    --theme-body-spot-strong: rgba(56, 189, 248, 0.26);
    --theme-header-mid: #0369a1;
    --theme-header-end: #22d3ee;
    --theme-card-a: rgba(14, 165, 233, 0.35);
    --theme-card-b: rgba(34, 211, 238, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(14, 165, 233, 0.28), rgba(34, 211, 238, 0.12)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(14, 165, 233, 0.18);
    --theme-brand-kicker: #7dd3fc;
    --alysum-purple: #0284c7;
    --alysum-purple-dark: #0c4a6e;
    --accent: #0369a1;
    --accent-hover: #075985;
    --accent-soft: #38bdf8;
    --accent-muted: rgba(14, 165, 233, 0.2);
    --btn-primary-bg: #0284c7;
    --btn-primary-bg-hover: #0369a1;
    --link: #0ea5e9;
    --nb-top-gradient: linear-gradient(135deg, #0c4a6e, #0369a1 50%, #22d3ee);
    --nb-float-bg: linear-gradient(145deg, #082f49 0%, #0c1324 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(14, 165, 233, 0.45), rgba(34, 211, 238, 0.14));
    --vp-r1: rgba(56, 189, 248, 0.22);
    --vp-r2: rgba(14, 165, 233, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(12, 74, 110, 0.65), rgba(3, 105, 161, 0.4), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #0c4a6e;
    --login-page-bg: linear-gradient(135deg, #0c4a6e, #0369a1, #38bdf8);
    --ne-header-1: #0c4a6e;
    --ne-header-2: #0369a1;
    --ne-header-3: #0284c7;
    --ne-header-4: #22d3ee;
    --ne-body-spot: rgba(14, 165, 233, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(14, 165, 233, 0.4), rgba(34, 211, 238, 0.2));
    --theme-prompt-entry-border: rgba(34, 211, 238, 0.35);
    --theme-prompt-entry-ring: rgba(14, 165, 233, 0.28);
}

/* ——— Ember (red / orange) ——— */
html[data-gradient-theme="ember"] {
    --purple: #dc2626;
    --purple-dark: #991b1b;
    --purple-bright: #f97316;
    --pink: #fb923c;
    --gold: #fed7aa;
    --theme-body-spot: rgba(220, 38, 38, 0.22);
    --theme-body-spot-strong: rgba(249, 115, 22, 0.24);
    --theme-header-mid: #ea580c;
    --theme-header-end: #fb7185;
    --theme-card-a: rgba(220, 38, 38, 0.36);
    --theme-card-b: rgba(251, 146, 60, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(220, 38, 38, 0.3), rgba(251, 146, 60, 0.14)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(220, 38, 38, 0.18);
    --theme-brand-kicker: #fecaca;
    --alysum-purple: #dc2626;
    --alysum-purple-dark: #991b1b;
    --accent: #dc2626;
    --accent-hover: #b91c1c;
    --accent-soft: #fb923c;
    --accent-muted: rgba(220, 38, 38, 0.22);
    --btn-primary-bg: #dc2626;
    --btn-primary-bg-hover: #b91c1c;
    --link: #f97316;
    --nb-top-gradient: linear-gradient(135deg, #991b1b, #dc2626 48%, #fb923c);
    --nb-float-bg: linear-gradient(145deg, #450a0a 0%, #1a0a08 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(220, 38, 38, 0.48), rgba(251, 146, 60, 0.16));
    --vp-r1: rgba(249, 115, 22, 0.22);
    --vp-r2: rgba(220, 38, 38, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(153, 27, 27, 0.65), rgba(234, 88, 12, 0.38), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #991b1b;
    --login-page-bg: linear-gradient(135deg, #991b1b, #ea580c, #fb923c);
    --ne-header-1: #991b1b;
    --ne-header-2: #dc2626;
    --ne-header-3: #ea580c;
    --ne-header-4: #fb923c;
    --ne-body-spot: rgba(220, 38, 38, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(220, 38, 38, 0.4), rgba(251, 146, 60, 0.22));
    --theme-prompt-entry-border: rgba(251, 146, 60, 0.38);
    --theme-prompt-entry-ring: rgba(220, 38, 38, 0.3);
}

/* ——— Aurora (violet + cyan glow) ——— */
html[data-gradient-theme="aurora"] {
    --purple: #7c3aed;
    --purple-dark: #4c1d95;
    --purple-bright: #22d3ee;
    --pink: #a78bfa;
    --gold: #e9d5ff;
    --theme-body-spot: rgba(124, 58, 237, 0.22);
    --theme-body-spot-strong: rgba(34, 211, 238, 0.18);
    --theme-header-mid: #06b6d4;
    --theme-header-end: #a78bfa;
    --theme-card-a: rgba(124, 58, 237, 0.34);
    --theme-card-b: rgba(34, 211, 238, 0.16);
    --theme-hero-bg: linear-gradient(135deg, rgba(124, 58, 237, 0.3), rgba(34, 211, 238, 0.12)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(34, 211, 238, 0.14);
    --theme-brand-kicker: #a5f3fc;
    --alysum-purple: #7c3aed;
    --alysum-purple-dark: #4c1d95;
    --accent: #7c3aed;
    --accent-hover: #6d28d9;
    --accent-soft: #22d3ee;
    --accent-muted: rgba(167, 139, 250, 0.22);
    --btn-primary-bg: #6d28d9;
    --btn-primary-bg-hover: #5b21b6;
    --link: #22d3ee;
    --nb-top-gradient: linear-gradient(135deg, #4c1d95, #7c3aed 45%, #06b6d4);
    --nb-float-bg: linear-gradient(145deg, #1e1b4b 0%, #0a1628 45%, #020617 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(124, 58, 237, 0.42), rgba(34, 211, 238, 0.18));
    --vp-r1: rgba(124, 58, 237, 0.22);
    --vp-r2: rgba(34, 211, 238, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(76, 29, 149, 0.6), rgba(6, 182, 212, 0.28), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #4c1d95;
    --login-page-bg: linear-gradient(135deg, #4c1d95, #7c3aed, #22d3ee);
    --ne-header-1: #4c1d95;
    --ne-header-2: #6d28d9;
    --ne-header-3: #7c3aed;
    --ne-header-4: #22d3ee;
    --ne-body-spot: rgba(34, 211, 238, 0.2);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(124, 58, 237, 0.38), rgba(34, 211, 238, 0.2));
    --theme-prompt-entry-border: rgba(34, 211, 238, 0.35);
    --theme-prompt-entry-ring: rgba(124, 58, 237, 0.28);
}

/* ——— Gold (amber) ——— */
html[data-gradient-theme="gold"] {
    --purple: #d97706;
    --purple-dark: #92400e;
    --purple-bright: #fbbf24;
    --pink: #fcd34d;
    --gold: #fef3c7;
    --theme-body-spot: rgba(217, 119, 6, 0.22);
    --theme-body-spot-strong: rgba(251, 191, 36, 0.2);
    --theme-header-mid: #f59e0b;
    --theme-header-end: #fde68a;
    --theme-card-a: rgba(217, 119, 6, 0.32);
    --theme-card-b: rgba(251, 191, 36, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(217, 119, 6, 0.28), rgba(251, 191, 36, 0.12)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(217, 119, 6, 0.18);
    --theme-brand-kicker: #fde68a;
    --alysum-purple: #d97706;
    --alysum-purple-dark: #92400e;
    --accent: #d97706;
    --accent-hover: #b45309;
    --accent-soft: #fbbf24;
    --accent-muted: rgba(217, 119, 6, 0.2);
    --btn-primary-bg: #d97706;
    --btn-primary-bg-hover: #b45309;
    --link: #f59e0b;
    --nb-top-gradient: linear-gradient(135deg, #92400e, #d97706 50%, #fbbf24);
    --nb-float-bg: linear-gradient(145deg, #2a1a05 0%, #0f172a 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(217, 119, 6, 0.45), rgba(251, 191, 36, 0.14));
    --vp-r1: rgba(251, 191, 36, 0.2);
    --vp-r2: rgba(217, 119, 6, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(146, 64, 14, 0.62), rgba(245, 158, 11, 0.35), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #92400e;
    --login-page-bg: linear-gradient(135deg, #92400e, #f59e0b, #fde68a);
    --ne-header-1: #92400e;
    --ne-header-2: #d97706;
    --ne-header-3: #f59e0b;
    --ne-header-4: #fcd34d;
    --ne-body-spot: rgba(251, 191, 36, 0.22);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(217, 119, 6, 0.4), rgba(251, 191, 36, 0.22));
    --theme-prompt-entry-border: rgba(251, 191, 36, 0.35);
    --theme-prompt-entry-ring: rgba(217, 119, 6, 0.28);
}

/* ——— Silver (cool slate) ——— */
html[data-gradient-theme="silver"] {
    --purple: #64748b;
    --purple-dark: #334155;
    --purple-bright: #94a3b8;
    --pink: #cbd5e1;
    --gold: #e2e8f0;
    --theme-body-spot: rgba(148, 163, 184, 0.18);
    --theme-body-spot-strong: rgba(203, 213, 225, 0.16);
    --theme-header-mid: #64748b;
    --theme-header-end: #cbd5e1;
    --theme-card-a: rgba(148, 163, 184, 0.28);
    --theme-card-b: rgba(203, 213, 225, 0.12);
    --theme-hero-bg: linear-gradient(135deg, rgba(100, 116, 139, 0.28), rgba(203, 213, 225, 0.08)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(148, 163, 184, 0.16);
    --theme-brand-kicker: #cbd5e1;
    --alysum-purple: #64748b;
    --alysum-purple-dark: #334155;
    --accent: #64748b;
    --accent-hover: #475569;
    --accent-soft: #94a3b8;
    --accent-muted: rgba(148, 163, 184, 0.2);
    --btn-primary-bg: #64748b;
    --btn-primary-bg-hover: #475569;
    --link: #94a3b8;
    --nb-top-gradient: linear-gradient(135deg, #1e293b, #475569 48%, #94a3b8);
    --nb-float-bg: linear-gradient(145deg, #0f172a 0%, #020617 45%, #020617 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(100, 116, 139, 0.4), rgba(203, 213, 225, 0.1));
    --vp-r1: rgba(148, 163, 184, 0.18);
    --vp-r2: rgba(203, 213, 225, 0.1);
    --vp-hero-bg: linear-gradient(135deg, rgba(51, 65, 85, 0.65), rgba(100, 116, 139, 0.35), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #334155;
    --login-page-bg: linear-gradient(135deg, #1e293b, #64748b, #cbd5e1);
    --ne-header-1: #1e293b;
    --ne-header-2: #475569;
    --ne-header-3: #64748b;
    --ne-header-4: #cbd5e1;
    --ne-body-spot: rgba(148, 163, 184, 0.2);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(100, 116, 139, 0.4), rgba(203, 213, 225, 0.16));
    --theme-prompt-entry-border: rgba(203, 213, 225, 0.32);
    --theme-prompt-entry-ring: rgba(148, 163, 184, 0.28);
}

/* ——— Forest (emerald) ——— */
html[data-gradient-theme="forest"] {
    --purple: #059669;
    --purple-dark: #064e3b;
    --purple-bright: #34d399;
    --pink: #6ee7b7;
    --gold: #d1fae5;
    --theme-body-spot: rgba(16, 185, 129, 0.2);
    --theme-body-spot-strong: rgba(52, 211, 153, 0.22);
    --theme-header-mid: #10b981;
    --theme-header-end: #6ee7b7;
    --theme-card-a: rgba(16, 185, 129, 0.32);
    --theme-card-b: rgba(110, 231, 183, 0.16);
    --theme-hero-bg: linear-gradient(135deg, rgba(16, 185, 129, 0.26), rgba(110, 231, 183, 0.1)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(16, 185, 129, 0.16);
    --theme-brand-kicker: #a7f3d0;
    --alysum-purple: #059669;
    --alysum-purple-dark: #064e3b;
    --accent: #059669;
    --accent-hover: #047857;
    --accent-soft: #34d399;
    --accent-muted: rgba(16, 185, 129, 0.2);
    --btn-primary-bg: #059669;
    --btn-primary-bg-hover: #047857;
    --link: #10b981;
    --nb-top-gradient: linear-gradient(135deg, #064e3b, #059669 50%, #34d399);
    --nb-float-bg: linear-gradient(145deg, #022c22 0%, #0f172a 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(16, 185, 129, 0.42), rgba(110, 231, 183, 0.14));
    --vp-r1: rgba(52, 211, 153, 0.2);
    --vp-r2: rgba(16, 185, 129, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(6, 78, 59, 0.65), rgba(16, 185, 129, 0.35), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #064e3b;
    --login-page-bg: linear-gradient(135deg, #064e3b, #059669, #6ee7b7);
    --ne-header-1: #064e3b;
    --ne-header-2: #059669;
    --ne-header-3: #10b981;
    --ne-header-4: #6ee7b7;
    --ne-body-spot: rgba(16, 185, 129, 0.22);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(16, 185, 129, 0.4), rgba(110, 231, 183, 0.2));
    --theme-prompt-entry-border: rgba(110, 231, 183, 0.35);
    --theme-prompt-entry-ring: rgba(16, 185, 129, 0.28);
}

/* ——— Forest 2 Gradient (brown → green) ——— */
html[data-gradient-theme="forest2"] {
    --purple: #2f6f3e;
    --purple-dark: #5f3b1b;
    --purple-bright: #22c55e;
    --pink: #8b5a2b;
    --gold: #d9f99d;
    --theme-body-spot: rgba(95, 59, 27, 0.22);
    --theme-body-spot-strong: rgba(47, 111, 62, 0.24);
    --theme-header-mid: #2f6f3e;
    --theme-header-end: #22c55e;
    --theme-card-a: rgba(139, 90, 43, 0.34);
    --theme-card-b: rgba(34, 197, 94, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(95, 59, 27, 0.42), rgba(47, 111, 62, 0.22), rgba(34, 197, 94, 0.1)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(47, 111, 62, 0.18);
    --theme-brand-kicker: #bbf7d0;
    --alysum-purple: #2f6f3e;
    --alysum-purple-dark: #5f3b1b;
    --accent: #2f6f3e;
    --accent-hover: #14532d;
    --accent-soft: #22c55e;
    --accent-muted: rgba(47, 111, 62, 0.22);
    --btn-primary-bg: #2f6f3e;
    --btn-primary-bg-hover: #14532d;
    --link: #22c55e;
    --nb-top-gradient: linear-gradient(135deg, #5f3b1b, #8b5a2b 35%, #2f6f3e 70%, #14532d);
    --nb-float-bg: linear-gradient(145deg, #2b1608 0%, #1f2a16 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(139, 90, 43, 0.45), rgba(34, 197, 94, 0.18));
    --vp-r1: rgba(139, 90, 43, 0.22);
    --vp-r2: rgba(34, 197, 94, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(95, 59, 27, 0.72), rgba(47, 111, 62, 0.42), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #5f3b1b;
    --login-page-bg: linear-gradient(135deg, #5f3b1b, #8b5a2b, #2f6f3e, #14532d);
    --ne-header-1: #5f3b1b;
    --ne-header-2: #8b5a2b;
    --ne-header-3: #2f6f3e;
    --ne-header-4: #22c55e;
    --ne-body-spot: rgba(47, 111, 62, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(95, 59, 27, 0.5), rgba(47, 111, 62, 0.32), rgba(34, 197, 94, 0.18));
    --theme-prompt-entry-border: rgba(34, 197, 94, 0.38);
    --theme-prompt-entry-ring: rgba(47, 111, 62, 0.3);
}

/* ——— Sunset (twilight → magenta sky → coral → gold rim) ——— */
html[data-gradient-theme="sunset"] {
    --purple: #c026d3;
    --purple-dark: #312e81;
    --purple-bright: #fb923c;
    --pink: #fbbf24;
    --gold: #fef9c3;
    --theme-body-spot: rgba(192, 38, 211, 0.18);
    --theme-body-spot-strong: rgba(251, 146, 60, 0.22);
    --theme-header-mid: #e11d48;
    --theme-header-end: #fcd34d;
    --theme-card-a: rgba(192, 38, 211, 0.32);
    --theme-card-b: rgba(251, 146, 60, 0.22);
    --theme-hero-bg: linear-gradient(
            135deg,
            rgba(49, 46, 129, 0.45),
            rgba(192, 38, 211, 0.22),
            rgba(251, 146, 60, 0.18)
        ),
        var(--panel, #111827);
    --theme-accent-soft-bg: rgba(251, 146, 60, 0.14);
    --theme-brand-kicker: #fde68a;
    --alysum-purple: #c026d3;
    --alysum-purple-dark: #312e81;
    --accent: #db2777;
    --accent-hover: #be185d;
    --accent-soft: #fb923c;
    --accent-muted: rgba(192, 38, 211, 0.2);
    --btn-primary-bg: #db2777;
    --btn-primary-bg-hover: #be185d;
    --link: #fb923c;
    --nb-top-gradient: linear-gradient(135deg, #312e81, #a21caf 38%, #ea580c 68%, #fbbf24);
    --nb-float-bg: linear-gradient(145deg, #1e1b4b 0%, #3b0764 35%, #431407 70%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(192, 38, 211, 0.45), rgba(251, 146, 60, 0.22));
    --vp-r1: rgba(192, 38, 211, 0.22);
    --vp-r2: rgba(251, 191, 36, 0.18);
    --vp-hero-bg: linear-gradient(
        135deg,
        rgba(49, 46, 129, 0.72),
        rgba(157, 23, 77, 0.45),
        rgba(234, 88, 12, 0.35),
        rgba(15, 23, 42, 0.7)
    );
    --vp-primary-fg: #831843;
    --login-page-bg: linear-gradient(135deg, #1e1b4b, #86198f, #ea580c, #fbbf24);
    --ne-header-1: #312e81;
    --ne-header-2: #a21caf;
    --ne-header-3: #ea580c;
    --ne-header-4: #fcd34d;
    --ne-body-spot: rgba(251, 146, 60, 0.26);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(49, 46, 129, 0.55), rgba(192, 38, 211, 0.32), rgba(251, 146, 60, 0.22));
    --theme-prompt-entry-border: rgba(251, 191, 36, 0.45);
    --theme-prompt-entry-ring: rgba(192, 38, 211, 0.35);
}

/* ——— Midnight (deep navy & cobalt) ——— */
html[data-gradient-theme="midnight"] {
    --purple: #2563eb;
    --purple-dark: #0f172a;
    --purple-bright: #38bdf8;
    --pink: #60a5fa;
    --gold: #93c5fd;
    --theme-body-spot: rgba(37, 99, 235, 0.22);
    --theme-body-spot-strong: rgba(56, 189, 248, 0.2);
    --theme-header-mid: #1d4ed8;
    --theme-header-end: #38bdf8;
    --theme-card-a: rgba(37, 99, 235, 0.32);
    --theme-card-b: rgba(56, 189, 248, 0.16);
    --theme-hero-bg: linear-gradient(135deg, rgba(15, 23, 42, 0.55), rgba(37, 99, 235, 0.22), rgba(56, 189, 248, 0.1)),
        var(--panel, #111827);
    --theme-accent-soft-bg: rgba(37, 99, 235, 0.18);
    --theme-brand-kicker: #7dd3fc;
    --alysum-purple: #2563eb;
    --alysum-purple-dark: #0f172a;
    --accent: #2563eb;
    --accent-hover: #1d4ed8;
    --accent-soft: #38bdf8;
    --accent-muted: rgba(37, 99, 235, 0.22);
    --btn-primary-bg: #2563eb;
    --btn-primary-bg-hover: #1d4ed8;
    --link: #60a5fa;
    --nb-top-gradient: linear-gradient(135deg, #020617, #1e3a8a 42%, #2563eb 68%, #38bdf8);
    --nb-float-bg: linear-gradient(145deg, #020617 0%, #0c1929 45%, #020a1a 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(37, 99, 235, 0.45), rgba(56, 189, 248, 0.18));
    --vp-r1: rgba(37, 99, 235, 0.25);
    --vp-r2: rgba(56, 189, 248, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(2, 6, 23, 0.85), rgba(30, 58, 138, 0.55), rgba(37, 99, 235, 0.35), rgba(15, 23, 42, 0.75));
    --vp-primary-fg: #1e3a8a;
    --login-page-bg: linear-gradient(135deg, #020617, #1e3a8a, #2563eb, #38bdf8);
    --ne-header-1: #020617;
    --ne-header-2: #1e3a8a;
    --ne-header-3: #2563eb;
    --ne-header-4: #7dd3fc;
    --ne-body-spot: rgba(56, 189, 248, 0.22);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(15, 23, 42, 0.65), rgba(37, 99, 235, 0.4), rgba(56, 189, 248, 0.22));
    --theme-prompt-entry-border: rgba(56, 189, 248, 0.38);
    --theme-prompt-entry-ring: rgba(37, 99, 235, 0.32);
}

/* ——— Inferno (fire: coals → crimson → orange → gold tips) ——— */
html[data-gradient-theme="inferno"] {
    --purple: #dc2626;
    --purple-dark: #450a0a;
    --purple-bright: #f97316;
    --pink: #fbbf24;
    --gold: #fef08a;
    --theme-body-spot: rgba(220, 38, 38, 0.24);
    --theme-body-spot-strong: rgba(249, 115, 22, 0.22);
    --theme-header-mid: #ea580c;
    --theme-header-end: #facc15;
    --theme-card-a: rgba(220, 38, 38, 0.38);
    --theme-card-b: rgba(251, 191, 36, 0.22);
    --theme-hero-bg: linear-gradient(135deg, rgba(127, 29, 29, 0.45), rgba(234, 88, 12, 0.28), rgba(251, 191, 36, 0.12)),
        var(--panel, #111827);
    --theme-accent-soft-bg: rgba(234, 88, 12, 0.18);
    --theme-brand-kicker: #fecaca;
    --alysum-purple: #dc2626;
    --alysum-purple-dark: #7f1d1d;
    --accent: #dc2626;
    --accent-hover: #b91c1c;
    --accent-soft: #f97316;
    --accent-muted: rgba(220, 38, 38, 0.24);
    --btn-primary-bg: #dc2626;
    --btn-primary-bg-hover: #b91c1c;
    --link: #fb923c;
    --nb-top-gradient: linear-gradient(135deg, #450a0a, #991b1b 35%, #ea580c 65%, #fbbf24);
    --nb-float-bg: linear-gradient(145deg, #1c0a0a 0%, #431407 40%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(220, 38, 38, 0.5), rgba(251, 191, 36, 0.2));
    --vp-r1: rgba(249, 115, 22, 0.28);
    --vp-r2: rgba(250, 204, 21, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(69, 10, 10, 0.85), rgba(185, 28, 28, 0.5), rgba(234, 88, 12, 0.38), rgba(15, 23, 42, 0.72));
    --vp-primary-fg: #7f1d1d;
    --login-page-bg: linear-gradient(135deg, #450a0a, #b91c1c, #ea580c, #fbbf24);
    --ne-header-1: #450a0a;
    --ne-header-2: #b91c1c;
    --ne-header-3: #ea580c;
    --ne-header-4: #facc15;
    --ne-body-spot: rgba(251, 146, 60, 0.28);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(127, 29, 29, 0.55), rgba(234, 88, 12, 0.42), rgba(251, 191, 36, 0.22));
    --theme-prompt-entry-border: rgba(251, 191, 36, 0.42);
    --theme-prompt-entry-ring: rgba(220, 38, 38, 0.35);
}

/* ——— Arctic (frost, ice blue & mint) ——— */
html[data-gradient-theme="arctic"] {
    --purple: #0ea5e9;
    --purple-dark: #0c4a6e;
    --purple-bright: #67e8f9;
    --pink: #a5f3fc;
    --gold: #ecfeff;
    --theme-body-spot: rgba(14, 165, 233, 0.16);
    --theme-body-spot-strong: rgba(103, 232, 249, 0.18);
    --theme-header-mid: #06b6d4;
    --theme-header-end: #a5f3fc;
    --theme-card-a: rgba(14, 165, 233, 0.22);
    --theme-card-b: rgba(165, 243, 252, 0.14);
    --theme-hero-bg: linear-gradient(135deg, rgba(12, 74, 110, 0.35), rgba(14, 165, 233, 0.14), rgba(165, 243, 252, 0.08)),
        var(--panel, #111827);
    --theme-accent-soft-bg: rgba(14, 165, 233, 0.12);
    --theme-brand-kicker: #bae6fd;
    --alysum-purple: #0ea5e9;
    --alysum-purple-dark: #0c4a6e;
    --accent: #0284c7;
    --accent-hover: #0369a1;
    --accent-soft: #22d3ee;
    --accent-muted: rgba(14, 165, 233, 0.16);
    --btn-primary-bg: #0284c7;
    --btn-primary-bg-hover: #0369a1;
    --link: #06b6d4;
    --nb-top-gradient: linear-gradient(135deg, #0c4a6e, #0284c7 48%, #67e8f9);
    --nb-float-bg: linear-gradient(145deg, #082f49 0%, #0f172a 50%, #020617 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(14, 165, 233, 0.35), rgba(165, 243, 252, 0.14));
    --vp-r1: rgba(103, 232, 249, 0.18);
    --vp-r2: rgba(14, 165, 233, 0.1);
    --vp-hero-bg: linear-gradient(135deg, rgba(12, 74, 110, 0.55), rgba(6, 182, 212, 0.28), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #0c4a6e;
    --login-page-bg: linear-gradient(135deg, #0c4a6e, #0284c7, #a5f3fc);
    --ne-header-1: #0c4a6e;
    --ne-header-2: #0284c7;
    --ne-header-3: #06b6d4;
    --ne-header-4: #cffafe;
    --ne-body-spot: rgba(103, 232, 249, 0.18);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(12, 74, 110, 0.45), rgba(14, 165, 233, 0.28), rgba(165, 243, 252, 0.16));
    --theme-prompt-entry-border: rgba(103, 232, 249, 0.35);
    --theme-prompt-entry-ring: rgba(14, 165, 233, 0.28);
}

/* ——— Wine (burgundy & rose gold) ——— */
html[data-gradient-theme="wine"] {
    --purple: #9f1239;
    --purple-dark: #450a0a;
    --purple-bright: #e11d48;
    --pink: #fda4af;
    --gold: #fce7f3;
    --theme-body-spot: rgba(159, 18, 57, 0.22);
    --theme-body-spot-strong: rgba(225, 29, 72, 0.2);
    --theme-header-mid: #be123c;
    --theme-header-end: #fb7185;
    --theme-card-a: rgba(159, 18, 57, 0.34);
    --theme-card-b: rgba(251, 113, 133, 0.16);
    --theme-hero-bg: linear-gradient(135deg, rgba(69, 10, 10, 0.5), rgba(159, 18, 57, 0.22), rgba(251, 113, 133, 0.1)),
        var(--panel, #111827);
    --theme-accent-soft-bg: rgba(159, 18, 57, 0.16);
    --theme-brand-kicker: #fbcfe8;
    --alysum-purple: #9f1239;
    --alysum-purple-dark: #450a0a;
    --accent: #be123c;
    --accent-hover: #9f1239;
    --accent-soft: #fb7185;
    --accent-muted: rgba(159, 18, 57, 0.22);
    --btn-primary-bg: #be123c;
    --btn-primary-bg-hover: #9f1239;
    --link: #fb7185;
    --nb-top-gradient: linear-gradient(135deg, #450a0a, #881337 42%, #e11d48 72%, #fda4af);
    --nb-float-bg: linear-gradient(145deg, #1a0508 0%, #3f0d1f 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(159, 18, 57, 0.45), rgba(251, 113, 133, 0.16));
    --vp-r1: rgba(225, 29, 72, 0.2);
    --vp-r2: rgba(251, 113, 133, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(69, 10, 10, 0.75), rgba(136, 19, 55, 0.45), rgba(190, 18, 60, 0.28), rgba(15, 23, 42, 0.7));
    --vp-primary-fg: #881337;
    --login-page-bg: linear-gradient(135deg, #450a0a, #881337, #e11d48, #fda4af);
    --ne-header-1: #450a0a;
    --ne-header-2: #881337;
    --ne-header-3: #e11d48;
    --ne-header-4: #fda4af;
    --ne-body-spot: rgba(225, 29, 72, 0.22);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(69, 10, 10, 0.55), rgba(159, 18, 57, 0.38), rgba(251, 113, 133, 0.2));
    --theme-prompt-entry-border: rgba(251, 113, 133, 0.38);
    --theme-prompt-entry-ring: rgba(190, 18, 60, 0.32);
}

/* ——— Neon (cyber magenta + electric mint) ——— */
html[data-gradient-theme="neon"] {
    --purple: #d946ef;
    --purple-dark: #4a044e;
    --purple-bright: #22c55e;
    --pink: #22d3ee;
    --gold: #fae8ff;
    --theme-body-spot: rgba(217, 70, 239, 0.2);
    --theme-body-spot-strong: rgba(34, 197, 94, 0.16);
    --theme-header-mid: #c026d3;
    --theme-header-end: #22c55e;
    --theme-card-a: rgba(217, 70, 239, 0.3);
    --theme-card-b: rgba(34, 211, 238, 0.14);
    --theme-hero-bg: linear-gradient(135deg, rgba(74, 4, 78, 0.45), rgba(217, 70, 239, 0.2), rgba(34, 197, 94, 0.1)),
        var(--panel, #111827);
    --theme-accent-soft-bg: rgba(217, 70, 239, 0.14);
    --theme-brand-kicker: #e879f9;
    --alysum-purple: #d946ef;
    --alysum-purple-dark: #4a044e;
    --accent: #d946ef;
    --accent-hover: #a21caf;
    --accent-soft: #22c55e;
    --accent-muted: rgba(217, 70, 239, 0.2);
    --btn-primary-bg: #c026d3;
    --btn-primary-bg-hover: #86198f;
    --link: #22d3ee;
    --nb-top-gradient: linear-gradient(135deg, #4a044e, #a21caf 40%, #d946ef 65%, #22c55e);
    --nb-float-bg: linear-gradient(145deg, #1a0a2e 0%, #052e16 55%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(217, 70, 239, 0.42), rgba(34, 211, 238, 0.16));
    --vp-r1: rgba(217, 70, 239, 0.22);
    --vp-r2: rgba(34, 197, 94, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(74, 4, 78, 0.7), rgba(162, 28, 175, 0.4), rgba(22, 163, 74, 0.25), rgba(15, 23, 42, 0.72));
    --vp-primary-fg: #86198f;
    --login-page-bg: linear-gradient(135deg, #4a044e, #a21caf, #22d3ee, #22c55e);
    --ne-header-1: #4a044e;
    --ne-header-2: #a21caf;
    --ne-header-3: #d946ef;
    --ne-header-4: #4ade80;
    --ne-body-spot: rgba(217, 70, 239, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(74, 4, 78, 0.55), rgba(217, 70, 239, 0.32), rgba(34, 211, 238, 0.18));
    --theme-prompt-entry-border: rgba(34, 211, 238, 0.4);
    --theme-prompt-entry-ring: rgba(217, 70, 239, 0.32);
}

/* ——— Lavender (soft lilac) ——— */
html[data-gradient-theme="lavender"] {
    --purple: #8b5cf6;
    --purple-dark: #5b21b6;
    --purple-bright: #a78bfa;
    --pink: #c4b5fd;
    --gold: #ede9fe;
    --theme-body-spot: rgba(139, 92, 246, 0.22);
    --theme-body-spot-strong: rgba(167, 139, 250, 0.26);
    --theme-header-mid: #7c3aed;
    --theme-header-end: #c4b5fd;
    --theme-card-a: rgba(139, 92, 246, 0.34);
    --theme-card-b: rgba(196, 181, 253, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(139, 92, 246, 0.28), rgba(196, 181, 253, 0.12)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(139, 92, 246, 0.18);
    --theme-brand-kicker: #ddd6fe;
    --alysum-purple: #8b5cf6;
    --alysum-purple-dark: #5b21b6;
    --accent: #7c3aed;
    --accent-hover: #6d28d9;
    --accent-soft: #a78bfa;
    --accent-muted: rgba(139, 92, 246, 0.22);
    --btn-primary-bg: #7c3aed;
    --btn-primary-bg-hover: #6d28d9;
    --link: #a78bfa;
    --nb-top-gradient: linear-gradient(135deg, #5b21b6, #7c3aed 50%, #c4b5fd);
    --nb-float-bg: linear-gradient(145deg, #2e1065 0%, #1e1b4b 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(139, 92, 246, 0.45), rgba(196, 181, 253, 0.16));
    --vp-r1: rgba(167, 139, 250, 0.22);
    --vp-r2: rgba(196, 181, 253, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(91, 33, 182, 0.65), rgba(124, 58, 237, 0.4), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #5b21b6;
    --login-page-bg: linear-gradient(135deg, #5b21b6, #8b5cf6, #ddd6fe);
    --ne-header-1: #5b21b6;
    --ne-header-2: #7c3aed;
    --ne-header-3: #8b5cf6;
    --ne-header-4: #c4b5fd;
    --ne-body-spot: rgba(167, 139, 250, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(139, 92, 246, 0.4), rgba(196, 181, 253, 0.2));
    --theme-prompt-entry-border: rgba(196, 181, 253, 0.38);
    --theme-prompt-entry-ring: rgba(139, 92, 246, 0.3);
}

/* ——— Mint (fresh green) ——— */
html[data-gradient-theme="mint"] {
    --purple: #059669;
    --purple-dark: #064e3b;
    --purple-bright: #34d399;
    --pink: #6ee7b7;
    --gold: #d1fae5;
    --theme-body-spot: rgba(16, 185, 129, 0.22);
    --theme-body-spot-strong: rgba(52, 211, 153, 0.26);
    --theme-header-mid: #047857;
    --theme-header-end: #6ee7b7;
    --theme-card-a: rgba(16, 185, 129, 0.32);
    --theme-card-b: rgba(110, 231, 183, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(16, 185, 129, 0.26), rgba(110, 231, 183, 0.12)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(16, 185, 129, 0.18);
    --theme-brand-kicker: #a7f3d0;
    --alysum-purple: #059669;
    --alysum-purple-dark: #064e3b;
    --accent: #047857;
    --accent-hover: #065f46;
    --accent-soft: #34d399;
    --accent-muted: rgba(16, 185, 129, 0.22);
    --btn-primary-bg: #059669;
    --btn-primary-bg-hover: #047857;
    --link: #34d399;
    --nb-top-gradient: linear-gradient(135deg, #064e3b, #059669 50%, #6ee7b7);
    --nb-float-bg: linear-gradient(145deg, #022c22 0%, #0c1324 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(16, 185, 129, 0.45), rgba(110, 231, 183, 0.14));
    --vp-r1: rgba(52, 211, 153, 0.22);
    --vp-r2: rgba(110, 231, 183, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(6, 78, 59, 0.7), rgba(5, 150, 105, 0.4), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #064e3b;
    --login-page-bg: linear-gradient(135deg, #064e3b, #059669, #6ee7b7);
    --ne-header-1: #064e3b;
    --ne-header-2: #047857;
    --ne-header-3: #10b981;
    --ne-header-4: #6ee7b7;
    --ne-body-spot: rgba(52, 211, 153, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(16, 185, 129, 0.4), rgba(110, 231, 183, 0.2));
    --theme-prompt-entry-border: rgba(110, 231, 183, 0.35);
    --theme-prompt-entry-ring: rgba(16, 185, 129, 0.28);
}

/* ——— Peach (warm coral) ——— */
html[data-gradient-theme="peach"] {
    --purple: #ea580c;
    --purple-dark: #9a3412;
    --purple-bright: #fb923c;
    --pink: #fdba74;
    --gold: #ffedd5;
    --theme-body-spot: rgba(234, 88, 12, 0.22);
    --theme-body-spot-strong: rgba(251, 146, 60, 0.26);
    --theme-header-mid: #c2410c;
    --theme-header-end: #fdba74;
    --theme-card-a: rgba(234, 88, 12, 0.32);
    --theme-card-b: rgba(253, 186, 116, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(234, 88, 12, 0.26), rgba(253, 186, 116, 0.14)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(251, 146, 60, 0.16);
    --theme-brand-kicker: #fed7aa;
    --alysum-purple: #ea580c;
    --alysum-purple-dark: #9a3412;
    --accent: #c2410c;
    --accent-hover: #9a3412;
    --accent-soft: #fb923c;
    --accent-muted: rgba(234, 88, 12, 0.22);
    --btn-primary-bg: #ea580c;
    --btn-primary-bg-hover: #c2410c;
    --link: #fb923c;
    --nb-top-gradient: linear-gradient(135deg, #9a3412, #ea580c 50%, #fdba74);
    --nb-float-bg: linear-gradient(145deg, #431407 0%, #1c1917 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(234, 88, 12, 0.45), rgba(253, 186, 116, 0.18));
    --vp-r1: rgba(251, 146, 60, 0.22);
    --vp-r2: rgba(253, 186, 116, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(154, 52, 18, 0.7), rgba(234, 88, 12, 0.4), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #9a3412;
    --login-page-bg: linear-gradient(135deg, #9a3412, #ea580c, #fdba74);
    --ne-header-1: #9a3412;
    --ne-header-2: #c2410c;
    --ne-header-3: #ea580c;
    --ne-header-4: #fdba74;
    --ne-body-spot: rgba(251, 146, 60, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(234, 88, 12, 0.4), rgba(253, 186, 116, 0.22));
    --theme-prompt-entry-border: rgba(253, 186, 116, 0.4);
    --theme-prompt-entry-ring: rgba(234, 88, 12, 0.3);
}

/* ——— Plum (deep berry) ——— */
html[data-gradient-theme="plum"] {
    --purple: #9333ea;
    --purple-dark: #581c87;
    --purple-bright: #c084fc;
    --pink: #e879f9;
    --gold: #f3e8ff;
    --theme-body-spot: rgba(147, 51, 234, 0.22);
    --theme-body-spot-strong: rgba(192, 132, 252, 0.26);
    --theme-header-mid: #7e22ce;
    --theme-header-end: #e879f9;
    --theme-card-a: rgba(147, 51, 234, 0.34);
    --theme-card-b: rgba(232, 121, 249, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(88, 28, 135, 0.4), rgba(147, 51, 234, 0.22)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(147, 51, 234, 0.18);
    --theme-brand-kicker: #e9d5ff;
    --alysum-purple: #9333ea;
    --alysum-purple-dark: #581c87;
    --accent: #7e22ce;
    --accent-hover: #6b21a8;
    --accent-soft: #c084fc;
    --accent-muted: rgba(147, 51, 234, 0.22);
    --btn-primary-bg: #7e22ce;
    --btn-primary-bg-hover: #6b21a8;
    --link: #c084fc;
    --nb-top-gradient: linear-gradient(135deg, #581c87, #7e22ce 45%, #e879f9);
    --nb-float-bg: linear-gradient(145deg, #3b0764 0%, #1e1033 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(147, 51, 234, 0.45), rgba(232, 121, 249, 0.16));
    --vp-r1: rgba(192, 132, 252, 0.22);
    --vp-r2: rgba(232, 121, 249, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(88, 28, 135, 0.72), rgba(126, 34, 206, 0.45), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #581c87;
    --login-page-bg: linear-gradient(135deg, #581c87, #9333ea, #e879f9);
    --ne-header-1: #581c87;
    --ne-header-2: #7e22ce;
    --ne-header-3: #a855f7;
    --ne-header-4: #e879f9;
    --ne-body-spot: rgba(192, 132, 252, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(88, 28, 135, 0.55), rgba(147, 51, 234, 0.32), rgba(232, 121, 249, 0.18));
    --theme-prompt-entry-border: rgba(232, 121, 249, 0.38);
    --theme-prompt-entry-ring: rgba(147, 51, 234, 0.32);
}

/* ——— Copper (rust & bronze) ——— */
html[data-gradient-theme="copper"] {
    --purple: #b45309;
    --purple-dark: #78350f;
    --purple-bright: #f59e0b;
    --pink: #fbbf24;
    --gold: #fef3c7;
    --theme-body-spot: rgba(180, 83, 9, 0.22);
    --theme-body-spot-strong: rgba(245, 158, 11, 0.24);
    --theme-header-mid: #92400e;
    --theme-header-end: #fbbf24;
    --theme-card-a: rgba(180, 83, 9, 0.32);
    --theme-card-b: rgba(251, 191, 36, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(120, 53, 15, 0.4), rgba(245, 158, 11, 0.16)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(180, 83, 9, 0.18);
    --theme-brand-kicker: #fde68a;
    --alysum-purple: #b45309;
    --alysum-purple-dark: #78350f;
    --accent: #92400e;
    --accent-hover: #78350f;
    --accent-soft: #f59e0b;
    --accent-muted: rgba(180, 83, 9, 0.22);
    --btn-primary-bg: #b45309;
    --btn-primary-bg-hover: #92400e;
    --link: #f59e0b;
    --nb-top-gradient: linear-gradient(135deg, #78350f, #b45309 48%, #fbbf24);
    --nb-float-bg: linear-gradient(145deg, #451a03 0%, #1c1917 48%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(180, 83, 9, 0.45), rgba(251, 191, 36, 0.18));
    --vp-r1: rgba(245, 158, 11, 0.22);
    --vp-r2: rgba(251, 191, 36, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(120, 53, 15, 0.72), rgba(180, 83, 9, 0.42), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #78350f;
    --login-page-bg: linear-gradient(135deg, #78350f, #b45309, #fbbf24);
    --ne-header-1: #78350f;
    --ne-header-2: #92400e;
    --ne-header-3: #d97706;
    --ne-header-4: #fbbf24;
    --ne-body-spot: rgba(245, 158, 11, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(120, 53, 15, 0.55), rgba(180, 83, 9, 0.35), rgba(251, 191, 36, 0.2));
    --theme-prompt-entry-border: rgba(251, 191, 36, 0.4);
    --theme-prompt-entry-ring: rgba(180, 83, 9, 0.32);
}

/* ——— Sakura (cherry blossom) ——— */
html[data-gradient-theme="sakura"] {
    --purple: #ec4899;
    --purple-dark: #9d174d;
    --purple-bright: #f9a8d4;
    --pink: #fda4af;
    --gold: #fff1f2;
    --theme-body-spot: rgba(236, 72, 153, 0.2);
    --theme-body-spot-strong: rgba(249, 168, 212, 0.26);
    --theme-header-mid: #db2777;
    --theme-header-end: #fda4af;
    --theme-card-a: rgba(236, 72, 153, 0.3);
    --theme-card-b: rgba(253, 164, 175, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(157, 23, 77, 0.35), rgba(249, 168, 212, 0.16)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(236, 72, 153, 0.16);
    --theme-brand-kicker: #fce7f3;
    --alysum-purple: #ec4899;
    --alysum-purple-dark: #9d174d;
    --accent: #db2777;
    --accent-hover: #be185d;
    --accent-soft: #f9a8d4;
    --accent-muted: rgba(236, 72, 153, 0.22);
    --btn-primary-bg: #db2777;
    --btn-primary-bg-hover: #be185d;
    --link: #f9a8d4;
    --nb-top-gradient: linear-gradient(135deg, #9d174d, #ec4899 50%, #fda4af);
    --nb-float-bg: linear-gradient(145deg, #500724 0%, #1f0a14 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(236, 72, 153, 0.42), rgba(253, 164, 175, 0.18));
    --vp-r1: rgba(249, 168, 212, 0.22);
    --vp-r2: rgba(253, 164, 175, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(157, 23, 77, 0.68), rgba(219, 39, 119, 0.42), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #9d174d;
    --login-page-bg: linear-gradient(135deg, #9d174d, #ec4899, #fda4af);
    --ne-header-1: #9d174d;
    --ne-header-2: #db2777;
    --ne-header-3: #ec4899;
    --ne-header-4: #fda4af;
    --ne-body-spot: rgba(249, 168, 212, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(157, 23, 77, 0.5), rgba(236, 72, 153, 0.32), rgba(253, 164, 175, 0.2));
    --theme-prompt-entry-border: rgba(253, 164, 175, 0.4);
    --theme-prompt-entry-ring: rgba(236, 72, 153, 0.3);
}

/* ——— Cosmic (indigo nebula) ——— */
html[data-gradient-theme="cosmic"] {
    --purple: #6366f1;
    --purple-dark: #312e81;
    --purple-bright: #818cf8;
    --pink: #c084fc;
    --gold: #e0e7ff;
    --theme-body-spot: rgba(99, 102, 241, 0.22);
    --theme-body-spot-strong: rgba(129, 140, 248, 0.26);
    --theme-header-mid: #4f46e5;
    --theme-header-end: #c084fc;
    --theme-card-a: rgba(99, 102, 241, 0.34);
    --theme-card-b: rgba(192, 132, 252, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(49, 46, 129, 0.45), rgba(129, 140, 248, 0.18)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(99, 102, 241, 0.18);
    --theme-brand-kicker: #c7d2fe;
    --alysum-purple: #6366f1;
    --alysum-purple-dark: #312e81;
    --accent: #4f46e5;
    --accent-hover: #4338ca;
    --accent-soft: #818cf8;
    --accent-muted: rgba(99, 102, 241, 0.22);
    --btn-primary-bg: #4f46e5;
    --btn-primary-bg-hover: #4338ca;
    --link: #818cf8;
    --nb-top-gradient: linear-gradient(135deg, #312e81, #4f46e5 45%, #c084fc);
    --nb-float-bg: linear-gradient(145deg, #1e1b4b 0%, #0f172a 42%, #020617 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(99, 102, 241, 0.45), rgba(192, 132, 252, 0.16));
    --vp-r1: rgba(129, 140, 248, 0.22);
    --vp-r2: rgba(192, 132, 252, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(49, 46, 129, 0.72), rgba(79, 70, 229, 0.45), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #312e81;
    --login-page-bg: linear-gradient(135deg, #312e81, #6366f1, #c084fc);
    --ne-header-1: #312e81;
    --ne-header-2: #4f46e5;
    --ne-header-3: #6366f1;
    --ne-header-4: #c084fc;
    --ne-body-spot: rgba(129, 140, 248, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(49, 46, 129, 0.55), rgba(99, 102, 241, 0.35), rgba(192, 132, 252, 0.18));
    --theme-prompt-entry-border: rgba(192, 132, 252, 0.38);
    --theme-prompt-entry-ring: rgba(99, 102, 241, 0.32);
}

/* ——— Citrus (lime & lemon) ——— */
html[data-gradient-theme="citrus"] {
    --purple: #65a30d;
    --purple-dark: #365314;
    --purple-bright: #a3e635;
    --pink: #facc15;
    --gold: #fef9c3;
    --theme-body-spot: rgba(101, 163, 13, 0.22);
    --theme-body-spot-strong: rgba(163, 230, 53, 0.24);
    --theme-header-mid: #4d7c0f;
    --theme-header-end: #facc15;
    --theme-card-a: rgba(101, 163, 13, 0.3);
    --theme-card-b: rgba(250, 204, 21, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(54, 83, 20, 0.4), rgba(163, 230, 53, 0.14)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(101, 163, 13, 0.18);
    --theme-brand-kicker: #ecfccb;
    --alysum-purple: #65a30d;
    --alysum-purple-dark: #365314;
    --accent: #4d7c0f;
    --accent-hover: #3f6212;
    --accent-soft: #a3e635;
    --accent-muted: rgba(101, 163, 13, 0.22);
    --btn-primary-bg: #65a30d;
    --btn-primary-bg-hover: #4d7c0f;
    --link: #a3e635;
    --nb-top-gradient: linear-gradient(135deg, #365314, #65a30d 48%, #facc15);
    --nb-float-bg: linear-gradient(145deg, #1a2e05 0%, #14532d 35%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(101, 163, 13, 0.45), rgba(250, 204, 21, 0.18));
    --vp-r1: rgba(163, 230, 53, 0.22);
    --vp-r2: rgba(250, 204, 21, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(54, 83, 20, 0.72), rgba(101, 163, 13, 0.42), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #365314;
    --login-page-bg: linear-gradient(135deg, #365314, #65a30d, #facc15);
    --ne-header-1: #365314;
    --ne-header-2: #4d7c0f;
    --ne-header-3: #84cc16;
    --ne-header-4: #facc15;
    --ne-body-spot: rgba(163, 230, 53, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(54, 83, 20, 0.55), rgba(101, 163, 13, 0.35), rgba(250, 204, 21, 0.2));
    --theme-prompt-entry-border: rgba(250, 204, 21, 0.42);
    --theme-prompt-entry-ring: rgba(101, 163, 13, 0.3);
}

/* ——— Blood moon (dark crimson) ——— */
html[data-gradient-theme="bloodmoon"] {
    --purple: #b91c1c;
    --purple-dark: #450a0a;
    --purple-bright: #ef4444;
    --pink: #f87171;
    --gold: #fecaca;
    --theme-body-spot: rgba(185, 28, 28, 0.22);
    --theme-body-spot-strong: rgba(239, 68, 68, 0.26);
    --theme-header-mid: #991b1b;
    --theme-header-end: #f87171;
    --theme-card-a: rgba(185, 28, 28, 0.34);
    --theme-card-b: rgba(248, 113, 113, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(69, 10, 10, 0.55), rgba(185, 28, 28, 0.22)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(185, 28, 28, 0.18);
    --theme-brand-kicker: #fecaca;
    --alysum-purple: #b91c1c;
    --alysum-purple-dark: #450a0a;
    --accent: #991b1b;
    --accent-hover: #7f1d1d;
    --accent-soft: #ef4444;
    --accent-muted: rgba(185, 28, 28, 0.22);
    --btn-primary-bg: #b91c1c;
    --btn-primary-bg-hover: #991b1b;
    --link: #f87171;
    --nb-top-gradient: linear-gradient(135deg, #450a0a, #991b1b 50%, #ef4444);
    --nb-float-bg: linear-gradient(145deg, #2a0a0a 0%, #1a0505 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(185, 28, 28, 0.48), rgba(248, 113, 113, 0.16));
    --vp-r1: rgba(239, 68, 68, 0.22);
    --vp-r2: rgba(248, 113, 113, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(69, 10, 10, 0.78), rgba(153, 27, 27, 0.48), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #450a0a;
    --login-page-bg: linear-gradient(135deg, #450a0a, #b91c1c, #f87171);
    --ne-header-1: #450a0a;
    --ne-header-2: #7f1d1d;
    --ne-header-3: #b91c1c;
    --ne-header-4: #f87171;
    --ne-body-spot: rgba(239, 68, 68, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(69, 10, 10, 0.6), rgba(185, 28, 28, 0.38), rgba(248, 113, 113, 0.18));
    --theme-prompt-entry-border: rgba(248, 113, 113, 0.38);
    --theme-prompt-entry-ring: rgba(185, 28, 28, 0.32);
}

/* ——— Mocha (coffee & caramel) ——— */
html[data-gradient-theme="mocha"] {
    --purple: #a16207;
    --purple-dark: #422006;
    --purple-bright: #d97706;
    --pink: #fbbf24;
    --gold: #fef3c7;
    --theme-body-spot: rgba(161, 98, 7, 0.2);
    --theme-body-spot-strong: rgba(217, 119, 6, 0.24);
    --theme-header-mid: #854d0e;
    --theme-header-end: #fbbf24;
    --theme-card-a: rgba(161, 98, 7, 0.3);
    --theme-card-b: rgba(251, 191, 36, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(66, 32, 6, 0.5), rgba(161, 98, 7, 0.2)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(161, 98, 7, 0.16);
    --theme-brand-kicker: #fde68a;
    --alysum-purple: #a16207;
    --alysum-purple-dark: #422006;
    --accent: #854d0e;
    --accent-hover: #713f12;
    --accent-soft: #d97706;
    --accent-muted: rgba(161, 98, 7, 0.22);
    --btn-primary-bg: #a16207;
    --btn-primary-bg-hover: #854d0e;
    --link: #fbbf24;
    --nb-top-gradient: linear-gradient(135deg, #422006, #854d0e 48%, #fbbf24);
    --nb-float-bg: linear-gradient(145deg, #292524 0%, #1c1917 48%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(161, 98, 7, 0.45), rgba(251, 191, 36, 0.16));
    --vp-r1: rgba(217, 119, 6, 0.22);
    --vp-r2: rgba(251, 191, 36, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(66, 32, 6, 0.75), rgba(133, 77, 14, 0.45), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #422006;
    --login-page-bg: linear-gradient(135deg, #422006, #a16207, #fbbf24);
    --ne-header-1: #422006;
    --ne-header-2: #713f12;
    --ne-header-3: #a16207;
    --ne-header-4: #fbbf24;
    --ne-body-spot: rgba(217, 119, 6, 0.22);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(66, 32, 6, 0.58), rgba(161, 98, 7, 0.35), rgba(251, 191, 36, 0.18));
    --theme-prompt-entry-border: rgba(251, 191, 36, 0.38);
    --theme-prompt-entry-ring: rgba(161, 98, 7, 0.3);
}

/* ——— Prism (rainbow sweep) ——— */
html[data-gradient-theme="prism"] {
    --purple: #8b5cf6;
    --purple-dark: #4c1d95;
    --purple-bright: #22d3ee;
    --pink: #f472b6;
    --gold: #fde68a;
    --theme-body-spot: rgba(139, 92, 246, 0.2);
    --theme-body-spot-strong: rgba(34, 211, 238, 0.18);
    --theme-header-mid: #ec4899;
    --theme-header-end: #22d3ee;
    --theme-card-a: rgba(236, 72, 153, 0.28);
    --theme-card-b: rgba(34, 211, 238, 0.16);
    --theme-hero-bg: linear-gradient(135deg, rgba(76, 29, 149, 0.35), rgba(236, 72, 153, 0.18), rgba(34, 211, 238, 0.12)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(139, 92, 246, 0.16);
    --theme-brand-kicker: #e9d5ff;
    --alysum-purple: #8b5cf6;
    --alysum-purple-dark: #4c1d95;
    --accent: #7c3aed;
    --accent-hover: #6d28d9;
    --accent-soft: #22d3ee;
    --accent-muted: rgba(139, 92, 246, 0.22);
    --btn-primary-bg: #7c3aed;
    --btn-primary-bg-hover: #6d28d9;
    --link: #22d3ee;
    --nb-top-gradient: linear-gradient(90deg, #ef4444, #f97316, #eab308, #22c55e, #06b6d4, #3b82f6, #a855f7, #ec4899);
    --nb-float-bg: linear-gradient(145deg, #1e1b4b 0%, #0f172a 50%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(236, 72, 153, 0.4), rgba(34, 211, 238, 0.2));
    --vp-r1: rgba(139, 92, 246, 0.22);
    --vp-r2: rgba(34, 211, 238, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(76, 29, 149, 0.65), rgba(124, 58, 237, 0.35), rgba(6, 182, 212, 0.25), rgba(15, 23, 42, 0.7));
    --vp-primary-fg: #4c1d95;
    --login-page-bg: linear-gradient(135deg, #4c1d95, #ec4899, #06b6d4, #22c55e);
    --ne-header-1: #4c1d95;
    --ne-header-2: #ec4899;
    --ne-header-3: #06b6d4;
    --ne-header-4: #eab308;
    --ne-body-spot: rgba(139, 92, 246, 0.22);
    --theme-prompt-topbar: linear-gradient(90deg, rgba(239, 68, 68, 0.35), rgba(234, 179, 8, 0.3), rgba(34, 211, 238, 0.28), rgba(168, 85, 247, 0.32));
    --theme-prompt-entry-border: rgba(34, 211, 238, 0.38);
    --theme-prompt-entry-ring: rgba(236, 72, 153, 0.3);
}

/* ——— Twilight ——— */
html[data-gradient-theme="twilight"] {
    --purple: #7c3aed;
    --purple-dark: #1e1b4b;
    --purple-bright: #ec4899;
    --pink: #fda4af;
    --gold: #fce7f3;
    --theme-body-spot: rgba(124, 58, 237, 0.22);
    --theme-body-spot-strong: rgba(236, 72, 153, 0.24);
    --theme-header-mid: #a21caf;
    --theme-header-end: #fda4af;
    --theme-card-a: rgba(124, 58, 237, 0.32);
    --theme-card-b: rgba(236, 72, 153, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(30, 27, 75, 0.55), rgba(124, 58, 237, 0.22), rgba(236, 72, 153, 0.14)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(236, 72, 153, 0.16);
    --theme-brand-kicker: #fbcfe8;
    --alysum-purple: #7c3aed;
    --alysum-purple-dark: #1e1b4b;
    --accent: #a21caf;
    --accent-hover: #86198f;
    --accent-soft: #ec4899;
    --accent-muted: rgba(124, 58, 237, 0.22);
    --btn-primary-bg: #7c3aed;
    --btn-primary-bg-hover: #6d28d9;
    --link: #f472b6;
    --nb-top-gradient: linear-gradient(135deg, #1e1b4b, #7c3aed 40%, #ec4899 75%, #fda4af);
    --nb-float-bg: linear-gradient(145deg, #1e1b4b 0%, #3b0764 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(124, 58, 237, 0.45), rgba(236, 72, 153, 0.2));
    --vp-r1: rgba(236, 72, 153, 0.22);
    --vp-r2: rgba(253, 164, 175, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(30, 27, 75, 0.75), rgba(124, 58, 237, 0.45), rgba(219, 39, 119, 0.35), rgba(15, 23, 42, 0.7));
    --vp-primary-fg: #1e1b4b;
    --login-page-bg: linear-gradient(135deg, #1e1b4b, #7c3aed, #ec4899, #fda4af);
    --ne-header-1: #1e1b4b;
    --ne-header-2: #7c3aed;
    --ne-header-3: #db2777;
    --ne-header-4: #fda4af;
    --ne-body-spot: rgba(236, 72, 153, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(30, 27, 75, 0.6), rgba(124, 58, 237, 0.35), rgba(236, 72, 153, 0.25));
    --theme-prompt-entry-border: rgba(253, 164, 175, 0.4);
    --theme-prompt-entry-ring: rgba(124, 58, 237, 0.32);
}

/* ——— Lagoon ——— */
html[data-gradient-theme="lagoon"] {
    --purple: #0d9488;
    --purple-dark: #042f2e;
    --purple-bright: #5eead4;
    --pink: #67e8f9;
    --gold: #ccfbf1;
    --theme-body-spot: rgba(13, 148, 136, 0.22);
    --theme-body-spot-strong: rgba(94, 234, 212, 0.26);
    --theme-header-mid: #0f766e;
    --theme-header-end: #5eead4;
    --theme-card-a: rgba(13, 148, 136, 0.32);
    --theme-card-b: rgba(103, 232, 249, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(4, 47, 46, 0.55), rgba(13, 148, 136, 0.22)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(94, 234, 212, 0.14);
    --theme-brand-kicker: #99f6e4;
    --alysum-purple: #0d9488;
    --alysum-purple-dark: #042f2e;
    --accent: #0f766e;
    --accent-hover: #115e59;
    --accent-soft: #5eead4;
    --accent-muted: rgba(13, 148, 136, 0.22);
    --btn-primary-bg: #0d9488;
    --btn-primary-bg-hover: #0f766e;
    --link: #5eead4;
    --nb-top-gradient: linear-gradient(135deg, #042f2e, #0d9488 50%, #5eead4);
    --nb-float-bg: linear-gradient(145deg, #042f2e 0%, #0c1324 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(13, 148, 136, 0.45), rgba(94, 234, 212, 0.18));
    --vp-r1: rgba(94, 234, 212, 0.22);
    --vp-r2: rgba(103, 232, 249, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(4, 47, 46, 0.75), rgba(15, 118, 110, 0.45), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #042f2e;
    --login-page-bg: linear-gradient(135deg, #042f2e, #0d9488, #5eead4);
    --ne-header-1: #042f2e;
    --ne-header-2: #0f766e;
    --ne-header-3: #14b8a6;
    --ne-header-4: #5eead4;
    --ne-body-spot: rgba(94, 234, 212, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(4, 47, 46, 0.55), rgba(13, 148, 136, 0.35), rgba(94, 234, 212, 0.2));
    --theme-prompt-entry-border: rgba(94, 234, 212, 0.38);
    --theme-prompt-entry-ring: rgba(13, 148, 136, 0.3);
}

/* ——— Galaxy ——— */
html[data-gradient-theme="galaxy"] {
    --purple: #6366f1;
    --purple-dark: #0f172a;
    --purple-bright: #a78bfa;
    --pink: #c084fc;
    --gold: #e0e7ff;
    --theme-body-spot: rgba(99, 102, 241, 0.24);
    --theme-body-spot-strong: rgba(167, 139, 250, 0.22);
    --theme-header-mid: #4f46e5;
    --theme-header-end: #c084fc;
    --theme-card-a: rgba(99, 102, 241, 0.35);
    --theme-card-b: rgba(192, 132, 252, 0.18);
    --theme-hero-bg: radial-gradient(ellipse at 70% 20%, rgba(129, 140, 248, 0.25), transparent 55%), linear-gradient(135deg, rgba(15, 23, 42, 0.9), rgba(76, 29, 149, 0.35)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(99, 102, 241, 0.18);
    --theme-brand-kicker: #c7d2fe;
    --alysum-purple: #6366f1;
    --alysum-purple-dark: #0f172a;
    --accent: #4f46e5;
    --accent-hover: #4338ca;
    --accent-soft: #a78bfa;
    --accent-muted: rgba(99, 102, 241, 0.22);
    --btn-primary-bg: #4f46e5;
    --btn-primary-bg-hover: #4338ca;
    --link: #a78bfa;
    --nb-top-gradient: linear-gradient(135deg, #0f172a, #4c1d95 40%, #6366f1 70%, #c084fc);
    --nb-float-bg: radial-gradient(ellipse at 80% 0%, rgba(129, 140, 248, 0.2), transparent 50%), linear-gradient(145deg, #0f172a 0%, #1e1b4b 50%, #020617 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(99, 102, 241, 0.45), rgba(192, 132, 252, 0.18));
    --vp-r1: rgba(129, 140, 248, 0.24);
    --vp-r2: rgba(192, 132, 252, 0.14);
    --vp-hero-bg: radial-gradient(ellipse at 60% 30%, rgba(129, 140, 248, 0.35), transparent 50%), linear-gradient(135deg, rgba(15, 23, 42, 0.85), rgba(76, 29, 149, 0.5), rgba(15, 23, 42, 0.75));
    --vp-primary-fg: #0f172a;
    --login-page-bg: linear-gradient(135deg, #020617, #4c1d95, #6366f1, #c084fc);
    --ne-header-1: #0f172a;
    --ne-header-2: #4c1d95;
    --ne-header-3: #6366f1;
    --ne-header-4: #c084fc;
    --ne-body-spot: rgba(129, 140, 248, 0.26);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(15, 23, 42, 0.7), rgba(76, 29, 149, 0.4), rgba(129, 140, 248, 0.25));
    --theme-prompt-entry-border: rgba(192, 132, 252, 0.38);
    --theme-prompt-entry-ring: rgba(99, 102, 241, 0.32);
}

/* ——— Cotton candy ——— */
html[data-gradient-theme="cotton"] {
    --purple: #f472b6;
    --purple-dark: #831843;
    --purple-bright: #93c5fd;
    --pink: #e879f9;
    --gold: #fce7f3;
    --theme-body-spot: rgba(244, 114, 182, 0.2);
    --theme-body-spot-strong: rgba(147, 197, 253, 0.22);
    --theme-header-mid: #ec4899;
    --theme-header-end: #93c5fd;
    --theme-card-a: rgba(244, 114, 182, 0.28);
    --theme-card-b: rgba(147, 197, 253, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(249, 168, 212, 0.2), rgba(147, 197, 253, 0.16)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(244, 114, 182, 0.14);
    --theme-brand-kicker: #fbcfe8;
    --alysum-purple: #f472b6;
    --alysum-purple-dark: #831843;
    --accent: #ec4899;
    --accent-hover: #db2777;
    --accent-soft: #93c5fd;
    --accent-muted: rgba(244, 114, 182, 0.22);
    --btn-primary-bg: #ec4899;
    --btn-primary-bg-hover: #db2777;
    --link: #93c5fd;
    --nb-top-gradient: linear-gradient(135deg, #f9a8d4, #e879f9 45%, #93c5fd 100%);
    --nb-float-bg: linear-gradient(145deg, #500724 0%, #1e3a5f 55%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(244, 114, 182, 0.42), rgba(147, 197, 253, 0.22));
    --vp-r1: rgba(244, 114, 182, 0.22);
    --vp-r2: rgba(147, 197, 253, 0.16);
    --vp-hero-bg: linear-gradient(135deg, rgba(131, 24, 67, 0.55), rgba(236, 72, 153, 0.35), rgba(59, 130, 246, 0.3), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #831843;
    --login-page-bg: linear-gradient(135deg, #f9a8d4, #e879f9, #93c5fd);
    --ne-header-1: #831843;
    --ne-header-2: #ec4899;
    --ne-header-3: #e879f9;
    --ne-header-4: #93c5fd;
    --ne-body-spot: rgba(244, 114, 182, 0.22);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(249, 168, 212, 0.45), rgba(232, 121, 249, 0.3), rgba(147, 197, 253, 0.28));
    --theme-prompt-entry-border: rgba(147, 197, 253, 0.4);
    --theme-prompt-entry-ring: rgba(244, 114, 182, 0.3);
}

/* ——— Honey ——— */
html[data-gradient-theme="honey"] {
    --purple: #d97706;
    --purple-dark: #713f12;
    --purple-bright: #fbbf24;
    --pink: #fde68a;
    --gold: #fffbeb;
    --theme-body-spot: rgba(217, 119, 6, 0.22);
    --theme-body-spot-strong: rgba(251, 191, 36, 0.26);
    --theme-header-mid: #b45309;
    --theme-header-end: #fde68a;
    --theme-card-a: rgba(217, 119, 6, 0.3);
    --theme-card-b: rgba(253, 230, 138, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(113, 63, 18, 0.45), rgba(251, 191, 36, 0.18)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(251, 191, 36, 0.14);
    --theme-brand-kicker: #fef3c7;
    --alysum-purple: #d97706;
    --alysum-purple-dark: #713f12;
    --accent: #b45309;
    --accent-hover: #92400e;
    --accent-soft: #fbbf24;
    --accent-muted: rgba(217, 119, 6, 0.22);
    --btn-primary-bg: #d97706;
    --btn-primary-bg-hover: #b45309;
    --link: #fbbf24;
    --nb-top-gradient: linear-gradient(135deg, #713f12, #d97706 50%, #fde68a);
    --nb-float-bg: linear-gradient(145deg, #451a03 0%, #292524 50%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(217, 119, 6, 0.45), rgba(253, 230, 138, 0.2));
    --vp-r1: rgba(251, 191, 36, 0.22);
    --vp-r2: rgba(253, 230, 138, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(113, 63, 18, 0.72), rgba(217, 119, 6, 0.42), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #713f12;
    --login-page-bg: linear-gradient(135deg, #713f12, #fbbf24, #fffbeb);
    --ne-header-1: #713f12;
    --ne-header-2: #b45309;
    --ne-header-3: #f59e0b;
    --ne-header-4: #fde68a;
    --ne-body-spot: rgba(251, 191, 36, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(113, 63, 18, 0.55), rgba(217, 119, 6, 0.35), rgba(253, 230, 138, 0.22));
    --theme-prompt-entry-border: rgba(253, 230, 138, 0.42);
    --theme-prompt-entry-ring: rgba(217, 119, 6, 0.3);
}

/* ——— Tide pool ——— */
html[data-gradient-theme="tide"] {
    --purple: #0891b2;
    --purple-dark: #164e63;
    --purple-bright: #67e8f9;
    --pink: #5eead4;
    --gold: #cffafe;
    --theme-body-spot: rgba(8, 145, 178, 0.22);
    --theme-body-spot-strong: rgba(103, 232, 249, 0.24);
    --theme-header-mid: #0e7490;
    --theme-header-end: #67e8f9;
    --theme-card-a: rgba(8, 145, 178, 0.32);
    --theme-card-b: rgba(94, 234, 212, 0.18);
    --theme-hero-bg: linear-gradient(160deg, rgba(22, 78, 99, 0.5), rgba(20, 184, 166, 0.2)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(103, 232, 249, 0.14);
    --theme-brand-kicker: #a5f3fc;
    --alysum-purple: #0891b2;
    --alysum-purple-dark: #164e63;
    --accent: #0e7490;
    --accent-hover: #155e75;
    --accent-soft: #67e8f9;
    --accent-muted: rgba(8, 145, 178, 0.22);
    --btn-primary-bg: #0891b2;
    --btn-primary-bg-hover: #0e7490;
    --link: #67e8f9;
    --nb-top-gradient: linear-gradient(160deg, #164e63, #0891b2 45%, #67e8f9);
    --nb-float-bg: linear-gradient(145deg, #164e63 0%, #134e4a 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(8, 145, 178, 0.45), rgba(94, 234, 212, 0.18));
    --vp-r1: rgba(103, 232, 249, 0.22);
    --vp-r2: rgba(94, 234, 212, 0.14);
    --vp-hero-bg: linear-gradient(160deg, rgba(22, 78, 99, 0.75), rgba(8, 145, 178, 0.42), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #164e63;
    --login-page-bg: linear-gradient(160deg, #164e63, #0891b2, #67e8f9);
    --ne-header-1: #164e63;
    --ne-header-2: #0e7490;
    --ne-header-3: #14b8a6;
    --ne-header-4: #67e8f9;
    --ne-body-spot: rgba(103, 232, 249, 0.24);
    --theme-prompt-topbar: linear-gradient(160deg, rgba(22, 78, 99, 0.55), rgba(8, 145, 178, 0.35), rgba(103, 232, 249, 0.22));
    --theme-prompt-entry-border: rgba(103, 232, 249, 0.38);
    --theme-prompt-entry-ring: rgba(8, 145, 178, 0.3);
}

/* ——— Volcano ——— */
html[data-gradient-theme="volcano"] {
    --purple: #ea580c;
    --purple-dark: #1c1917;
    --purple-bright: #fbbf24;
    --pink: #ef4444;
    --gold: #fef3c7;
    --theme-body-spot: rgba(234, 88, 12, 0.22);
    --theme-body-spot-strong: rgba(239, 68, 68, 0.26);
    --theme-header-mid: #dc2626;
    --theme-header-end: #fbbf24;
    --theme-card-a: rgba(239, 68, 68, 0.32);
    --theme-card-b: rgba(251, 191, 36, 0.2);
    --theme-hero-bg: radial-gradient(ellipse at 50% 100%, rgba(251, 191, 36, 0.2), transparent 45%), linear-gradient(135deg, rgba(28, 25, 23, 0.8), rgba(185, 28, 28, 0.25)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(234, 88, 12, 0.16);
    --theme-brand-kicker: #fde68a;
    --alysum-purple: #ea580c;
    --alysum-purple-dark: #1c1917;
    --accent: #dc2626;
    --accent-hover: #b91c1c;
    --accent-soft: #fbbf24;
    --accent-muted: rgba(239, 68, 68, 0.22);
    --btn-primary-bg: #ea580c;
    --btn-primary-bg-hover: #c2410c;
    --link: #fbbf24;
    --nb-top-gradient: linear-gradient(180deg, #1c1917 0%, #b91c1c 35%, #ea580c 60%, #fbbf24 100%);
    --nb-float-bg: linear-gradient(145deg, #1c1917 0%, #450a0a 50%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(239, 68, 68, 0.48), rgba(251, 191, 36, 0.22));
    --vp-r1: rgba(239, 68, 68, 0.24);
    --vp-r2: rgba(251, 191, 36, 0.16);
    --vp-hero-bg: radial-gradient(ellipse at 50% 80%, rgba(251, 191, 36, 0.35), transparent 40%), linear-gradient(135deg, rgba(28, 25, 23, 0.85), rgba(185, 28, 28, 0.5), rgba(15, 23, 42, 0.7));
    --vp-primary-fg: #1c1917;
    --login-page-bg: linear-gradient(180deg, #1c1917, #b91c1c, #ea580c, #fbbf24);
    --ne-header-1: #1c1917;
    --ne-header-2: #991b1b;
    --ne-header-3: #ea580c;
    --ne-header-4: #fbbf24;
    --ne-body-spot: rgba(239, 68, 68, 0.26);
    --theme-prompt-topbar: linear-gradient(180deg, rgba(28, 25, 23, 0.65), rgba(185, 28, 28, 0.4), rgba(251, 191, 36, 0.22));
    --theme-prompt-entry-border: rgba(251, 191, 36, 0.4);
    --theme-prompt-entry-ring: rgba(239, 68, 68, 0.32);
}

/* ——— Opal ——— */
html[data-gradient-theme="opal"] {
    --purple: #a78bfa;
    --purple-dark: #475569;
    --purple-bright: #99f6e4;
    --pink: #fbcfe8;
    --gold: #fef08a;
    --theme-body-spot: rgba(167, 139, 250, 0.2);
    --theme-body-spot-strong: rgba(153, 246, 228, 0.18);
    --theme-header-mid: #c084fc;
    --theme-header-end: #99f6e4;
    --theme-card-a: rgba(167, 139, 250, 0.28);
    --theme-card-b: rgba(251, 207, 232, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(165, 243, 252, 0.15), rgba(196, 181, 253, 0.2), rgba(254, 240, 138, 0.1)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(167, 139, 250, 0.14);
    --theme-brand-kicker: #e9d5ff;
    --alysum-purple: #a78bfa;
    --alysum-purple-dark: #475569;
    --accent: #8b5cf6;
    --accent-hover: #7c3aed;
    --accent-soft: #99f6e4;
    --accent-muted: rgba(167, 139, 250, 0.2);
    --btn-primary-bg: #8b5cf6;
    --btn-primary-bg-hover: #7c3aed;
    --link: #99f6e4;
    --nb-top-gradient: linear-gradient(135deg, #a5f3fc, #c4b5fd, #fbcfe8, #fef08a, #99f6e4);
    --nb-float-bg: linear-gradient(145deg, #334155 0%, #1e1b4b 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(167, 139, 250, 0.4), rgba(153, 246, 228, 0.2));
    --vp-r1: rgba(196, 181, 253, 0.22);
    --vp-r2: rgba(153, 246, 228, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(71, 85, 105, 0.55), rgba(139, 92, 246, 0.35), rgba(153, 246, 228, 0.25), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #475569;
    --login-page-bg: linear-gradient(135deg, #a5f3fc, #c4b5fd, #fbcfe8, #99f6e4);
    --ne-header-1: #475569;
    --ne-header-2: #8b5cf6;
    --ne-header-3: #f0abfc;
    --ne-header-4: #99f6e4;
    --ne-body-spot: rgba(167, 139, 250, 0.22);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(165, 243, 252, 0.35), rgba(196, 181, 253, 0.3), rgba(251, 207, 232, 0.25), rgba(254, 240, 138, 0.2));
    --theme-prompt-entry-border: rgba(153, 246, 228, 0.38);
    --theme-prompt-entry-ring: rgba(167, 139, 250, 0.28);
}

/* ——— Profile banner (purple → blue → teal welcome bar) ——— */
html[data-gradient-theme="profilewave"] {
    --purple: #0084b4;
    --purple-dark: #4b3298;
    --purple-bright: #00a6b2;
    --pink: #00c6c1;
    --gold: #a5f3fc;
    --theme-body-spot: rgba(75, 50, 152, 0.22);
    --theme-body-spot-strong: rgba(0, 166, 178, 0.2);
    --theme-header-mid: #2d5daa;
    --theme-header-end: #00c6c1;
    --theme-welcome-bar: linear-gradient(90deg, #4b3298 0%, #2d5daa 25%, #0084b4 50%, #00a6b2 75%, #00c6c1 100%);
    --theme-card-a: rgba(45, 93, 170, 0.34);
    --theme-card-b: rgba(0, 198, 193, 0.18);
    --theme-hero-bg: linear-gradient(135deg, rgba(75, 50, 152, 0.28), rgba(0, 132, 180, 0.14)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(0, 132, 180, 0.16);
    --theme-brand-kicker: #a5f3fc;
    --alysum-purple: #0084b4;
    --alysum-purple-dark: #4b3298;
    --accent: #2d5daa;
    --accent-hover: #4b3298;
    --accent-soft: #00a6b2;
    --accent-muted: rgba(0, 132, 180, 0.2);
    --btn-primary-bg: #0084b4;
    --btn-primary-bg-hover: #2d5daa;
    --link: #00c6c1;
    --nb-top-gradient: linear-gradient(90deg, #4b3298, #2d5daa 30%, #0084b4 55%, #00c6c1);
    --nb-float-bg: linear-gradient(145deg, #1e1b4b 0%, #0c2340 45%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(75, 50, 152, 0.45), rgba(0, 198, 193, 0.16));
    --vp-r1: rgba(45, 93, 170, 0.22);
    --vp-r2: rgba(0, 198, 193, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(75, 50, 152, 0.55), rgba(0, 132, 180, 0.38), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #4b3298;
    --login-page-bg: linear-gradient(135deg, #4b3298, #2d5daa, #00c6c1);
    --ne-header-1: #4b3298;
    --ne-header-2: #2d5daa;
    --ne-header-3: #0084b4;
    --ne-header-4: #00c6c1;
    --ne-body-spot: rgba(0, 166, 178, 0.22);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(75, 50, 152, 0.38), rgba(0, 132, 180, 0.22));
    --theme-prompt-entry-border: rgba(0, 198, 193, 0.35);
    --theme-prompt-entry-ring: rgba(45, 93, 170, 0.28);
}

/* ——— Vivid violet (writer dashboard bar) ——— */
html[data-gradient-theme="vivid"] {
    --purple: #6d28d9;
    --purple-dark: #4c1d95;
    --purple-bright: #7c3aed;
    --pink: #db2777;
    --gold: #fde68a;
    --theme-body-spot: rgba(109, 40, 217, 0.22);
    --theme-body-spot-strong: rgba(219, 39, 119, 0.24);
    --theme-header-mid: #6d28d9;
    --theme-header-end: #db2777;
    --theme-card-a: rgba(109, 40, 217, 0.36);
    --theme-card-b: rgba(219, 39, 119, 0.2);
    --theme-hero-bg: linear-gradient(135deg, rgba(76, 29, 149, 0.32), rgba(219, 39, 119, 0.14)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(109, 40, 217, 0.18);
    --theme-brand-kicker: #fbcfe8;
    --alysum-purple: #6d28d9;
    --alysum-purple-dark: #4c1d95;
    --accent: #6d28d9;
    --accent-hover: #5b21b6;
    --accent-soft: #7c3aed;
    --accent-muted: rgba(109, 40, 217, 0.2);
    --btn-primary-bg: #6d28d9;
    --btn-primary-bg-hover: #5b21b6;
    --link: #db2777;
    --nb-top-gradient: linear-gradient(135deg, #4c1d95, #6d28d9 38%, #db2777);
    --nb-float-bg: linear-gradient(145deg, #1e1b4b 0%, #0f172a 42%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(109, 40, 217, 0.45), rgba(219, 39, 119, 0.14));
    --vp-r1: rgba(124, 58, 237, 0.22);
    --vp-r2: rgba(219, 39, 119, 0.14);
    --vp-hero-bg: linear-gradient(135deg, rgba(76, 29, 149, 0.55), rgba(109, 40, 217, 0.38), rgba(15, 23, 42, 0.65));
    --vp-primary-fg: #4c1d95;
    --login-page-bg: linear-gradient(135deg, #4c1d95, #6d28d9, #db2777);
    --ne-header-1: #4c1d95;
    --ne-header-2: #6d28d9;
    --ne-header-3: #7c3aed;
    --ne-header-4: #db2777;
    --ne-body-spot: rgba(109, 40, 217, 0.24);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(76, 29, 149, 0.4), rgba(219, 39, 119, 0.2));
    --theme-prompt-entry-border: rgba(219, 39, 119, 0.38);
    --theme-prompt-entry-ring: rgba(109, 40, 217, 0.28);
}

/* ——— Noir (monochrome) ——— */
html[data-gradient-theme="noir"] {
    --purple: #52525b;
    --purple-dark: #09090b;
    --purple-bright: #a1a1aa;
    --pink: #d4d4d8;
    --gold: #f4f4f5;
    --theme-body-spot: rgba(82, 82, 91, 0.22);
    --theme-body-spot-strong: rgba(161, 161, 170, 0.2);
    --theme-header-mid: #3f3f46;
    --theme-header-end: #d4d4d8;
    --theme-card-a: rgba(82, 82, 91, 0.35);
    --theme-card-b: rgba(212, 212, 216, 0.12);
    --theme-hero-bg: linear-gradient(135deg, rgba(9, 9, 11, 0.6), rgba(63, 63, 70, 0.25)), var(--panel, #111827);
    --theme-accent-soft-bg: rgba(82, 82, 91, 0.18);
    --theme-brand-kicker: #e4e4e7;
    --alysum-purple: #52525b;
    --alysum-purple-dark: #09090b;
    --accent: #3f3f46;
    --accent-hover: #27272a;
    --accent-soft: #a1a1aa;
    --accent-muted: rgba(82, 82, 91, 0.22);
    --btn-primary-bg: #52525b;
    --btn-primary-bg-hover: #3f3f46;
    --link: #d4d4d8;
    --nb-top-gradient: linear-gradient(135deg, #09090b, #3f3f46 50%, #d4d4d8);
    --nb-float-bg: linear-gradient(145deg, #09090b 0%, #18181b 50%, #0b1220 100%);
    --nb-tree-active-bg: linear-gradient(90deg, rgba(82, 82, 91, 0.45), rgba(212, 212, 216, 0.14));
    --vp-r1: rgba(161, 161, 170, 0.2);
    --vp-r2: rgba(212, 212, 216, 0.12);
    --vp-hero-bg: linear-gradient(135deg, rgba(9, 9, 11, 0.85), rgba(63, 63, 70, 0.5), rgba(15, 23, 42, 0.7));
    --vp-primary-fg: #09090b;
    --login-page-bg: linear-gradient(135deg, #09090b, #52525b, #e4e4e7);
    --ne-header-1: #09090b;
    --ne-header-2: #27272a;
    --ne-header-3: #52525b;
    --ne-header-4: #d4d4d8;
    --ne-body-spot: rgba(161, 161, 170, 0.2);
    --theme-prompt-topbar: linear-gradient(135deg, rgba(9, 9, 11, 0.65), rgba(63, 63, 70, 0.4), rgba(212, 212, 216, 0.18));
    --theme-prompt-entry-border: rgba(212, 212, 216, 0.32);
    --theme-prompt-entry-ring: rgba(82, 82, 91, 0.3);
}

/* PDF dark mode: keep readable accents on top of themed light vars */
html[data-gradient-theme] body.dark {
    --accent: color-mix(in srgb, var(--accent-soft) 85%, white);
    --accent-hover: color-mix(in srgb, var(--accent-soft) 70%, white);
    --btn-primary-bg: var(--accent-soft);
    --btn-primary-bg-hover: var(--accent);
    --link: color-mix(in srgb, var(--accent-soft) 80%, white);
}
