/**
 * Site themes – selectable from Admin > Thèmes.
 * Each html.theme-{slug} overrides CSS variables.
 */

/* Default – Neo Manga (cyan/magenta) */
html.theme-default {
    --color-bg: #050510;
    --color-bg-rgb: 5, 5, 16;
    --color-surface: rgba(13, 13, 26, 0.8);
    --color-surface-hover: rgba(20, 20, 40, 0.9);
    --color-surface-brighter: rgba(30, 30, 60, 0.95);
    --color-border: rgba(255, 255, 255, 0.08);
    --color-border-glow: rgba(0, 243, 255, 0.3);
    --color-primary: #00f3ff;
    --color-primary-rgb: 0, 243, 255;
    --color-secondary: #ff00ff;
    --color-secondary-rgb: 255, 0, 255;
    --color-accent: #7000ff;
    --color-accent-rgb: 112, 0, 255;
    --color-success: #00ffaa;
    --color-success-rgb: 0, 255, 170;
    --color-error: #ff3366;
    --color-error-rgb: 255, 51, 102;
    --color-warning: #ffcc00;
    --color-surface-rgb: 13, 13, 26;
    --grad-neon: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
    --grad-dark: linear-gradient(180deg, #0a0a1a 0%, #050510 100%);
    --color-text: #eef2f5;
    --color-text-dim: #94a3b8;
    --color-text-muted: #64748b;
    --color-text-inverse: #0a0a14;
    --glow-primary: 0 0 15px rgba(var(--color-primary-rgb), 0.4);
    --glow-secondary: 0 0 15px rgba(var(--color-secondary-rgb), 0.4);
}

/* Noël – rouge, vert, or, neige */
html.theme-noel {
    --color-bg: #0d1f14;
    --color-bg-rgb: 13, 31, 20;
    --color-surface: rgba(20, 40, 28, 0.9);
    --color-surface-hover: rgba(28, 55, 38, 0.95);
    --color-surface-brighter: rgba(35, 70, 45, 0.95);
    --color-border: rgba(255, 255, 255, 0.12);
    --color-border-glow: rgba(220, 53, 69, 0.4);
    --color-primary: #c41e3a;
    --color-primary-rgb: 196, 30, 58;
    --color-secondary: #2d5a27;
    --color-secondary-rgb: 45, 90, 39;
    --color-accent: #d4af37;
    --color-accent-rgb: 212, 175, 55;
    --color-success: #28a745;
    --color-success-rgb: 40, 167, 69;
    --color-error: #dc3545;
    --color-error-rgb: 220, 53, 69;
    --color-warning: #ffc107;
    --color-surface-rgb: 20, 40, 28;
    --grad-neon: linear-gradient(135deg, #c41e3a, #2d5a27);
    --grad-dark: linear-gradient(180deg, #0d2818 0%, #0d1f14 100%);
    --color-text: #e8f5e9;
    --color-text-dim: #a5d6a7;
    --color-text-muted: #81c784;
    --glow-primary: 0 0 20px rgba(196, 30, 58, 0.5);
    --glow-secondary: 0 0 15px rgba(45, 90, 39, 0.5);
}

/* Été – soleil, plage, chaleureux & raffiné */
html.theme-ete {
    --color-bg: #0d1820;
    --color-bg-rgb: 13, 24, 32;
    --color-surface: rgba(22, 45, 58, 0.88);
    --color-surface-hover: rgba(30, 58, 75, 0.92);
    --color-surface-brighter: rgba(40, 75, 98, 0.95);
    --color-border: rgba(255, 220, 150, 0.12);
    --color-border-glow: rgba(255, 183, 77, 0.45);
    --color-primary: #ffb74d;
    --color-primary-rgb: 255, 183, 77;
    --color-secondary: #4dd0e1;
    --color-secondary-rgb: 77, 208, 225;
    --color-accent: #ff8a65;
    --color-accent-rgb: 255, 138, 101;
    --color-success: #66bb6a;
    --color-success-rgb: 102, 187, 106;
    --color-error: #ef5350;
    --color-error-rgb: 239, 83, 80;
    --color-warning: #ffa726;
    --color-surface-rgb: 22, 45, 58;
    --grad-neon: linear-gradient(135deg, #ffb74d 0%, #ff8a65 50%, #4dd0e1 100%);
    --grad-dark: linear-gradient(180deg, #143040 0%, #0d1820 100%);
    --color-text: #f5f5dc;
    --color-text-dim: #d4e4c4;
    --color-text-muted: #a8c8a0;
    --color-text-inverse: #0d1820;
    --glow-primary: 0 0 24px rgba(255, 183, 77, 0.5);
    --glow-secondary: 0 0 20px rgba(77, 208, 225, 0.45);
}

/* Noir – sobre, noir & blanc */
html.theme-noir {
    --color-bg: #010103;
    --color-bg-rgb: 1, 1, 3;
    --color-surface: #0a0a0c;
    --color-surface-hover: #141418;
    --color-surface-brighter: #1c1c22;
    --color-border: rgba(255, 255, 255, 0.08);
    --color-border-glow: rgba(255, 255, 255, 0.12);
    --color-primary: #ffffff;
    --color-primary-rgb: 255, 255, 255;
    --color-secondary: #333333;
    --color-secondary-rgb: 51, 51, 51;
    --color-accent: #888888;
    --color-accent-rgb: 136, 136, 136;
    --color-success: #4ade80;
    --color-success-rgb: 74, 222, 128;
    --color-error: #f87171;
    --color-error-rgb: 248, 113, 113;
    --color-warning: #fbbf24;
    --color-surface-rgb: 10, 10, 12;
    --grad-neon: linear-gradient(135deg, #ffffff, #888888);
    --grad-dark: linear-gradient(180deg, #0a0a0c 0%, #010103 100%);
    --color-text: #fafafa;
    --color-text-dim: #a1a1aa;
    --color-text-muted: #71717a;
    --color-text-inverse: #0a0a0c;
    --glow-primary: 0 0 12px rgba(255, 255, 255, 0.25);
    --glow-secondary: 0 0 10px rgba(255, 255, 255, 0.15);
}

/* Halloween – orange, violet, sombre */
html.theme-halloween {
    --color-bg: #1a0f1a;
    --color-bg-rgb: 26, 15, 26;
    --color-surface: rgba(40, 20, 40, 0.9);
    --color-surface-hover: rgba(55, 28, 55, 0.95);
    --color-surface-brighter: rgba(70, 35, 70, 0.95);
    --color-border: rgba(255, 255, 255, 0.08);
    --color-border-glow: rgba(255, 117, 24, 0.4);
    --color-primary: #ff7518;
    --color-primary-rgb: 255, 117, 24;
    --color-secondary: #7b2cbf;
    --color-secondary-rgb: 123, 44, 191;
    --color-accent: #9d4edd;
    --color-accent-rgb: 157, 78, 221;
    --color-success: #2d6a4f;
    --color-success-rgb: 45, 106, 79;
    --color-error: #e63946;
    --color-error-rgb: 230, 57, 70;
    --color-warning: #faa307;
    --color-surface-rgb: 40, 20, 40;
    --grad-neon: linear-gradient(135deg, #ff7518, #7b2cbf);
    --grad-dark: linear-gradient(180deg, #2d1b2d 0%, #1a0f1a 100%);
    --color-text: #f5e6f0;
    --color-text-dim: #c9a0dc;
    --color-text-muted: #9b59b6;
    --glow-primary: 0 0 20px rgba(255, 117, 24, 0.5);
    --glow-secondary: 0 0 15px rgba(123, 44, 191, 0.5);
}

/* ========== NEON ========== */
/* Neon Cyan – cyan fluo intense */
html.theme-neon-cyan {
    --color-bg: #030a0f;
    --color-bg-rgb: 3, 10, 15;
    --color-surface: rgba(8, 20, 28, 0.9);
    --color-surface-hover: rgba(12, 28, 38, 0.95);
    --color-surface-brighter: rgba(18, 40, 52, 0.95);
    --color-border: rgba(0, 255, 255, 0.12);
    --color-border-glow: rgba(0, 255, 255, 0.5);
    --color-primary: #00ffff;
    --color-primary-rgb: 0, 255, 255;
    --color-secondary: #00b8d4;
    --color-secondary-rgb: 0, 184, 212;
    --color-accent: #18ffff;
    --color-accent-rgb: 24, 255, 255;
    --color-success: #00e676;
    --color-success-rgb: 0, 230, 118;
    --color-error: #ff1744;
    --color-error-rgb: 255, 23, 68;
    --color-warning: #ffea00;
    --color-surface-rgb: 8, 20, 28;
    --grad-neon: linear-gradient(135deg, #00ffff, #18ffff);
    --grad-dark: linear-gradient(180deg, #051218 0%, #030a0f 100%);
    --color-text: #e0f7fa;
    --color-text-dim: #80deea;
    --color-text-muted: #4dd0e1;
    --glow-primary: 0 0 24px rgba(0, 255, 255, 0.6);
    --glow-secondary: 0 0 18px rgba(0, 184, 212, 0.5);
}

/* Neon Pink – rose / magenta fluo */
html.theme-neon-pink {
    --color-bg: #0f0510;
    --color-bg-rgb: 15, 5, 16;
    --color-surface: rgba(28, 10, 30, 0.9);
    --color-surface-hover: rgba(40, 14, 44, 0.95);
    --color-surface-brighter: rgba(55, 18, 60, 0.95);
    --color-border: rgba(255, 0, 128, 0.15);
    --color-border-glow: rgba(255, 20, 147, 0.5);
    --color-primary: #ff1493;
    --color-primary-rgb: 255, 20, 147;
    --color-secondary: #ff69b4;
    --color-secondary-rgb: 255, 105, 180;
    --color-accent: #ff10f0;
    --color-accent-rgb: 255, 16, 240;
    --color-success: #00ff9f;
    --color-success-rgb: 0, 255, 159;
    --color-error: #ff4757;
    --color-error-rgb: 255, 71, 87;
    --color-warning: #ffdd59;
    --color-surface-rgb: 28, 10, 30;
    --grad-neon: linear-gradient(135deg, #ff1493, #ff10f0);
    --grad-dark: linear-gradient(180deg, #1a0a1c 0%, #0f0510 100%);
    --color-text: #ffe4ec;
    --color-text-dim: #f8bbd9;
    --color-text-muted: #f48fb1;
    --glow-primary: 0 0 24px rgba(255, 20, 147, 0.6);
    --glow-secondary: 0 0 18px rgba(255, 16, 240, 0.5);
}

/* Neon Green – vert fluo */
html.theme-neon-green {
    --color-bg: #051005;
    --color-bg-rgb: 5, 16, 5;
    --color-surface: rgba(12, 28, 12, 0.9);
    --color-surface-hover: rgba(18, 40, 18, 0.95);
    --color-surface-brighter: rgba(24, 55, 24, 0.95);
    --color-border: rgba(57, 255, 20, 0.15);
    --color-border-glow: rgba(0, 255, 128, 0.5);
    --color-primary: #39ff14;
    --color-primary-rgb: 57, 255, 20;
    --color-secondary: #00ff88;
    --color-secondary-rgb: 0, 255, 136;
    --color-accent: #7fff00;
    --color-accent-rgb: 127, 255, 0;
    --color-success: #00ff88;
    --color-success-rgb: 0, 255, 136;
    --color-error: #ff4444;
    --color-error-rgb: 255, 68, 68;
    --color-warning: #ffea00;
    --color-surface-rgb: 12, 28, 12;
    --grad-neon: linear-gradient(135deg, #39ff14, #00ff88);
    --grad-dark: linear-gradient(180deg, #0a1f0a 0%, #051005 100%);
    --color-text: #e8f5e9;
    --color-text-dim: #a5d6a7;
    --color-text-muted: #81c784;
    --glow-primary: 0 0 24px rgba(57, 255, 20, 0.6);
    --glow-secondary: 0 0 18px rgba(0, 255, 136, 0.5);
}

/* Neon Purple – violet fluo */
html.theme-neon-purple {
    --color-bg: #0a0512;
    --color-bg-rgb: 10, 5, 18;
    --color-surface: rgba(22, 10, 35, 0.9);
    --color-surface-hover: rgba(32, 14, 50, 0.95);
    --color-surface-brighter: rgba(45, 20, 68, 0.95);
    --color-border: rgba(191, 0, 255, 0.15);
    --color-border-glow: rgba(170, 0, 255, 0.5);
    --color-primary: #bf00ff;
    --color-primary-rgb: 191, 0, 255;
    --color-secondary: #8b5cf6;
    --color-secondary-rgb: 139, 92, 246;
    --color-accent: #c084fc;
    --color-accent-rgb: 192, 132, 252;
    --color-success: #22c55e;
    --color-success-rgb: 34, 197, 94;
    --color-error: #ef4444;
    --color-error-rgb: 239, 68, 68;
    --color-warning: #f59e0b;
    --color-surface-rgb: 22, 10, 35;
    --grad-neon: linear-gradient(135deg, #bf00ff, #8b5cf6);
    --grad-dark: linear-gradient(180deg, #150820 0%, #0a0512 100%);
    --color-text: #f3e8ff;
    --color-text-dim: #c4b5fd;
    --color-text-muted: #a78bfa;
    --glow-primary: 0 0 24px rgba(191, 0, 255, 0.6);
    --glow-secondary: 0 0 18px rgba(139, 92, 246, 0.5);
}

/* Neon Gold – or néon */
html.theme-neon-gold {
    --color-bg: #0f0c05;
    --color-bg-rgb: 15, 12, 5;
    --color-surface: rgba(28, 22, 8, 0.9);
    --color-surface-hover: rgba(40, 32, 12, 0.95);
    --color-surface-brighter: rgba(55, 45, 18, 0.95);
    --color-border: rgba(255, 200, 0, 0.15);
    --color-border-glow: rgba(255, 215, 0, 0.5);
    --color-primary: #ffd700;
    --color-primary-rgb: 255, 215, 0;
    --color-secondary: #ffb300;
    --color-secondary-rgb: 255, 179, 0;
    --color-accent: #ffe066;
    --color-accent-rgb: 255, 224, 102;
    --color-success: #4ade80;
    --color-success-rgb: 74, 222, 128;
    --color-error: #f87171;
    --color-error-rgb: 248, 113, 113;
    --color-warning: #fbbf24;
    --color-surface-rgb: 28, 22, 8;
    --grad-neon: linear-gradient(135deg, #ffd700, #ffb300);
    --grad-dark: linear-gradient(180deg, #1a1608 0%, #0f0c05 100%);
    --color-text: #fef9e7;
    --color-text-dim: #f9e79f;
    --color-text-muted: #f7dc6f;
    --glow-primary: 0 0 24px rgba(255, 215, 0, 0.6);
    --glow-secondary: 0 0 18px rgba(255, 179, 0, 0.5);
}

/* Cyber – cyberpunk cyan / magenta */
html.theme-cyber {
    --color-bg: #050508;
    --color-bg-rgb: 5, 5, 8;
    --color-surface: rgba(12, 12, 22, 0.92);
    --color-surface-hover: rgba(18, 18, 32, 0.95);
    --color-surface-brighter: rgba(25, 25, 45, 0.95);
    --color-border: rgba(0, 243, 255, 0.12);
    --color-border-glow: rgba(255, 0, 128, 0.4);
    --color-primary: #00f0ff;
    --color-primary-rgb: 0, 240, 255;
    --color-secondary: #ff006e;
    --color-secondary-rgb: 255, 0, 110;
    --color-accent: #8338ec;
    --color-accent-rgb: 131, 56, 236;
    --color-success: #06ffa5;
    --color-success-rgb: 6, 255, 165;
    --color-error: #ff006e;
    --color-error-rgb: 255, 0, 110;
    --color-warning: #ffbe0b;
    --color-surface-rgb: 12, 12, 22;
    --grad-neon: linear-gradient(135deg, #00f0ff, #ff006e);
    --grad-dark: linear-gradient(180deg, #0a0a12 0%, #050508 100%);
    --color-text: #eef2ff;
    --color-text-dim: #a5b4fc;
    --color-text-muted: #818cf8;
    --glow-primary: 0 0 22px rgba(0, 240, 255, 0.55);
    --glow-secondary: 0 0 18px rgba(255, 0, 110, 0.5);
}

/* Synthwave – rétro 80s rose / orange / violet */
html.theme-synthwave {
    --color-bg: #0d0221;
    --color-bg-rgb: 13, 2, 33;
    --color-surface: rgba(25, 8, 50, 0.9);
    --color-surface-hover: rgba(35, 12, 70, 0.95);
    --color-surface-brighter: rgba(50, 18, 95, 0.95);
    --color-border: rgba(255, 82, 197, 0.2);
    --color-border-glow: rgba(255, 119, 168, 0.5);
    --color-primary: #ff52c5;
    --color-primary-rgb: 255, 82, 197;
    --color-secondary: #ff6b35;
    --color-secondary-rgb: 255, 107, 53;
    --color-accent: #7b2cbf;
    --color-accent-rgb: 123, 44, 191;
    --color-success: #2ec4b6;
    --color-success-rgb: 46, 196, 182;
    --color-error: #ff3366;
    --color-error-rgb: 255, 51, 102;
    --color-warning: #ff9f1c;
    --color-surface-rgb: 25, 8, 50;
    --grad-neon: linear-gradient(135deg, #ff52c5, #ff6b35);
    --grad-dark: linear-gradient(180deg, #1a0533 0%, #0d0221 100%);
    --color-text: #ffe5f1;
    --color-text-dim: #f8b4d9;
    --color-text-muted: #f093c4;
    --glow-primary: 0 0 24px rgba(255, 82, 197, 0.6);
    --glow-secondary: 0 0 18px rgba(255, 107, 53, 0.5);
}

/* ========== AESTHETIC ========== */
/* Sakura – rose pâle, fleurs */
html.theme-sakura {
    --color-bg: #1a0f14;
    --color-bg-rgb: 26, 15, 20;
    --color-surface: rgba(45, 25, 35, 0.9);
    --color-surface-hover: rgba(55, 32, 42, 0.95);
    --color-surface-brighter: rgba(70, 40, 55, 0.95);
    --color-border: rgba(255, 182, 193, 0.2);
    --color-border-glow: rgba(255, 192, 203, 0.35);
    --color-primary: #ffb7c5;
    --color-primary-rgb: 255, 183, 197;
    --color-secondary: #e8a0bf;
    --color-secondary-rgb: 232, 160, 191;
    --color-accent: #f8b4d9;
    --color-accent-rgb: 248, 180, 217;
    --color-success: #90c695;
    --color-success-rgb: 144, 198, 149;
    --color-error: #e57373;
    --color-error-rgb: 229, 115, 115;
    --color-warning: #ffb74d;
    --color-surface-rgb: 45, 25, 35;
    --grad-neon: linear-gradient(135deg, #ffb7c5, #e8a0bf);
    --grad-dark: linear-gradient(180deg, #2d1822 0%, #1a0f14 100%);
    --color-text: #fce4ec;
    --color-text-dim: #f8bbd9;
    --color-text-muted: #f48fb1;
    --glow-primary: 0 0 18px rgba(255, 183, 197, 0.4);
    --glow-secondary: 0 0 14px rgba(232, 160, 191, 0.35);
}

/* Ocean – bleu océan, turquoise */
html.theme-ocean {
    --color-bg: #061a26;
    --color-bg-rgb: 6, 26, 38;
    --color-surface: rgba(12, 40, 58, 0.9);
    --color-surface-hover: rgba(18, 55, 80, 0.95);
    --color-surface-brighter: rgba(24, 72, 100, 0.95);
    --color-border: rgba(0, 188, 212, 0.2);
    --color-border-glow: rgba(0, 229, 255, 0.4);
    --color-primary: #00bcd4;
    --color-primary-rgb: 0, 188, 212;
    --color-secondary: #0097a7;
    --color-secondary-rgb: 0, 151, 167;
    --color-accent: #4dd0e1;
    --color-accent-rgb: 77, 208, 225;
    --color-success: #26a69a;
    --color-success-rgb: 38, 166, 154;
    --color-error: #e53935;
    --color-error-rgb: 229, 57, 53;
    --color-warning: #ffb300;
    --color-surface-rgb: 12, 40, 58;
    --grad-neon: linear-gradient(135deg, #00bcd4, #4dd0e1);
    --grad-dark: linear-gradient(180deg, #0a2838 0%, #061a26 100%);
    --color-text: #e0f7fa;
    --color-text-dim: #b2ebf2;
    --color-text-muted: #80deea;
    --glow-primary: 0 0 20px rgba(0, 188, 212, 0.45);
    --glow-secondary: 0 0 16px rgba(77, 208, 225, 0.4);
}

/* Sunset – coucher de soleil */
html.theme-sunset {
    --color-bg: #1a0f0a;
    --color-bg-rgb: 26, 15, 10;
    --color-surface: rgba(45, 25, 18, 0.9);
    --color-surface-hover: rgba(60, 32, 24, 0.95);
    --color-surface-brighter: rgba(80, 42, 32, 0.95);
    --color-border: rgba(255, 140, 66, 0.2);
    --color-border-glow: rgba(255, 99, 71, 0.4);
    --color-primary: #ff8c42;
    --color-primary-rgb: 255, 140, 66;
    --color-secondary: #ff6b6b;
    --color-secondary-rgb: 255, 107, 107;
    --color-accent: #ffaa00;
    --color-accent-rgb: 255, 170, 0;
    --color-success: #51cf66;
    --color-success-rgb: 81, 207, 102;
    --color-error: #ff6b6b;
    --color-error-rgb: 255, 107, 107;
    --color-warning: #ffd43b;
    --color-surface-rgb: 45, 25, 18;
    --grad-neon: linear-gradient(135deg, #ff8c42, #ff6b6b);
    --grad-dark: linear-gradient(180deg, #2d1810 0%, #1a0f0a 100%);
    --color-text: #fff5eb;
    --color-text-dim: #ffcc99;
    --color-text-muted: #ffb366;
    --glow-primary: 0 0 20px rgba(255, 140, 66, 0.5);
    --glow-secondary: 0 0 16px rgba(255, 107, 107, 0.45);
}

/* Forest – vert forêt, nature */
html.theme-forest {
    --color-bg: #0a1410;
    --color-bg-rgb: 10, 20, 16;
    --color-surface: rgba(18, 35, 28, 0.9);
    --color-surface-hover: rgba(24, 48, 38, 0.95);
    --color-surface-brighter: rgba(32, 65, 52, 0.95);
    --color-border: rgba(76, 175, 80, 0.2);
    --color-border-glow: rgba(129, 199, 132, 0.35);
    --color-primary: #4caf50;
    --color-primary-rgb: 76, 175, 80;
    --color-secondary: #2e7d32;
    --color-secondary-rgb: 46, 125, 50;
    --color-accent: #81c784;
    --color-accent-rgb: 129, 199, 132;
    --color-success: #66bb6a;
    --color-success-rgb: 102, 187, 106;
    --color-error: #e57373;
    --color-error-rgb: 229, 115, 115;
    --color-warning: #ffb74d;
    --color-surface-rgb: 18, 35, 28;
    --grad-neon: linear-gradient(135deg, #4caf50, #81c784);
    --grad-dark: linear-gradient(180deg, #122818 0%, #0a1410 100%);
    --color-text: #e8f5e9;
    --color-text-dim: #a5d6a7;
    --color-text-muted: #81c784;
    --glow-primary: 0 0 18px rgba(76, 175, 80, 0.4);
    --glow-secondary: 0 0 14px rgba(129, 199, 132, 0.35);
}

/* Lavender – lavande, violet doux */
html.theme-lavender {
    --color-bg: #120f1a;
    --color-bg-rgb: 18, 15, 26;
    --color-surface: rgba(35, 28, 50, 0.9);
    --color-surface-hover: rgba(45, 36, 65, 0.95);
    --color-surface-brighter: rgba(60, 48, 85, 0.95);
    --color-border: rgba(179, 157, 219, 0.2);
    --color-border-glow: rgba(200, 162, 200, 0.35);
    --color-primary: #b39ddb;
    --color-primary-rgb: 179, 157, 219;
    --color-secondary: #9575cd;
    --color-secondary-rgb: 149, 117, 205;
    --color-accent: #ce93d8;
    --color-accent-rgb: 206, 147, 216;
    --color-success: #80cbc4;
    --color-success-rgb: 128, 203, 196;
    --color-error: #ef9a9a;
    --color-error-rgb: 239, 154, 154;
    --color-warning: #ffcc80;
    --color-surface-rgb: 35, 28, 50;
    --grad-neon: linear-gradient(135deg, #b39ddb, #ce93d8);
    --grad-dark: linear-gradient(180deg, #1e1830 0%, #120f1a 100%);
    --color-text: #ede7f6;
    --color-text-dim: #d1c4e9;
    --color-text-muted: #b39ddb;
    --glow-primary: 0 0 18px rgba(179, 157, 219, 0.4);
    --glow-secondary: 0 0 14px rgba(206, 147, 216, 0.35);
}

/* Aurora – aurore boréale vert / bleu */
html.theme-aurora {
    --color-bg: #051018;
    --color-bg-rgb: 5, 16, 24;
    --color-surface: rgba(10, 28, 42, 0.9);
    --color-surface-hover: rgba(14, 38, 58, 0.95);
    --color-surface-brighter: rgba(20, 50, 75, 0.95);
    --color-border: rgba(0, 255, 200, 0.15);
    --color-border-glow: rgba(64, 224, 208, 0.4);
    --color-primary: #00ffc8;
    --color-primary-rgb: 0, 255, 200;
    --color-secondary: #40e0d0;
    --color-secondary-rgb: 64, 224, 208;
    --color-accent: #7fffd4;
    --color-accent-rgb: 127, 255, 212;
    --color-success: #20b2aa;
    --color-success-rgb: 32, 178, 170;
    --color-error: #ff6b6b;
    --color-error-rgb: 255, 107, 107;
    --color-warning: #ffd93d;
    --color-surface-rgb: 10, 28, 42;
    --grad-neon: linear-gradient(135deg, #00ffc8, #40e0d0);
    --grad-dark: linear-gradient(180deg, #0a1c2a 0%, #051018 100%);
    --color-text: #e0fff8;
    --color-text-dim: #a7f3ec;
    --color-text-muted: #7fffd4;
    --glow-primary: 0 0 22px rgba(0, 255, 200, 0.5);
    --glow-secondary: 0 0 18px rgba(64, 224, 208, 0.45);
}

/* Mint – menthe, vert frais */
html.theme-mint {
    --color-bg: #061412;
    --color-bg-rgb: 6, 20, 18;
    --color-surface: rgba(14, 38, 34, 0.9);
    --color-surface-hover: rgba(18, 50, 44, 0.95);
    --color-surface-brighter: rgba(24, 65, 58, 0.95);
    --color-border: rgba(152, 255, 204, 0.2);
    --color-border-glow: rgba(167, 255, 235, 0.35);
    --color-primary: #98ffcc;
    --color-primary-rgb: 152, 255, 204;
    --color-secondary: #64ffda;
    --color-secondary-rgb: 100, 255, 218;
    --color-accent: #a7ffeb;
    --color-accent-rgb: 167, 255, 235;
    --color-success: #69f0ae;
    --color-success-rgb: 105, 240, 174;
    --color-error: #ff8a80;
    --color-error-rgb: 255, 138, 128;
    --color-warning: #ffd54f;
    --color-surface-rgb: 14, 38, 34;
    --grad-neon: linear-gradient(135deg, #98ffcc, #64ffda);
    --grad-dark: linear-gradient(180deg, #0c221e 0%, #061412 100%);
    --color-text: #e0f7ed;
    --color-text-dim: #b2f5ea;
    --color-text-muted: #80cbc4;
    --glow-primary: 0 0 18px rgba(152, 255, 204, 0.4);
    --glow-secondary: 0 0 14px rgba(100, 255, 218, 0.35);
}

/* Coral – corail, rose-orange */
html.theme-coral {
    --color-bg: #1a0e0c;
    --color-bg-rgb: 26, 14, 12;
    --color-surface: rgba(45, 24, 20, 0.9);
    --color-surface-hover: rgba(60, 32, 28, 0.95);
    --color-surface-brighter: rgba(80, 42, 36, 0.95);
    --color-border: rgba(255, 127, 80, 0.2);
    --color-border-glow: rgba(255, 160, 122, 0.4);
    --color-primary: #ff7f50;
    --color-primary-rgb: 255, 127, 80;
    --color-secondary: #ff6b6b;
    --color-secondary-rgb: 255, 107, 107;
    --color-accent: #ffa07a;
    --color-accent-rgb: 255, 160, 122;
    --color-success: #5cd85a;
    --color-success-rgb: 92, 216, 90;
    --color-error: #ff5252;
    --color-error-rgb: 255, 82, 82;
    --color-warning: #ffd54f;
    --color-surface-rgb: 45, 24, 20;
    --grad-neon: linear-gradient(135deg, #ff7f50, #ffa07a);
    --grad-dark: linear-gradient(180deg, #2d1814 0%, #1a0e0c 100%);
    --color-text: #fff5f0;
    --color-text-dim: #ffccbc;
    --color-text-muted: #ffab91;
    --glow-primary: 0 0 20px rgba(255, 127, 80, 0.45);
    --glow-secondary: 0 0 16px rgba(255, 160, 122, 0.4);
}

/* Galaxy – violet profond, étoiles */
html.theme-galaxy {
    --color-bg: #0a0612;
    --color-bg-rgb: 10, 6, 18;
    --color-surface: rgba(22, 14, 35, 0.92);
    --color-surface-hover: rgba(30, 18, 50, 0.95);
    --color-surface-brighter: rgba(42, 26, 70, 0.95);
    --color-border: rgba(138, 43, 226, 0.2);
    --color-border-glow: rgba(148, 0, 211, 0.45);
    --color-primary: #8a2be2;
    --color-primary-rgb: 138, 43, 226;
    --color-secondary: #9400d3;
    --color-secondary-rgb: 148, 0, 211;
    --color-accent: #ba55d3;
    --color-accent-rgb: 186, 85, 211;
    --color-success: #00ced1;
    --color-success-rgb: 0, 206, 209;
    --color-error: #ff69b4;
    --color-error-rgb: 255, 105, 180;
    --color-warning: #daa520;
    --color-surface-rgb: 22, 14, 35;
    --grad-neon: linear-gradient(135deg, #8a2be2, #9400d3);
    --grad-dark: linear-gradient(180deg, #140c20 0%, #0a0612 100%);
    --color-text: #f0e6ff;
    --color-text-dim: #d8bfd8;
    --color-text-muted: #ba55d3;
    --glow-primary: 0 0 22px rgba(138, 43, 226, 0.5);
    --glow-secondary: 0 0 18px rgba(148, 0, 211, 0.45);
}

/* Ice – bleu glace, blanc */
html.theme-ice {
    --color-bg: #060a12;
    --color-bg-rgb: 6, 10, 18;
    --color-surface: rgba(14, 22, 38, 0.9);
    --color-surface-hover: rgba(18, 30, 50, 0.95);
    --color-surface-brighter: rgba(24, 40, 65, 0.95);
    --color-border: rgba(173, 216, 230, 0.2);
    --color-border-glow: rgba(135, 206, 250, 0.4);
    --color-primary: #add8e6;
    --color-primary-rgb: 173, 216, 230;
    --color-secondary: #87ceeb;
    --color-secondary-rgb: 135, 206, 235;
    --color-accent: #b0e0e6;
    --color-accent-rgb: 176, 224, 230;
    --color-success: #48c9b0;
    --color-success-rgb: 72, 201, 176;
    --color-error: #e74c3c;
    --color-error-rgb: 231, 76, 60;
    --color-warning: #f1c40f;
    --color-surface-rgb: 14, 22, 38;
    --grad-neon: linear-gradient(135deg, #add8e6, #87ceeb);
    --grad-dark: linear-gradient(180deg, #0c1420 0%, #060a12 100%);
    --color-text: #e8f4fc;
    --color-text-dim: #b8d4e8;
    --color-text-muted: #89c4e1;
    --glow-primary: 0 0 18px rgba(173, 216, 230, 0.45);
    --glow-secondary: 0 0 14px rgba(135, 206, 235, 0.4);
}

/* Cherry – cerise, rouge profond */
html.theme-cherry {
    --color-bg: #140608;
    --color-bg-rgb: 20, 6, 8;
    --color-surface: rgba(35, 12, 18, 0.9);
    --color-surface-hover: rgba(50, 16, 24, 0.95);
    --color-surface-brighter: rgba(70, 22, 32, 0.95);
    --color-border: rgba(222, 49, 99, 0.2);
    --color-border-glow: rgba(220, 20, 60, 0.45);
    --color-primary: #de3163;
    --color-primary-rgb: 222, 49, 99;
    --color-secondary: #dc143c;
    --color-secondary-rgb: 220, 20, 60;
    --color-accent: #ff6b8a;
    --color-accent-rgb: 255, 107, 138;
    --color-success: #2ecc71;
    --color-success-rgb: 46, 204, 113;
    --color-error: #e74c3c;
    --color-error-rgb: 231, 76, 60;
    --color-warning: #f39c12;
    --color-surface-rgb: 35, 12, 18;
    --grad-neon: linear-gradient(135deg, #de3163, #ff6b8a);
    --grad-dark: linear-gradient(180deg, #1f0a0e 0%, #140608 100%);
    --color-text: #ffe4ec;
    --color-text-dim: #f8b4c4;
    --color-text-muted: #f093b0;
    --glow-primary: 0 0 20px rgba(222, 49, 99, 0.5);
    --glow-secondary: 0 0 16px rgba(220, 20, 60, 0.45);
}

/* Matrix – vert code */
html.theme-matrix {
    --color-bg: #000a00;
    --color-bg-rgb: 0, 10, 0;
    --color-surface: rgba(5, 25, 5, 0.92);
    --color-surface-hover: rgba(8, 35, 8, 0.95);
    --color-surface-brighter: rgba(12, 50, 12, 0.95);
    --color-border: rgba(0, 255, 65, 0.15);
    --color-border-glow: rgba(0, 255, 100, 0.45);
    --color-primary: #00ff41;
    --color-primary-rgb: 0, 255, 65;
    --color-secondary: #00cc33;
    --color-secondary-rgb: 0, 204, 51;
    --color-accent: #39ff14;
    --color-accent-rgb: 57, 255, 20;
    --color-success: #00ff41;
    --color-success-rgb: 0, 255, 65;
    --color-error: #ff3333;
    --color-error-rgb: 255, 51, 51;
    --color-warning: #ffff00;
    --color-surface-rgb: 5, 25, 5;
    --grad-neon: linear-gradient(135deg, #00ff41, #39ff14);
    --grad-dark: linear-gradient(180deg, #001500 0%, #000a00 100%);
    --color-text: #d4ffd4;
    --color-text-dim: #90ee90;
    --color-text-muted: #32cd32;
    --glow-primary: 0 0 24px rgba(0, 255, 65, 0.6);
    --glow-secondary: 0 0 18px rgba(0, 204, 51, 0.5);
}
