/* GÉNÉRÉ par un script à partir de static/js/themes.js — modifier la table là-bas, pas ce fichier.
   LES THÈMES DE COULEUR (v0.11) : chaque thème remplace la couleur principale de HT (--ht-primary et ses nuances),
   celle des boutons et des cases, et teinte légèrement le fond ; en clair et en sombre. Les décorations (« data-ht-deco ») ajoutent
   un motif très pâle de petits emojis derrière la page et un badge sur le logo.
   ATTENTION : une règle « clair » sur un ÉLÉMENT (.card…) doit exclure le sombre (:not([data-bs-theme=dark])) — sa spécificité
   (:root + attribut + classe) battrait celle de HT pour le sombre ([data-bs-theme=dark] .card) : des cartes blanches. */
.ht-logo { position: relative; }

/* ── 🎃 Halloween */
:root[data-ht-theme="halloween"] {
  --ht-primary: #e8650f; --ht-primary-rgb: 232, 101, 15;
  --ht-link-color: #e8650f; --ht-link-color-rgb: 232, 101, 15; --ht-link-hover-color: #ba510c;
  --ht-primary-text-emphasis: #a2470b;
  --ht-primary-bg-subtle: #fce8db;
  --ht-primary-border-subtle: #f6c4a4;
  --ht-btn-ht-primary-color: #e8650f;
  --ht-btn-ht-primary-hover-color: #be530c;
  --ht-btn-ht-primary-active-background: #fbe3d4;
  --ht-info: #7b3fa0; --ht-info-rgb: 123, 63, 160;
  --ht-accent: #7b3fa0; --ht-accent-rgb: 123, 63, 160;
}
:root[data-ht-theme="halloween"][data-bs-theme="dark"] {
  --ht-primary: #ff8a3d; --ht-primary-rgb: 255, 138, 61;
  --ht-link-color: #ff8a3d; --ht-link-color-rgb: 255, 138, 61; --ht-link-hover-color: #ffa164;
  --ht-primary-text-emphasis: #ffcaa8;
  --ht-primary-bg-subtle: #4f372d;
  --ht-primary-border-subtle: #794b31;
  --ht-btn-ht-primary-color: #ff8a3d;
  --ht-btn-ht-primary-hover-color: #ffa164;
  --ht-btn-ht-primary-active-background: #331c0c;
  --ht-info: #b07ad6; --ht-info-rgb: 176, 122, 214;
  --ht-accent: #b07ad6; --ht-accent-rgb: 176, 122, 214;
}
:root[data-ht-theme="halloween"] .btn-primary { --ht-btn-bg: #e8650f; --ht-btn-border-color: #e8650f; --ht-btn-hover-bg: #c8570d; --ht-btn-hover-border-color: #be530c;
  --ht-btn-active-bg: #ba510c; --ht-btn-active-border-color: #b04d0b; --ht-btn-disabled-bg: #e8650f; --ht-btn-disabled-border-color: #e8650f; --ht-btn-focus-shadow-rgb: 232, 101, 15; }
:root[data-ht-theme="halloween"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #ff8a3d; --ht-btn-border-color: #ff8a3d; --ht-btn-hover-bg: #e07936; --ht-btn-hover-border-color: #d67433;
  --ht-btn-active-bg: #cc6e31; --ht-btn-disabled-bg: #ff8a3d; --ht-btn-disabled-border-color: #ff8a3d; --ht-btn-focus-shadow-rgb: 255, 138, 61; }
:root[data-ht-theme="halloween"] .form-check-input:checked, :root[data-ht-theme="halloween"] .form-check-input[type=checkbox]:indeterminate { background-color: #e8650f; border-color: #e8650f; }
:root[data-ht-theme="halloween"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="halloween"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #ff8a3d; border-color: #ff8a3d; }
:root[data-ht-theme="halloween"] body { background-image: radial-gradient(circle at 100% 0, rgba(123, 63, 160, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(232, 101, 15, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="halloween"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(176, 122, 214, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(255, 138, 61, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="halloween"] {
  --ht-body-bg: #ede8e9; --ht-body-bg-rgb: 237, 232, 233;
  --ht-tertiary-bg: #f8f3f1; --ht-tertiary-bg-rgb: 248, 243, 241;
  --ht-gray-100: #f4f3f9; --ht-gray-200: #edeaeb;
  --ht-emphasis-bg: #fefbf9; --ht-navbar-vertical-card-bg-color: #fefbf9;
  --ht-bg-navbar-glass: rgba(237, 232, 233, 0.96);
}
:root[data-ht-theme="halloween"][data-bs-theme="dark"] {
  --ht-body-bg: #271e1c; --ht-body-bg-rgb: 39, 30, 28; --ht-quaternary-bg: #271e1c; --ht-quaternary-bg-rgb: 39, 30, 28;
  --ht-emphasis-bg: #2f2624; --ht-emphasis-bg-rgb: 47, 38, 36; --ht-navbar-vertical-card-bg-color: #2f2624;
  --ht-tertiary-bg: #332a28; --ht-tertiary-bg-rgb: 51, 42, 40;
  --ht-gray-100: #2c2223; --ht-gray-200: #3e3533; --ht-gray-300: #4c4443;
  --ht-bg-navbar-glass: rgba(39, 30, 28, 0.96); --fc-page-bg-color: #271e1c;
}
:root[data-ht-theme="halloween"][data-ht-tint="strong"] {
  --ht-body-bg: #ecded8; --ht-body-bg-rgb: 236, 222, 216;
  --ht-tertiary-bg: #f7ebe5; --ht-tertiary-bg-rgb: 247, 235, 229;
  --ht-gray-100: #efebf6; --ht-gray-200: #ece1dd;
  --ht-emphasis-bg: #fef7f3; --ht-navbar-vertical-card-bg-color: #fef7f3;
  --ht-bg-navbar-glass: rgba(236, 222, 216, 0.96);
}
:root[data-ht-theme="halloween"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #3d291f; --ht-body-bg-rgb: 61, 41, 31; --ht-quaternary-bg: #3d291f; --ht-quaternary-bg-rgb: 61, 41, 31;
  --ht-emphasis-bg: #443027; --ht-emphasis-bg-rgb: 68, 48, 39; --ht-navbar-vertical-card-bg-color: #443027;
  --ht-tertiary-bg: #48352b; --ht-tertiary-bg-rgb: 72, 53, 43;
  --ht-gray-100: #462f2d; --ht-gray-200: #513e36; --ht-gray-300: #5e4d45;
  --ht-bg-navbar-glass: rgba(61, 41, 31, 0.96); --fc-page-bg-color: #3d291f;
}
:root[data-ht-theme="halloween"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fefbf9; }
:root[data-ht-theme="halloween"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fef7f3; }
:root[data-ht-theme="halloween"][data-ht-deco] .ht-main::before, :root[data-ht-theme="halloween"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8E%83%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%A6%87%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%91%BB%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8E%83%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%A6%87%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="halloween"][data-ht-deco] .ht-logo::after { content: "🎃"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🎄 Noël */
:root[data-ht-theme="noel"] {
  --ht-primary: #c8102e; --ht-primary-rgb: 200, 16, 46;
  --ht-link-color: #c8102e; --ht-link-color-rgb: 200, 16, 46; --ht-link-hover-color: #a00d25;
  --ht-primary-text-emphasis: #8c0b20;
  --ht-primary-bg-subtle: #f7dbe0;
  --ht-primary-border-subtle: #eaa4b0;
  --ht-btn-ht-primary-color: #c8102e;
  --ht-btn-ht-primary-hover-color: #a40d26;
  --ht-btn-ht-primary-active-background: #f5d4d9;
  --ht-info: #1e7b3c; --ht-info-rgb: 30, 123, 60;
  --ht-accent: #1e7b3c; --ht-accent-rgb: 30, 123, 60;
}
:root[data-ht-theme="noel"][data-bs-theme="dark"] {
  --ht-primary: #ef4f5e; --ht-primary-rgb: 239, 79, 94;
  --ht-link-color: #ef4f5e; --ht-link-color-rgb: 239, 79, 94; --ht-link-hover-color: #f2727e;
  --ht-primary-text-emphasis: #f8b0b7;
  --ht-primary-bg-subtle: #4b2736;
  --ht-primary-border-subtle: #723040;
  --ht-btn-ht-primary-color: #ef4f5e;
  --ht-btn-ht-primary-hover-color: #f2727e;
  --ht-btn-ht-primary-active-background: #301013;
  --ht-info: #43b866; --ht-info-rgb: 67, 184, 102;
  --ht-accent: #43b866; --ht-accent-rgb: 67, 184, 102;
}
:root[data-ht-theme="noel"] .btn-primary { --ht-btn-bg: #c8102e; --ht-btn-border-color: #c8102e; --ht-btn-hover-bg: #ac0e28; --ht-btn-hover-border-color: #a40d26;
  --ht-btn-active-bg: #a00d25; --ht-btn-active-border-color: #980c23; --ht-btn-disabled-bg: #c8102e; --ht-btn-disabled-border-color: #c8102e; --ht-btn-focus-shadow-rgb: 200, 16, 46; }
:root[data-ht-theme="noel"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #ef4f5e; --ht-btn-border-color: #ef4f5e; --ht-btn-hover-bg: #d24653; --ht-btn-hover-border-color: #c9424f;
  --ht-btn-active-bg: #bf3f4b; --ht-btn-disabled-bg: #ef4f5e; --ht-btn-disabled-border-color: #ef4f5e; --ht-btn-focus-shadow-rgb: 239, 79, 94; }
:root[data-ht-theme="noel"] .form-check-input:checked, :root[data-ht-theme="noel"] .form-check-input[type=checkbox]:indeterminate { background-color: #c8102e; border-color: #c8102e; }
:root[data-ht-theme="noel"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="noel"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #ef4f5e; border-color: #ef4f5e; }
:root[data-ht-theme="noel"] body { background-image: radial-gradient(circle at 100% 0, rgba(30, 123, 60, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(200, 16, 46, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="noel"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(67, 184, 102, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(239, 79, 94, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="noel"] {
  --ht-body-bg: #eae2eb; --ht-body-bg-rgb: 234, 226, 235;
  --ht-tertiary-bg: #f7eef3; --ht-tertiary-bg-rgb: 247, 238, 243;
  --ht-gray-100: #f0f5f5; --ht-gray-200: #ebe4ed;
  --ht-emphasis-bg: #fef9fa; --ht-navbar-vertical-card-bg-color: #fef9fa;
  --ht-bg-navbar-glass: rgba(234, 226, 235, 0.96);
}
:root[data-ht-theme="noel"][data-bs-theme="dark"] {
  --ht-body-bg: #25181f; --ht-body-bg-rgb: 37, 24, 31; --ht-quaternary-bg: #25181f; --ht-quaternary-bg-rgb: 37, 24, 31;
  --ht-emphasis-bg: #2d2027; --ht-emphasis-bg-rgb: 45, 32, 39; --ht-navbar-vertical-card-bg-color: #2d2027;
  --ht-tertiary-bg: #31252b; --ht-tertiary-bg-rgb: 49, 37, 43;
  --ht-gray-100: #261e22; --ht-gray-200: #3c3036; --ht-gray-300: #4a3f45;
  --ht-bg-navbar-glass: rgba(37, 24, 31, 0.96); --fc-page-bg-color: #25181f;
}
:root[data-ht-theme="noel"][data-ht-tint="strong"] {
  --ht-body-bg: #e8d2dd; --ht-body-bg-rgb: 232, 210, 221;
  --ht-tertiary-bg: #f4e3e8; --ht-tertiary-bg-rgb: 244, 227, 232;
  --ht-gray-100: #e7f0ee; --ht-gray-200: #e9d7e1;
  --ht-emphasis-bg: #fcf3f5; --ht-navbar-vertical-card-bg-color: #fcf3f5;
  --ht-bg-navbar-glass: rgba(232, 210, 221, 0.96);
}
:root[data-ht-theme="noel"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #3a1e25; --ht-body-bg-rgb: 58, 30, 37; --ht-quaternary-bg: #3a1e25; --ht-quaternary-bg-rgb: 58, 30, 37;
  --ht-emphasis-bg: #41262d; --ht-emphasis-bg-rgb: 65, 38, 45; --ht-navbar-vertical-card-bg-color: #41262d;
  --ht-tertiary-bg: #452a31; --ht-tertiary-bg-rgb: 69, 42, 49;
  --ht-gray-100: #3b2a2a; --ht-gray-200: #4e353c; --ht-gray-300: #5c444a;
  --ht-bg-navbar-glass: rgba(58, 30, 37, 0.96); --fc-page-bg-color: #3a1e25;
}
:root[data-ht-theme="noel"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fef9fa; }
:root[data-ht-theme="noel"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fcf3f5; }
:root[data-ht-theme="noel"][data-ht-deco] .ht-main::before, :root[data-ht-theme="noel"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8E%84%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%E2%9D%84%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8E%81%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8E%84%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%E2%9D%84%EF%B8%8F%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="noel"][data-ht-deco] .ht-logo::after { content: "🎄"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── ❄️ Hiver */
:root[data-ht-theme="hiver"] {
  --ht-primary: #2b8fc7; --ht-primary-rgb: 43, 143, 199;
  --ht-link-color: #2b8fc7; --ht-link-color-rgb: 43, 143, 199; --ht-link-hover-color: #22729f;
  --ht-primary-text-emphasis: #1e648b;
  --ht-primary-bg-subtle: #dfeef7;
  --ht-primary-border-subtle: #aed4ea;
  --ht-btn-ht-primary-color: #2b8fc7;
  --ht-btn-ht-primary-hover-color: #2375a3;
  --ht-btn-ht-primary-active-background: #d9ebf5;
  --ht-info: #6c7fd8; --ht-info-rgb: 108, 127, 216;
  --ht-accent: #6c7fd8; --ht-accent-rgb: 108, 127, 216;
}
:root[data-ht-theme="hiver"][data-bs-theme="dark"] {
  --ht-primary: #5cbbe9; --ht-primary-rgb: 92, 187, 233;
  --ht-link-color: #5cbbe9; --ht-link-color-rgb: 92, 187, 233; --ht-link-hover-color: #7dc9ed;
  --ht-primary-text-emphasis: #b6e0f5;
  --ht-primary-bg-subtle: #22455d;
  --ht-primary-border-subtle: #2f617e;
  --ht-btn-ht-primary-color: #5cbbe9;
  --ht-btn-ht-primary-hover-color: #7dc9ed;
  --ht-btn-ht-primary-active-background: #12252f;
  --ht-info: #94a3ef; --ht-info-rgb: 148, 163, 239;
  --ht-accent: #94a3ef; --ht-accent-rgb: 148, 163, 239;
}
:root[data-ht-theme="hiver"] .btn-primary { --ht-btn-bg: #2b8fc7; --ht-btn-border-color: #2b8fc7; --ht-btn-hover-bg: #257bab; --ht-btn-hover-border-color: #2375a3;
  --ht-btn-active-bg: #22729f; --ht-btn-active-border-color: #216d97; --ht-btn-disabled-bg: #2b8fc7; --ht-btn-disabled-border-color: #2b8fc7; --ht-btn-focus-shadow-rgb: 43, 143, 199; }
:root[data-ht-theme="hiver"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #5cbbe9; --ht-btn-border-color: #5cbbe9; --ht-btn-hover-bg: #51a5cd; --ht-btn-hover-border-color: #4d9dc4;
  --ht-btn-active-bg: #4a96ba; --ht-btn-disabled-bg: #5cbbe9; --ht-btn-disabled-border-color: #5cbbe9; --ht-btn-focus-shadow-rgb: 92, 187, 233; }
:root[data-ht-theme="hiver"] .form-check-input:checked, :root[data-ht-theme="hiver"] .form-check-input[type=checkbox]:indeterminate { background-color: #2b8fc7; border-color: #2b8fc7; }
:root[data-ht-theme="hiver"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="hiver"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #5cbbe9; border-color: #5cbbe9; }
:root[data-ht-theme="hiver"] body { background-image: radial-gradient(circle at 100% 0, rgba(108, 127, 216, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(43, 143, 199, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="hiver"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(148, 163, 239, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(92, 187, 233, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="hiver"] {
  --ht-body-bg: #dfebf6; --ht-body-bg-rgb: 223, 235, 246;
  --ht-tertiary-bg: #eff5fa; --ht-tertiary-bg-rgb: 239, 245, 250;
  --ht-gray-100: #f3f5fc; --ht-gray-200: #e1ecf6;
  --ht-emphasis-bg: #fafcfe; --ht-navbar-vertical-card-bg-color: #fafcfe;
  --ht-bg-navbar-glass: rgba(223, 235, 246, 0.96);
}
:root[data-ht-theme="hiver"][data-bs-theme="dark"] {
  --ht-body-bg: #17232d; --ht-body-bg-rgb: 23, 35, 45; --ht-quaternary-bg: #17232d; --ht-quaternary-bg-rgb: 23, 35, 45;
  --ht-emphasis-bg: #1f2b34; --ht-emphasis-bg-rgb: 31, 43, 52; --ht-navbar-vertical-card-bg-color: #1f2b34;
  --ht-tertiary-bg: #242f39; --ht-tertiary-bg-rgb: 36, 47, 57;
  --ht-gray-100: #1c2835; --ht-gray-200: #2f3a42; --ht-gray-300: #3e4950;
  --ht-bg-navbar-glass: rgba(23, 35, 45, 0.96); --fc-page-bg-color: #17232d;
}
:root[data-ht-theme="hiver"][data-ht-tint="strong"] {
  --ht-body-bg: #d2e4f2; --ht-body-bg-rgb: 210, 228, 242;
  --ht-tertiary-bg: #e4eff8; --ht-tertiary-bg-rgb: 228, 239, 248;
  --ht-gray-100: #eef0fa; --ht-gray-200: #d6e6f3;
  --ht-emphasis-bg: #f4f9fc; --ht-navbar-vertical-card-bg-color: #f4f9fc;
  --ht-bg-navbar-glass: rgba(210, 228, 242, 0.96);
}
:root[data-ht-theme="hiver"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #1e3240; --ht-body-bg-rgb: 30, 50, 64; --ht-quaternary-bg: #1e3240; --ht-quaternary-bg-rgb: 30, 50, 64;
  --ht-emphasis-bg: #263947; --ht-emphasis-bg-rgb: 38, 57, 71; --ht-navbar-vertical-card-bg-color: #263947;
  --ht-tertiary-bg: #2a3d4b; --ht-tertiary-bg-rgb: 42, 61, 75;
  --ht-gray-100: #273b4d; --ht-gray-200: #354754; --ht-gray-300: #445561;
  --ht-bg-navbar-glass: rgba(30, 50, 64, 0.96); --fc-page-bg-color: #1e3240;
}
:root[data-ht-theme="hiver"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fafcfe; }
:root[data-ht-theme="hiver"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f4f9fc; }
:root[data-ht-theme="hiver"][data-ht-deco] .ht-main::before, :root[data-ht-theme="hiver"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%E2%9D%84%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%E2%9B%84%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%E2%9D%84%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%E2%9B%84%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%E2%9D%84%EF%B8%8F%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="hiver"][data-ht-deco] .ht-logo::after { content: "❄️"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 💘 Saint-Valentin */
:root[data-ht-theme="valentin"] {
  --ht-primary: #d63a72; --ht-primary-rgb: 214, 58, 114;
  --ht-link-color: #d63a72; --ht-link-color-rgb: 214, 58, 114; --ht-link-hover-color: #ab2e5b;
  --ht-primary-text-emphasis: #962950;
  --ht-primary-bg-subtle: #f9e1ea;
  --ht-primary-border-subtle: #efb4c9;
  --ht-btn-ht-primary-color: #d63a72;
  --ht-btn-ht-primary-hover-color: #af305d;
  --ht-btn-ht-primary-active-background: #f8dce6;
  --ht-info: #a8328a; --ht-info-rgb: 168, 50, 138;
  --ht-accent: #a8328a; --ht-accent-rgb: 168, 50, 138;
}
:root[data-ht-theme="valentin"][data-bs-theme="dark"] {
  --ht-primary: #f06b98; --ht-primary-rgb: 240, 107, 152;
  --ht-link-color: #f06b98; --ht-link-color-rgb: 240, 107, 152; --ht-link-hover-color: #f389ad;
  --ht-primary-text-emphasis: #f8bcd1;
  --ht-primary-bg-subtle: #4b2f47;
  --ht-primary-border-subtle: #723d5a;
  --ht-btn-ht-primary-color: #f06b98;
  --ht-btn-ht-primary-hover-color: #f389ad;
  --ht-btn-ht-primary-active-background: #30151e;
  --ht-info: #d86bbc; --ht-info-rgb: 216, 107, 188;
  --ht-accent: #d86bbc; --ht-accent-rgb: 216, 107, 188;
}
:root[data-ht-theme="valentin"] .btn-primary { --ht-btn-bg: #d63a72; --ht-btn-border-color: #d63a72; --ht-btn-hover-bg: #b83262; --ht-btn-hover-border-color: #af305d;
  --ht-btn-active-bg: #ab2e5b; --ht-btn-active-border-color: #a32c57; --ht-btn-disabled-bg: #d63a72; --ht-btn-disabled-border-color: #d63a72; --ht-btn-focus-shadow-rgb: 214, 58, 114; }
:root[data-ht-theme="valentin"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #f06b98; --ht-btn-border-color: #f06b98; --ht-btn-hover-bg: #d35e86; --ht-btn-hover-border-color: #ca5a80;
  --ht-btn-active-bg: #c0567a; --ht-btn-disabled-bg: #f06b98; --ht-btn-disabled-border-color: #f06b98; --ht-btn-focus-shadow-rgb: 240, 107, 152; }
:root[data-ht-theme="valentin"] .form-check-input:checked, :root[data-ht-theme="valentin"] .form-check-input[type=checkbox]:indeterminate { background-color: #d63a72; border-color: #d63a72; }
:root[data-ht-theme="valentin"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="valentin"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #f06b98; border-color: #f06b98; }
:root[data-ht-theme="valentin"] body { background-image: radial-gradient(circle at 100% 0, rgba(168, 50, 138, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(214, 58, 114, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="valentin"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(216, 107, 188, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(240, 107, 152, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="valentin"] {
  --ht-body-bg: #ebe5f0; --ht-body-bg-rgb: 235, 229, 240;
  --ht-tertiary-bg: #f7f0f6; --ht-tertiary-bg-rgb: 247, 240, 246;
  --ht-gray-100: #f6f2f8; --ht-gray-200: #ece7f1;
  --ht-emphasis-bg: #fefafb; --ht-navbar-vertical-card-bg-color: #fefafb;
  --ht-bg-navbar-glass: rgba(235, 229, 240, 0.96);
}
:root[data-ht-theme="valentin"][data-bs-theme="dark"] {
  --ht-body-bg: #261b25; --ht-body-bg-rgb: 38, 27, 37; --ht-quaternary-bg: #261b25; --ht-quaternary-bg-rgb: 38, 27, 37;
  --ht-emphasis-bg: #2e232d; --ht-emphasis-bg-rgb: 46, 35, 45; --ht-navbar-vertical-card-bg-color: #2e232d;
  --ht-tertiary-bg: #322831; --ht-tertiary-bg-rgb: 50, 40, 49;
  --ht-gray-100: #2d1e2b; --ht-gray-200: #3d323c; --ht-gray-300: #4b424a;
  --ht-bg-navbar-glass: rgba(38, 27, 37, 0.96); --fc-page-bg-color: #261b25;
}
:root[data-ht-theme="valentin"][data-ht-tint="strong"] {
  --ht-body-bg: #ead8e6; --ht-body-bg-rgb: 234, 216, 230;
  --ht-tertiary-bg: #f6e7ef; --ht-tertiary-bg-rgb: 246, 231, 239;
  --ht-gray-100: #f3eaf4; --ht-gray-200: #eadce9;
  --ht-emphasis-bg: #fdf5f8; --ht-navbar-vertical-card-bg-color: #fdf5f8;
  --ht-bg-navbar-glass: rgba(234, 216, 230, 0.96);
}
:root[data-ht-theme="valentin"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #3a2330; --ht-body-bg-rgb: 58, 35, 48; --ht-quaternary-bg: #3a2330; --ht-quaternary-bg-rgb: 58, 35, 48;
  --ht-emphasis-bg: #412b37; --ht-emphasis-bg-rgb: 65, 43, 55; --ht-navbar-vertical-card-bg-color: #412b37;
  --ht-tertiary-bg: #452f3b; --ht-tertiary-bg-rgb: 69, 47, 59;
  --ht-gray-100: #46283b; --ht-gray-200: #4e3a45; --ht-gray-300: #5c4953;
  --ht-bg-navbar-glass: rgba(58, 35, 48, 0.96); --fc-page-bg-color: #3a2330;
}
:root[data-ht-theme="valentin"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fefafb; }
:root[data-ht-theme="valentin"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fdf5f8; }
:root[data-ht-theme="valentin"][data-ht-deco] .ht-main::before, :root[data-ht-theme="valentin"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%92%98%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%92%95%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%92%98%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%92%95%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%92%98%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="valentin"][data-ht-deco] .ht-logo::after { content: "💘"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── ☘️ Saint-Patrick */
:root[data-ht-theme="stpatrick"] {
  --ht-primary: #178a4a; --ht-primary-rgb: 23, 138, 74;
  --ht-link-color: #178a4a; --ht-link-color-rgb: 23, 138, 74; --ht-link-hover-color: #126e3b;
  --ht-primary-text-emphasis: #106134;
  --ht-primary-bg-subtle: #dcede4;
  --ht-primary-border-subtle: #a7d3ba;
  --ht-btn-ht-primary-color: #178a4a;
  --ht-btn-ht-primary-hover-color: #13713d;
  --ht-btn-ht-primary-active-background: #d5eade;
  --ht-info: #c9a227; --ht-info-rgb: 201, 162, 39;
  --ht-accent: #c9a227; --ht-accent-rgb: 201, 162, 39;
}
:root[data-ht-theme="stpatrick"][data-bs-theme="dark"] {
  --ht-primary: #34c172; --ht-primary-rgb: 52, 193, 114;
  --ht-link-color: #34c172; --ht-link-color-rgb: 52, 193, 114; --ht-link-hover-color: #5dcd8e;
  --ht-primary-text-emphasis: #a4e3c0;
  --ht-primary-bg-subtle: #16473c;
  --ht-primary-border-subtle: #1d6349;
  --ht-btn-ht-primary-color: #34c172;
  --ht-btn-ht-primary-hover-color: #5dcd8e;
  --ht-btn-ht-primary-active-background: #0a2717;
  --ht-info: #e3c14f; --ht-info-rgb: 227, 193, 79;
  --ht-accent: #e3c14f; --ht-accent-rgb: 227, 193, 79;
}
:root[data-ht-theme="stpatrick"] .btn-primary { --ht-btn-bg: #178a4a; --ht-btn-border-color: #178a4a; --ht-btn-hover-bg: #147740; --ht-btn-hover-border-color: #13713d;
  --ht-btn-active-bg: #126e3b; --ht-btn-active-border-color: #116938; --ht-btn-disabled-bg: #178a4a; --ht-btn-disabled-border-color: #178a4a; --ht-btn-focus-shadow-rgb: 23, 138, 74; }
:root[data-ht-theme="stpatrick"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #34c172; --ht-btn-border-color: #34c172; --ht-btn-hover-bg: #2eaa64; --ht-btn-hover-border-color: #2ca260;
  --ht-btn-active-bg: #2a9a5b; --ht-btn-disabled-bg: #34c172; --ht-btn-disabled-border-color: #34c172; --ht-btn-focus-shadow-rgb: 52, 193, 114; }
:root[data-ht-theme="stpatrick"] .form-check-input:checked, :root[data-ht-theme="stpatrick"] .form-check-input[type=checkbox]:indeterminate { background-color: #178a4a; border-color: #178a4a; }
:root[data-ht-theme="stpatrick"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="stpatrick"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #34c172; border-color: #34c172; }
:root[data-ht-theme="stpatrick"] body { background-image: radial-gradient(circle at 100% 0, rgba(201, 162, 39, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(23, 138, 74, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="stpatrick"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(227, 193, 79, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(52, 193, 114, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="stpatrick"] {
  --ht-body-bg: #deebed; --ht-body-bg-rgb: 222, 235, 237;
  --ht-tertiary-bg: #eef4f4; --ht-tertiary-bg-rgb: 238, 244, 244;
  --ht-gray-100: #f7f6f4; --ht-gray-200: #e0ecef;
  --ht-emphasis-bg: #f9fcfa; --ht-navbar-vertical-card-bg-color: #f9fcfa;
  --ht-bg-navbar-glass: rgba(222, 235, 237, 0.96);
}
:root[data-ht-theme="stpatrick"][data-bs-theme="dark"] {
  --ht-body-bg: #132421; --ht-body-bg-rgb: 19, 36, 33; --ht-quaternary-bg: #132421; --ht-quaternary-bg-rgb: 19, 36, 33;
  --ht-emphasis-bg: #1b2c29; --ht-emphasis-bg-rgb: 27, 44, 41; --ht-navbar-vertical-card-bg-color: #1b2c29;
  --ht-tertiary-bg: #20302d; --ht-tertiary-bg-rgb: 32, 48, 45;
  --ht-gray-100: #1b2a23; --ht-gray-200: #2b3b38; --ht-gray-300: #3b4a47;
  --ht-bg-navbar-glass: rgba(19, 36, 33, 0.96); --fc-page-bg-color: #132421;
}
:root[data-ht-theme="stpatrick"][data-ht-tint="strong"] {
  --ht-body-bg: #cfe3e1; --ht-body-bg-rgb: 207, 227, 225;
  --ht-tertiary-bg: #e2efeb; --ht-tertiary-bg-rgb: 226, 239, 235;
  --ht-gray-100: #f5f3ec; --ht-gray-200: #d3e6e4;
  --ht-emphasis-bg: #f3f9f6; --ht-navbar-vertical-card-bg-color: #f3f9f6;
  --ht-bg-navbar-glass: rgba(207, 227, 225, 0.96);
}
:root[data-ht-theme="stpatrick"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #163329; --ht-body-bg-rgb: 22, 51, 41; --ht-quaternary-bg: #163329; --ht-quaternary-bg-rgb: 22, 51, 41;
  --ht-emphasis-bg: #1e3a30; --ht-emphasis-bg-rgb: 30, 58, 48; --ht-navbar-vertical-card-bg-color: #1e3a30;
  --ht-tertiary-bg: #233e35; --ht-tertiary-bg-rgb: 35, 62, 53;
  --ht-gray-100: #263e2c; --ht-gray-200: #2e483e; --ht-gray-300: #3e564d;
  --ht-bg-navbar-glass: rgba(22, 51, 41, 0.96); --fc-page-bg-color: #163329;
}
:root[data-ht-theme="stpatrick"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f9fcfa; }
:root[data-ht-theme="stpatrick"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f3f9f6; }
:root[data-ht-theme="stpatrick"][data-ht-deco] .ht-main::before, :root[data-ht-theme="stpatrick"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%E2%98%98%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%8D%80%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%E2%98%98%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8D%80%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%E2%98%98%EF%B8%8F%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="stpatrick"][data-ht-deco] .ht-logo::after { content: "☘️"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🌷 Printemps */
:root[data-ht-theme="printemps"] {
  --ht-primary: #8a62c4; --ht-primary-rgb: 138, 98, 196;
  --ht-link-color: #8a62c4; --ht-link-color-rgb: 138, 98, 196; --ht-link-hover-color: #6e4e9d;
  --ht-primary-text-emphasis: #614589;
  --ht-primary-bg-subtle: #ede7f6;
  --ht-primary-border-subtle: #d3c3e9;
  --ht-btn-ht-primary-color: #8a62c4;
  --ht-btn-ht-primary-hover-color: #7150a1;
  --ht-btn-ht-primary-active-background: #eae3f4;
  --ht-info: #3fa66b; --ht-info-rgb: 63, 166, 107;
  --ht-accent: #3fa66b; --ht-accent-rgb: 63, 166, 107;
}
:root[data-ht-theme="printemps"][data-bs-theme="dark"] {
  --ht-primary: #ad8de6; --ht-primary-rgb: 173, 141, 230;
  --ht-link-color: #ad8de6; --ht-link-color-rgb: 173, 141, 230; --ht-link-hover-color: #bda4eb;
  --ht-primary-text-emphasis: #daccf4;
  --ht-primary-bg-subtle: #38385c;
  --ht-primary-border-subtle: #544c7d;
  --ht-btn-ht-primary-color: #ad8de6;
  --ht-btn-ht-primary-hover-color: #bda4eb;
  --ht-btn-ht-primary-active-background: #231c2e;
  --ht-info: #63c98d; --ht-info-rgb: 99, 201, 141;
  --ht-accent: #63c98d; --ht-accent-rgb: 99, 201, 141;
}
:root[data-ht-theme="printemps"] .btn-primary { --ht-btn-bg: #8a62c4; --ht-btn-border-color: #8a62c4; --ht-btn-hover-bg: #7754a9; --ht-btn-hover-border-color: #7150a1;
  --ht-btn-active-bg: #6e4e9d; --ht-btn-active-border-color: #694a95; --ht-btn-disabled-bg: #8a62c4; --ht-btn-disabled-border-color: #8a62c4; --ht-btn-focus-shadow-rgb: 138, 98, 196; }
:root[data-ht-theme="printemps"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #ad8de6; --ht-btn-border-color: #ad8de6; --ht-btn-hover-bg: #987cca; --ht-btn-hover-border-color: #9176c1;
  --ht-btn-active-bg: #8a71b8; --ht-btn-disabled-bg: #ad8de6; --ht-btn-disabled-border-color: #ad8de6; --ht-btn-focus-shadow-rgb: 173, 141, 230; }
:root[data-ht-theme="printemps"] .form-check-input:checked, :root[data-ht-theme="printemps"] .form-check-input[type=checkbox]:indeterminate { background-color: #8a62c4; border-color: #8a62c4; }
:root[data-ht-theme="printemps"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="printemps"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #ad8de6; border-color: #ad8de6; }
:root[data-ht-theme="printemps"] body { background-image: radial-gradient(circle at 100% 0, rgba(63, 166, 107, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(138, 98, 196, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="printemps"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(99, 201, 141, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(173, 141, 230, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="printemps"] {
  --ht-body-bg: #e6e8f5; --ht-body-bg-rgb: 230, 232, 245;
  --ht-tertiary-bg: #f3f2fa; --ht-tertiary-bg-rgb: 243, 242, 250;
  --ht-gray-100: #f2f7f7; --ht-gray-200: #e7e9f6;
  --ht-emphasis-bg: #fcfbfe; --ht-navbar-vertical-card-bg-color: #fcfbfe;
  --ht-bg-navbar-glass: rgba(230, 232, 245, 0.96);
}
:root[data-ht-theme="printemps"][data-bs-theme="dark"] {
  --ht-body-bg: #1f1e2d; --ht-body-bg-rgb: 31, 30, 45; --ht-quaternary-bg: #1f1e2d; --ht-quaternary-bg-rgb: 31, 30, 45;
  --ht-emphasis-bg: #272634; --ht-emphasis-bg-rgb: 39, 38, 52; --ht-navbar-vertical-card-bg-color: #272634;
  --ht-tertiary-bg: #2b2a39; --ht-tertiary-bg-rgb: 43, 42, 57;
  --ht-gray-100: #222531; --ht-gray-200: #363542; --ht-gray-300: #454450;
  --ht-bg-navbar-glass: rgba(31, 30, 45, 0.96); --fc-page-bg-color: #1f1e2d;
}
:root[data-ht-theme="printemps"][data-ht-tint="strong"] {
  --ht-body-bg: #dfdef2; --ht-body-bg-rgb: 223, 222, 242;
  --ht-tertiary-bg: #eeebf7; --ht-tertiary-bg-rgb: 238, 235, 247;
  --ht-gray-100: #eaf3f1; --ht-gray-200: #e1e1f3;
  --ht-emphasis-bg: #f9f7fc; --ht-navbar-vertical-card-bg-color: #f9f7fc;
  --ht-bg-navbar-glass: rgba(223, 222, 242, 0.96);
}
:root[data-ht-theme="printemps"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #2d293f; --ht-body-bg-rgb: 45, 41, 63; --ht-quaternary-bg: #2d293f; --ht-quaternary-bg-rgb: 45, 41, 63;
  --ht-emphasis-bg: #343046; --ht-emphasis-bg-rgb: 52, 48, 70; --ht-navbar-vertical-card-bg-color: #343046;
  --ht-tertiary-bg: #39354a; --ht-tertiary-bg-rgb: 57, 53, 74;
  --ht-gray-100: #313545; --ht-gray-200: #423e53; --ht-gray-300: #504d60;
  --ht-bg-navbar-glass: rgba(45, 41, 63, 0.96); --fc-page-bg-color: #2d293f;
}
:root[data-ht-theme="printemps"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fcfbfe; }
:root[data-ht-theme="printemps"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f9f7fc; }
:root[data-ht-theme="printemps"][data-ht-deco] .ht-main::before, :root[data-ht-theme="printemps"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8C%B7%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%8C%B8%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8C%B7%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8C%B8%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%8C%B7%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="printemps"][data-ht-deco] .ht-logo::after { content: "🌷"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── ☀️ Été */
:root[data-ht-theme="ete"] {
  --ht-primary: #0b9a9a; --ht-primary-rgb: 11, 154, 154;
  --ht-link-color: #0b9a9a; --ht-link-color-rgb: 11, 154, 154; --ht-link-hover-color: #097b7b;
  --ht-primary-text-emphasis: #086c6c;
  --ht-primary-bg-subtle: #daf0f0;
  --ht-primary-border-subtle: #a2d9d9;
  --ht-btn-ht-primary-color: #0b9a9a;
  --ht-btn-ht-primary-hover-color: #097e7e;
  --ht-btn-ht-primary-active-background: #d3eded;
  --ht-info: #f09a00; --ht-info-rgb: 240, 154, 0;
  --ht-accent: #f09a00; --ht-accent-rgb: 240, 154, 0;
}
:root[data-ht-theme="ete"][data-bs-theme="dark"] {
  --ht-primary: #2ccaca; --ht-primary-rgb: 44, 202, 202;
  --ht-link-color: #2ccaca; --ht-link-color-rgb: 44, 202, 202; --ht-link-hover-color: #56d5d5;
  --ht-primary-text-emphasis: #a0e7e7;
  --ht-primary-bg-subtle: #144955;
  --ht-primary-border-subtle: #1a6870;
  --ht-btn-ht-primary-color: #2ccaca;
  --ht-btn-ht-primary-hover-color: #56d5d5;
  --ht-btn-ht-primary-active-background: #092828;
  --ht-info: #ffb733; --ht-info-rgb: 255, 183, 51;
  --ht-accent: #ffb733; --ht-accent-rgb: 255, 183, 51;
}
:root[data-ht-theme="ete"] .btn-primary { --ht-btn-bg: #0b9a9a; --ht-btn-border-color: #0b9a9a; --ht-btn-hover-bg: #098484; --ht-btn-hover-border-color: #097e7e;
  --ht-btn-active-bg: #097b7b; --ht-btn-active-border-color: #087575; --ht-btn-disabled-bg: #0b9a9a; --ht-btn-disabled-border-color: #0b9a9a; --ht-btn-focus-shadow-rgb: 11, 154, 154; }
:root[data-ht-theme="ete"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #2ccaca; --ht-btn-border-color: #2ccaca; --ht-btn-hover-bg: #27b2b2; --ht-btn-hover-border-color: #25aaaa;
  --ht-btn-active-bg: #23a2a2; --ht-btn-disabled-bg: #2ccaca; --ht-btn-disabled-border-color: #2ccaca; --ht-btn-focus-shadow-rgb: 44, 202, 202; }
:root[data-ht-theme="ete"] .form-check-input:checked, :root[data-ht-theme="ete"] .form-check-input[type=checkbox]:indeterminate { background-color: #0b9a9a; border-color: #0b9a9a; }
:root[data-ht-theme="ete"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="ete"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #2ccaca; border-color: #2ccaca; }
:root[data-ht-theme="ete"] body { background-image: radial-gradient(circle at 100% 0, rgba(240, 154, 0, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(11, 154, 154, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="ete"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(255, 183, 51, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(44, 202, 202, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="ete"] {
  --ht-body-bg: #ddecf2; --ht-body-bg-rgb: 221, 236, 242;
  --ht-tertiary-bg: #edf5f8; --ht-tertiary-bg-rgb: 237, 245, 248;
  --ht-gray-100: #f9f6f3; --ht-gray-200: #dfedf3;
  --ht-emphasis-bg: #f9fcfc; --ht-navbar-vertical-card-bg-color: #f9fcfc;
  --ht-bg-navbar-glass: rgba(221, 236, 242, 0.96);
}
:root[data-ht-theme="ete"][data-bs-theme="dark"] {
  --ht-body-bg: #12242a; --ht-body-bg-rgb: 18, 36, 42; --ht-quaternary-bg: #12242a; --ht-quaternary-bg-rgb: 18, 36, 42;
  --ht-emphasis-bg: #1a2c31; --ht-emphasis-bg-rgb: 26, 44, 49; --ht-navbar-vertical-card-bg-color: #1a2c31;
  --ht-tertiary-bg: #1f3036; --ht-tertiary-bg-rgb: 31, 48, 54;
  --ht-gray-100: #1b2a2a; --ht-gray-200: #2a3b3f; --ht-gray-300: #3a4a4e;
  --ht-bg-navbar-glass: rgba(18, 36, 42, 0.96); --fc-page-bg-color: #12242a;
}
:root[data-ht-theme="ete"][data-ht-tint="strong"] {
  --ht-body-bg: #cde6ec; --ht-body-bg-rgb: 205, 230, 236;
  --ht-tertiary-bg: #e1f0f3; --ht-tertiary-bg-rgb: 225, 240, 243;
  --ht-gray-100: #f8f2e9; --ht-gray-200: #d2e7ee;
  --ht-emphasis-bg: #f3fafa; --ht-navbar-vertical-card-bg-color: #f3fafa;
  --ht-bg-navbar-glass: rgba(205, 230, 236, 0.96);
}
:root[data-ht-theme="ete"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #15353a; --ht-body-bg-rgb: 21, 53, 58; --ht-quaternary-bg: #15353a; --ht-quaternary-bg-rgb: 21, 53, 58;
  --ht-emphasis-bg: #1d3c41; --ht-emphasis-bg-rgb: 29, 60, 65; --ht-navbar-vertical-card-bg-color: #1d3c41;
  --ht-tertiary-bg: #224045; --ht-tertiary-bg-rgb: 34, 64, 69;
  --ht-gray-100: #273f39; --ht-gray-200: #2d4a4e; --ht-gray-300: #3d575c;
  --ht-bg-navbar-glass: rgba(21, 53, 58, 0.96); --fc-page-bg-color: #15353a;
}
:root[data-ht-theme="ete"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f9fcfc; }
:root[data-ht-theme="ete"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f3fafa; }
:root[data-ht-theme="ete"][data-ht-deco] .ht-main::before, :root[data-ht-theme="ete"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%E2%98%80%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%8C%B4%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%E2%98%80%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8C%B4%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%E2%98%80%EF%B8%8F%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="ete"][data-ht-deco] .ht-logo::after { content: "☀️"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🍁 Automne */
:root[data-ht-theme="automne"] {
  --ht-primary: #b4502a; --ht-primary-rgb: 180, 80, 42;
  --ht-link-color: #b4502a; --ht-link-color-rgb: 180, 80, 42; --ht-link-hover-color: #904022;
  --ht-primary-text-emphasis: #7e381d;
  --ht-primary-bg-subtle: #f4e5df;
  --ht-primary-border-subtle: #e3bdae;
  --ht-btn-ht-primary-color: #b4502a;
  --ht-btn-ht-primary-hover-color: #944222;
  --ht-btn-ht-primary-active-background: #f2e0d9;
  --ht-info: #b9860f; --ht-info-rgb: 185, 134, 15;
  --ht-accent: #b9860f; --ht-accent-rgb: 185, 134, 15;
}
:root[data-ht-theme="automne"][data-bs-theme="dark"] {
  --ht-primary: #e07a48; --ht-primary-rgb: 224, 122, 72;
  --ht-link-color: #e07a48; --ht-link-color-rgb: 224, 122, 72; --ht-link-hover-color: #e6956d;
  --ht-primary-text-emphasis: #f1c3ad;
  --ht-primary-bg-subtle: #473330;
  --ht-primary-border-subtle: #6b4436;
  --ht-btn-ht-primary-color: #e07a48;
  --ht-btn-ht-primary-hover-color: #e6956d;
  --ht-btn-ht-primary-active-background: #2d180e;
  --ht-info: #e2b23c; --ht-info-rgb: 226, 178, 60;
  --ht-accent: #e2b23c; --ht-accent-rgb: 226, 178, 60;
}
:root[data-ht-theme="automne"] .btn-primary { --ht-btn-bg: #b4502a; --ht-btn-border-color: #b4502a; --ht-btn-hover-bg: #9b4524; --ht-btn-hover-border-color: #944222;
  --ht-btn-active-bg: #904022; --ht-btn-active-border-color: #893d20; --ht-btn-disabled-bg: #b4502a; --ht-btn-disabled-border-color: #b4502a; --ht-btn-focus-shadow-rgb: 180, 80, 42; }
:root[data-ht-theme="automne"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #e07a48; --ht-btn-border-color: #e07a48; --ht-btn-hover-bg: #c56b3f; --ht-btn-hover-border-color: #bc663c;
  --ht-btn-active-bg: #b3623a; --ht-btn-disabled-bg: #e07a48; --ht-btn-disabled-border-color: #e07a48; --ht-btn-focus-shadow-rgb: 224, 122, 72; }
:root[data-ht-theme="automne"] .form-check-input:checked, :root[data-ht-theme="automne"] .form-check-input[type=checkbox]:indeterminate { background-color: #b4502a; border-color: #b4502a; }
:root[data-ht-theme="automne"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="automne"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #e07a48; border-color: #e07a48; }
:root[data-ht-theme="automne"] body { background-image: radial-gradient(circle at 100% 0, rgba(185, 134, 15, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(180, 80, 42, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="automne"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(226, 178, 60, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(224, 122, 72, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="automne"] {
  --ht-body-bg: #e9e7eb; --ht-body-bg-rgb: 233, 231, 235;
  --ht-tertiary-bg: #f6f2f2; --ht-tertiary-bg-rgb: 246, 242, 242;
  --ht-gray-100: #f6f5f3; --ht-gray-200: #eae8ed;
  --ht-emphasis-bg: #fdfbfa; --ht-navbar-vertical-card-bg-color: #fdfbfa;
  --ht-bg-navbar-glass: rgba(233, 231, 235, 0.96);
}
:root[data-ht-theme="automne"][data-bs-theme="dark"] {
  --ht-body-bg: #241c1d; --ht-body-bg-rgb: 36, 28, 29; --ht-quaternary-bg: #241c1d; --ht-quaternary-bg-rgb: 36, 28, 29;
  --ht-emphasis-bg: #2c2425; --ht-emphasis-bg-rgb: 44, 36, 37; --ht-navbar-vertical-card-bg-color: #2c2425;
  --ht-tertiary-bg: #302829; --ht-tertiary-bg-rgb: 48, 40, 41;
  --ht-gray-100: #2c221e; --ht-gray-200: #3b3334; --ht-gray-300: #4a4344;
  --ht-bg-navbar-glass: rgba(36, 28, 29, 0.96); --fc-page-bg-color: #241c1d;
}
:root[data-ht-theme="automne"][data-ht-tint="strong"] {
  --ht-body-bg: #e5dbdc; --ht-body-bg-rgb: 229, 219, 220;
  --ht-tertiary-bg: #f2e9e8; --ht-tertiary-bg-rgb: 242, 233, 232;
  --ht-gray-100: #f4f1ea; --ht-gray-200: #e6dfe0;
  --ht-emphasis-bg: #fbf6f4; --ht-navbar-vertical-card-bg-color: #fbf6f4;
  --ht-bg-navbar-glass: rgba(229, 219, 220, 0.96);
}
:root[data-ht-theme="automne"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #372621; --ht-body-bg-rgb: 55, 38, 33; --ht-quaternary-bg: #372621; --ht-quaternary-bg-rgb: 55, 38, 33;
  --ht-emphasis-bg: #3e2e29; --ht-emphasis-bg-rgb: 62, 46, 41; --ht-navbar-vertical-card-bg-color: #3e2e29;
  --ht-tertiary-bg: #42322d; --ht-tertiary-bg-rgb: 66, 50, 45;
  --ht-gray-100: #443123; --ht-gray-200: #4c3d38; --ht-gray-300: #594b47;
  --ht-bg-navbar-glass: rgba(55, 38, 33, 0.96); --fc-page-bg-color: #372621;
}
:root[data-ht-theme="automne"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fdfbfa; }
:root[data-ht-theme="automne"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fbf6f4; }
:root[data-ht-theme="automne"][data-ht-deco] .ht-main::before, :root[data-ht-theme="automne"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8D%81%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%8D%82%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8D%81%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8D%82%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%8D%81%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="automne"][data-ht-deco] .ht-logo::after { content: "🍁"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🌲 Forêt */
:root[data-ht-theme="foret"] {
  --ht-primary: #2f7d4f; --ht-primary-rgb: 47, 125, 79;
  --ht-link-color: #2f7d4f; --ht-link-color-rgb: 47, 125, 79; --ht-link-hover-color: #26643f;
  --ht-primary-text-emphasis: #215837;
  --ht-primary-bg-subtle: #e0ece5;
  --ht-primary-border-subtle: #b0cebc;
  --ht-btn-ht-primary-color: #2f7d4f;
  --ht-btn-ht-primary-hover-color: #276741;
  --ht-btn-ht-primary-active-background: #dae8df;
  --ht-info: #8a6b3f; --ht-info-rgb: 138, 107, 63;
  --ht-accent: #8a6b3f; --ht-accent-rgb: 138, 107, 63;
}
:root[data-ht-theme="foret"][data-bs-theme="dark"] {
  --ht-primary: #4fb07a; --ht-primary-rgb: 79, 176, 122;
  --ht-link-color: #4fb07a; --ht-link-color-rgb: 79, 176, 122; --ht-link-hover-color: #72c095;
  --ht-primary-text-emphasis: #b0dbc3;
  --ht-primary-bg-subtle: #1e423e;
  --ht-primary-border-subtle: #2a5c4c;
  --ht-btn-ht-primary-color: #4fb07a;
  --ht-btn-ht-primary-hover-color: #72c095;
  --ht-btn-ht-primary-active-background: #102318;
  --ht-info: #c09a66; --ht-info-rgb: 192, 154, 102;
  --ht-accent: #c09a66; --ht-accent-rgb: 192, 154, 102;
}
:root[data-ht-theme="foret"] .btn-primary { --ht-btn-bg: #2f7d4f; --ht-btn-border-color: #2f7d4f; --ht-btn-hover-bg: #286c44; --ht-btn-hover-border-color: #276741;
  --ht-btn-active-bg: #26643f; --ht-btn-active-border-color: #245f3c; --ht-btn-disabled-bg: #2f7d4f; --ht-btn-disabled-border-color: #2f7d4f; --ht-btn-focus-shadow-rgb: 47, 125, 79; }
:root[data-ht-theme="foret"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #4fb07a; --ht-btn-border-color: #4fb07a; --ht-btn-hover-bg: #469b6b; --ht-btn-hover-border-color: #429466;
  --ht-btn-active-bg: #3f8d62; --ht-btn-disabled-bg: #4fb07a; --ht-btn-disabled-border-color: #4fb07a; --ht-btn-focus-shadow-rgb: 79, 176, 122; }
:root[data-ht-theme="foret"] .form-check-input:checked, :root[data-ht-theme="foret"] .form-check-input[type=checkbox]:indeterminate { background-color: #2f7d4f; border-color: #2f7d4f; }
:root[data-ht-theme="foret"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="foret"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #4fb07a; border-color: #4fb07a; }
:root[data-ht-theme="foret"] body { background-image: radial-gradient(circle at 100% 0, rgba(138, 107, 63, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(47, 125, 79, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="foret"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(192, 154, 102, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(79, 176, 122, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="foret"] {
  --ht-body-bg: #e0eaed; --ht-body-bg-rgb: 224, 234, 237;
  --ht-tertiary-bg: #eff4f4; --ht-tertiary-bg-rgb: 239, 244, 244;
  --ht-gray-100: #f5f4f5; --ht-gray-200: #e2ebef;
  --ht-emphasis-bg: #fafcfb; --ht-navbar-vertical-card-bg-color: #fafcfb;
  --ht-bg-navbar-glass: rgba(224, 234, 237, 0.96);
}
:root[data-ht-theme="foret"][data-bs-theme="dark"] {
  --ht-body-bg: #152222; --ht-body-bg-rgb: 21, 34, 34; --ht-quaternary-bg: #152222; --ht-quaternary-bg-rgb: 21, 34, 34;
  --ht-emphasis-bg: #1d2a2a; --ht-emphasis-bg-rgb: 29, 42, 42; --ht-navbar-vertical-card-bg-color: #1d2a2a;
  --ht-tertiary-bg: #222e2e; --ht-tertiary-bg-rgb: 34, 46, 46;
  --ht-gray-100: #1c2725; --ht-gray-200: #2d3939; --ht-gray-300: #3d4848;
  --ht-bg-navbar-glass: rgba(21, 34, 34, 0.96); --fc-page-bg-color: #152222;
}
:root[data-ht-theme="foret"][data-ht-tint="strong"] {
  --ht-body-bg: #d2e2e1; --ht-body-bg-rgb: 210, 226, 225;
  --ht-tertiary-bg: #e5eeec; --ht-tertiary-bg-rgb: 229, 238, 236;
  --ht-gray-100: #f0efee; --ht-gray-200: #d6e4e5;
  --ht-emphasis-bg: #f5f9f6; --ht-navbar-vertical-card-bg-color: #f5f9f6;
  --ht-bg-navbar-glass: rgba(210, 226, 225, 0.96);
}
:root[data-ht-theme="foret"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #1b302b; --ht-body-bg-rgb: 27, 48, 43; --ht-quaternary-bg: #1b302b; --ht-quaternary-bg-rgb: 27, 48, 43;
  --ht-emphasis-bg: #233732; --ht-emphasis-bg-rgb: 35, 55, 50; --ht-navbar-vertical-card-bg-color: #233732;
  --ht-tertiary-bg: #283b37; --ht-tertiary-bg-rgb: 40, 59, 55;
  --ht-gray-100: #28382f; --ht-gray-200: #324540; --ht-gray-300: #42534f;
  --ht-bg-navbar-glass: rgba(27, 48, 43, 0.96); --fc-page-bg-color: #1b302b;
}
:root[data-ht-theme="foret"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fafcfb; }
:root[data-ht-theme="foret"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f5f9f6; }
:root[data-ht-theme="foret"][data-ht-deco] .ht-main::before, :root[data-ht-theme="foret"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8C%B2%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%8C%B2%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8C%B2%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8C%B2%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%8C%B2%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="foret"][data-ht-deco] .ht-logo::after { content: "🌲"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🌃 Néon */
:root[data-ht-theme="neon"] {
  --ht-primary: #d0219e; --ht-primary-rgb: 208, 33, 158;
  --ht-link-color: #d0219e; --ht-link-color-rgb: 208, 33, 158; --ht-link-hover-color: #a61a7e;
  --ht-primary-text-emphasis: #92176f;
  --ht-primary-bg-subtle: #f8def0;
  --ht-primary-border-subtle: #edabda;
  --ht-btn-ht-primary-color: #d0219e;
  --ht-btn-ht-primary-hover-color: #ab1b82;
  --ht-btn-ht-primary-active-background: #f7d7ee;
  --ht-info: #0fb5d8; --ht-info-rgb: 15, 181, 216;
  --ht-accent: #0fb5d8; --ht-accent-rgb: 15, 181, 216;
}
:root[data-ht-theme="neon"][data-bs-theme="dark"] {
  --ht-primary: #ff4fd0; --ht-primary-rgb: 255, 79, 208;
  --ht-link-color: #ff4fd0; --ht-link-color-rgb: 255, 79, 208; --ht-link-hover-color: #ff72d9;
  --ht-primary-text-emphasis: #ffb0ea;
  --ht-primary-bg-subtle: #4f2756;
  --ht-primary-border-subtle: #793073;
  --ht-btn-ht-primary-color: #ff4fd0;
  --ht-btn-ht-primary-hover-color: #ff72d9;
  --ht-btn-ht-primary-active-background: #33102a;
  --ht-info: #3fe0ff; --ht-info-rgb: 63, 224, 255;
  --ht-accent: #3fe0ff; --ht-accent-rgb: 63, 224, 255;
}
:root[data-ht-theme="neon"] .btn-primary { --ht-btn-bg: #d0219e; --ht-btn-border-color: #d0219e; --ht-btn-hover-bg: #b31c88; --ht-btn-hover-border-color: #ab1b82;
  --ht-btn-active-bg: #a61a7e; --ht-btn-active-border-color: #9e1978; --ht-btn-disabled-bg: #d0219e; --ht-btn-disabled-border-color: #d0219e; --ht-btn-focus-shadow-rgb: 208, 33, 158; }
:root[data-ht-theme="neon"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #ff4fd0; --ht-btn-border-color: #ff4fd0; --ht-btn-hover-bg: #e046b7; --ht-btn-hover-border-color: #d642af;
  --ht-btn-active-bg: #cc3fa6; --ht-btn-disabled-bg: #ff4fd0; --ht-btn-disabled-border-color: #ff4fd0; --ht-btn-focus-shadow-rgb: 255, 79, 208; }
:root[data-ht-theme="neon"] .form-check-input:checked, :root[data-ht-theme="neon"] .form-check-input[type=checkbox]:indeterminate { background-color: #d0219e; border-color: #d0219e; }
:root[data-ht-theme="neon"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="neon"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #ff4fd0; border-color: #ff4fd0; }
:root[data-ht-theme="neon"] body { background-image: radial-gradient(circle at 100% 0, rgba(15, 181, 216, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(208, 33, 158, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="neon"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(63, 224, 255, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(255, 79, 208, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="neon"] {
  --ht-body-bg: #ebe3f3; --ht-body-bg-rgb: 235, 227, 243;
  --ht-tertiary-bg: #f7eff8; --ht-tertiary-bg-rgb: 247, 239, 248;
  --ht-gray-100: #f0f7fc; --ht-gray-200: #ebe5f4;
  --ht-emphasis-bg: #fef9fd; --ht-navbar-vertical-card-bg-color: #fef9fd;
  --ht-bg-navbar-glass: rgba(235, 227, 243, 0.96);
}
:root[data-ht-theme="neon"][data-bs-theme="dark"] {
  --ht-body-bg: #27182a; --ht-body-bg-rgb: 39, 24, 42; --ht-quaternary-bg: #27182a; --ht-quaternary-bg-rgb: 39, 24, 42;
  --ht-emphasis-bg: #2f2031; --ht-emphasis-bg-rgb: 47, 32, 49; --ht-navbar-vertical-card-bg-color: #2f2031;
  --ht-tertiary-bg: #332536; --ht-tertiary-bg-rgb: 51, 37, 54;
  --ht-gray-100: #282033; --ht-gray-200: #3e303f; --ht-gray-300: #4c3f4e;
  --ht-bg-navbar-glass: rgba(39, 24, 42, 0.96); --fc-page-bg-color: #27182a;
}
:root[data-ht-theme="neon"][data-ht-tint="strong"] {
  --ht-body-bg: #e9d5ec; --ht-body-bg-rgb: 233, 213, 236;
  --ht-tertiary-bg: #f5e4f4; --ht-tertiary-bg-rgb: 245, 228, 244;
  --ht-gray-100: #e6f4fa; --ht-gray-200: #ead9ee;
  --ht-emphasis-bg: #fdf4fa; --ht-navbar-vertical-card-bg-color: #fdf4fa;
  --ht-bg-navbar-glass: rgba(233, 213, 236, 0.96);
}
:root[data-ht-theme="neon"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #3d1e3b; --ht-body-bg-rgb: 61, 30, 59; --ht-quaternary-bg: #3d1e3b; --ht-quaternary-bg-rgb: 61, 30, 59;
  --ht-emphasis-bg: #442642; --ht-emphasis-bg-rgb: 68, 38, 66; --ht-navbar-vertical-card-bg-color: #442642;
  --ht-tertiary-bg: #482a46; --ht-tertiary-bg-rgb: 72, 42, 70;
  --ht-gray-100: #3d2d4a; --ht-gray-200: #51354f; --ht-gray-300: #5e445c;
  --ht-bg-navbar-glass: rgba(61, 30, 59, 0.96); --fc-page-bg-color: #3d1e3b;
}
:root[data-ht-theme="neon"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fef9fd; }
:root[data-ht-theme="neon"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fdf4fa; }
:root[data-ht-theme="neon"][data-ht-deco] .ht-main::before, :root[data-ht-theme="neon"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%E2%9C%A8%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%E2%9C%A8%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%E2%9C%A8%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%E2%9C%A8%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%E2%9C%A8%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="neon"][data-ht-deco] .ht-logo::after { content: "✨"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🪙 Or */
:root[data-ht-theme="or"] {
  --ht-primary: #a77b0e; --ht-primary-rgb: 167, 123, 14;
  --ht-link-color: #a77b0e; --ht-link-color-rgb: 167, 123, 14; --ht-link-hover-color: #86620b;
  --ht-primary-text-emphasis: #75560a;
  --ht-primary-bg-subtle: #f2ebdb;
  --ht-primary-border-subtle: #decda3;
  --ht-btn-ht-primary-color: #a77b0e;
  --ht-btn-ht-primary-hover-color: #89650b;
  --ht-btn-ht-primary-active-background: #efe7d4;
  --ht-info: #5b6b7a; --ht-info-rgb: 91, 107, 122;
  --ht-accent: #5b6b7a; --ht-accent-rgb: 91, 107, 122;
}
:root[data-ht-theme="or"][data-bs-theme="dark"] {
  --ht-primary: #e0b33b; --ht-primary-rgb: 224, 179, 59;
  --ht-link-color: #e0b33b; --ht-link-color-rgb: 224, 179, 59; --ht-link-hover-color: #e6c262;
  --ht-primary-text-emphasis: #f1dda7;
  --ht-primary-bg-subtle: #47432d;
  --ht-primary-border-subtle: #6b5d30;
  --ht-btn-ht-primary-color: #e0b33b;
  --ht-btn-ht-primary-hover-color: #e6c262;
  --ht-btn-ht-primary-active-background: #2d240c;
  --ht-info: #9fb0c0; --ht-info-rgb: 159, 176, 192;
  --ht-accent: #9fb0c0; --ht-accent-rgb: 159, 176, 192;
}
:root[data-ht-theme="or"] .btn-primary { --ht-btn-bg: #a77b0e; --ht-btn-border-color: #a77b0e; --ht-btn-hover-bg: #906a0c; --ht-btn-hover-border-color: #89650b;
  --ht-btn-active-bg: #86620b; --ht-btn-active-border-color: #7f5d0b; --ht-btn-disabled-bg: #a77b0e; --ht-btn-disabled-border-color: #a77b0e; --ht-btn-focus-shadow-rgb: 167, 123, 14; }
:root[data-ht-theme="or"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #e0b33b; --ht-btn-border-color: #e0b33b; --ht-btn-hover-bg: #c59e34; --ht-btn-hover-border-color: #bc9632;
  --ht-btn-active-bg: #b38f2f; --ht-btn-disabled-bg: #e0b33b; --ht-btn-disabled-border-color: #e0b33b; --ht-btn-focus-shadow-rgb: 224, 179, 59; }
:root[data-ht-theme="or"] .form-check-input:checked, :root[data-ht-theme="or"] .form-check-input[type=checkbox]:indeterminate { background-color: #a77b0e; border-color: #a77b0e; }
:root[data-ht-theme="or"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="or"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #e0b33b; border-color: #e0b33b; }
:root[data-ht-theme="or"] body { background-image: radial-gradient(circle at 100% 0, rgba(91, 107, 122, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(167, 123, 14, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="or"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(159, 176, 192, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(224, 179, 59, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="or"] {
  --ht-body-bg: #e8eae9; --ht-body-bg-rgb: 232, 234, 233;
  --ht-tertiary-bg: #f5f4f1; --ht-tertiary-bg-rgb: 245, 244, 241;
  --ht-gray-100: #f3f4f8; --ht-gray-200: #e9ebeb;
  --ht-emphasis-bg: #fdfcf9; --ht-navbar-vertical-card-bg-color: #fdfcf9;
  --ht-bg-navbar-glass: rgba(232, 234, 233, 0.96);
}
:root[data-ht-theme="or"][data-bs-theme="dark"] {
  --ht-body-bg: #24221c; --ht-body-bg-rgb: 36, 34, 28; --ht-quaternary-bg: #24221c; --ht-quaternary-bg-rgb: 36, 34, 28;
  --ht-emphasis-bg: #2c2a24; --ht-emphasis-bg-rgb: 44, 42, 36; --ht-navbar-vertical-card-bg-color: #2c2a24;
  --ht-tertiary-bg: #302e28; --ht-tertiary-bg-rgb: 48, 46, 40;
  --ht-gray-100: #292823; --ht-gray-200: #3b3933; --ht-gray-300: #4a4843;
  --ht-bg-navbar-glass: rgba(36, 34, 28, 0.96); --fc-page-bg-color: #24221c;
}
:root[data-ht-theme="or"][data-ht-tint="strong"] {
  --ht-body-bg: #e3e1d8; --ht-body-bg-rgb: 227, 225, 216;
  --ht-tertiary-bg: #f1ede5; --ht-tertiary-bg-rgb: 241, 237, 229;
  --ht-gray-100: #eceff3; --ht-gray-200: #e5e4dd;
  --ht-emphasis-bg: #fbf8f3; --ht-navbar-vertical-card-bg-color: #fbf8f3;
  --ht-bg-navbar-glass: rgba(227, 225, 216, 0.96);
}
:root[data-ht-theme="or"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #37311f; --ht-body-bg-rgb: 55, 49, 31; --ht-quaternary-bg: #37311f; --ht-quaternary-bg-rgb: 55, 49, 31;
  --ht-emphasis-bg: #3e3827; --ht-emphasis-bg-rgb: 62, 56, 39; --ht-navbar-vertical-card-bg-color: #3e3827;
  --ht-tertiary-bg: #423c2b; --ht-tertiary-bg-rgb: 66, 60, 43;
  --ht-gray-100: #3f3b2b; --ht-gray-200: #4c4636; --ht-gray-300: #595445;
  --ht-bg-navbar-glass: rgba(55, 49, 31, 0.96); --fc-page-bg-color: #37311f;
}
:root[data-ht-theme="or"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fdfcf9; }
:root[data-ht-theme="or"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fbf8f3; }
:root[data-ht-theme="or"][data-ht-deco] .ht-main::before, :root[data-ht-theme="or"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%AA%99%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%AA%99%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%AA%99%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%AA%99%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%AA%99%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="or"][data-ht-deco] .ht-logo::after { content: "🪙"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🌧️ Avril — giboulées */
:root[data-ht-theme="avril"] {
  --ht-primary: #4f74c4; --ht-primary-rgb: 79, 116, 196;
  --ht-link-color: #4f74c4; --ht-link-color-rgb: 79, 116, 196; --ht-link-hover-color: #3f5d9d;
  --ht-primary-text-emphasis: #375189;
  --ht-primary-bg-subtle: #e5eaf6;
  --ht-primary-border-subtle: #bccae9;
  --ht-btn-ht-primary-color: #4f74c4;
  --ht-btn-ht-primary-hover-color: #415fa1;
  --ht-btn-ht-primary-active-background: #dfe6f4;
  --ht-info: #8e6cc2; --ht-info-rgb: 142, 108, 194;
  --ht-accent: #8e6cc2; --ht-accent-rgb: 142, 108, 194;
}
:root[data-ht-theme="avril"][data-bs-theme="dark"] {
  --ht-primary: #7d9ce6; --ht-primary-rgb: 125, 156, 230;
  --ht-link-color: #7d9ce6; --ht-link-color-rgb: 125, 156, 230; --ht-link-hover-color: #97b0eb;
  --ht-primary-text-emphasis: #c5d2f4;
  --ht-primary-bg-subtle: #2b3c5c;
  --ht-primary-border-subtle: #3e537d;
  --ht-btn-ht-primary-color: #7d9ce6;
  --ht-btn-ht-primary-hover-color: #97b0eb;
  --ht-btn-ht-primary-active-background: #191f2e;
  --ht-info: #b39ae8; --ht-info-rgb: 179, 154, 232;
  --ht-accent: #b39ae8; --ht-accent-rgb: 179, 154, 232;
}
:root[data-ht-theme="avril"] .btn-primary { --ht-btn-bg: #4f74c4; --ht-btn-border-color: #4f74c4; --ht-btn-hover-bg: #4464a9; --ht-btn-hover-border-color: #415fa1;
  --ht-btn-active-bg: #3f5d9d; --ht-btn-active-border-color: #3c5895; --ht-btn-disabled-bg: #4f74c4; --ht-btn-disabled-border-color: #4f74c4; --ht-btn-focus-shadow-rgb: 79, 116, 196; }
:root[data-ht-theme="avril"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #7d9ce6; --ht-btn-border-color: #7d9ce6; --ht-btn-hover-bg: #6e89ca; --ht-btn-hover-border-color: #6983c1;
  --ht-btn-active-bg: #647db8; --ht-btn-disabled-bg: #7d9ce6; --ht-btn-disabled-border-color: #7d9ce6; --ht-btn-focus-shadow-rgb: 125, 156, 230; }
:root[data-ht-theme="avril"] .form-check-input:checked, :root[data-ht-theme="avril"] .form-check-input[type=checkbox]:indeterminate { background-color: #4f74c4; border-color: #4f74c4; }
:root[data-ht-theme="avril"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="avril"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #7d9ce6; border-color: #7d9ce6; }
:root[data-ht-theme="avril"] body { background-image: radial-gradient(circle at 100% 0, rgba(142, 108, 194, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(79, 116, 196, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="avril"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(179, 154, 232, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(125, 156, 230, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="avril"] {
  --ht-body-bg: #e2e9f5; --ht-body-bg-rgb: 226, 233, 245;
  --ht-tertiary-bg: #f1f3fa; --ht-tertiary-bg-rgb: 241, 243, 250;
  --ht-gray-100: #f5f4fb; --ht-gray-200: #e4eaf6;
  --ht-emphasis-bg: #fbfcfe; --ht-navbar-vertical-card-bg-color: #fbfcfe;
  --ht-bg-navbar-glass: rgba(226, 233, 245, 0.96);
}
:root[data-ht-theme="avril"][data-bs-theme="dark"] {
  --ht-body-bg: #1a202d; --ht-body-bg-rgb: 26, 32, 45; --ht-quaternary-bg: #1a202d; --ht-quaternary-bg-rgb: 26, 32, 45;
  --ht-emphasis-bg: #222834; --ht-emphasis-bg-rgb: 34, 40, 52; --ht-navbar-vertical-card-bg-color: #222834;
  --ht-tertiary-bg: #272c39; --ht-tertiary-bg-rgb: 39, 44, 57;
  --ht-gray-100: #202534; --ht-gray-200: #313742; --ht-gray-300: #414650;
  --ht-bg-navbar-glass: rgba(26, 32, 45, 0.96); --fc-page-bg-color: #1a202d;
}
:root[data-ht-theme="avril"][data-ht-tint="strong"] {
  --ht-body-bg: #d7e0f2; --ht-body-bg-rgb: 215, 224, 242;
  --ht-tertiary-bg: #e8edf7; --ht-tertiary-bg-rgb: 232, 237, 247;
  --ht-gray-100: #f0eff8; --ht-gray-200: #dae3f3;
  --ht-emphasis-bg: #f6f8fc; --ht-navbar-vertical-card-bg-color: #f6f8fc;
  --ht-bg-navbar-glass: rgba(215, 224, 242, 0.96);
}
:root[data-ht-theme="avril"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #242c3f; --ht-body-bg-rgb: 36, 44, 63; --ht-quaternary-bg: #242c3f; --ht-quaternary-bg-rgb: 36, 44, 63;
  --ht-emphasis-bg: #2c3346; --ht-emphasis-bg-rgb: 44, 51, 70; --ht-navbar-vertical-card-bg-color: #2c3346;
  --ht-tertiary-bg: #30384a; --ht-tertiary-bg-rgb: 48, 56, 74;
  --ht-gray-100: #2f344c; --ht-gray-200: #3b4153; --ht-gray-300: #4a5060;
  --ht-bg-navbar-glass: rgba(36, 44, 63, 0.96); --fc-page-bg-color: #242c3f;
}
:root[data-ht-theme="avril"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fbfcfe; }
:root[data-ht-theme="avril"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f6f8fc; }
:root[data-ht-theme="avril"][data-ht-deco] .ht-main::before, :root[data-ht-theme="avril"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8C%A7%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%E2%98%82%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8C%A7%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%E2%98%82%EF%B8%8F%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%8C%A7%EF%B8%8F%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="avril"][data-ht-deco] .ht-logo::after { content: "🌧️"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🌼 Mai — floraison */
:root[data-ht-theme="mai"] {
  --ht-primary: #4f9a2f; --ht-primary-rgb: 79, 154, 47;
  --ht-link-color: #4f9a2f; --ht-link-color-rgb: 79, 154, 47; --ht-link-hover-color: #3f7b26;
  --ht-primary-text-emphasis: #376c21;
  --ht-primary-bg-subtle: #e5f0e0;
  --ht-primary-border-subtle: #bcd9b0;
  --ht-btn-ht-primary-color: #4f9a2f;
  --ht-btn-ht-primary-hover-color: #417e27;
  --ht-btn-ht-primary-active-background: #dfedda;
  --ht-info: #d6589a; --ht-info-rgb: 214, 88, 154;
  --ht-accent: #d6589a; --ht-accent-rgb: 214, 88, 154;
}
:root[data-ht-theme="mai"][data-bs-theme="dark"] {
  --ht-primary: #78c656; --ht-primary-rgb: 120, 198, 86;
  --ht-link-color: #78c656; --ht-link-color-rgb: 120, 198, 86; --ht-link-hover-color: #93d178;
  --ht-primary-text-emphasis: #c2e5b3;
  --ht-primary-bg-subtle: #2a4834;
  --ht-primary-border-subtle: #3c663c;
  --ht-btn-ht-primary-color: #78c656;
  --ht-btn-ht-primary-hover-color: #93d178;
  --ht-btn-ht-primary-active-background: #182811;
  --ht-info: #ef86bd; --ht-info-rgb: 239, 134, 189;
  --ht-accent: #ef86bd; --ht-accent-rgb: 239, 134, 189;
}
:root[data-ht-theme="mai"] .btn-primary { --ht-btn-bg: #4f9a2f; --ht-btn-border-color: #4f9a2f; --ht-btn-hover-bg: #448428; --ht-btn-hover-border-color: #417e27;
  --ht-btn-active-bg: #3f7b26; --ht-btn-active-border-color: #3c7524; --ht-btn-disabled-bg: #4f9a2f; --ht-btn-disabled-border-color: #4f9a2f; --ht-btn-focus-shadow-rgb: 79, 154, 47; }
:root[data-ht-theme="mai"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #78c656; --ht-btn-border-color: #78c656; --ht-btn-hover-bg: #6aae4c; --ht-btn-hover-border-color: #65a648;
  --ht-btn-active-bg: #609e45; --ht-btn-disabled-bg: #78c656; --ht-btn-disabled-border-color: #78c656; --ht-btn-focus-shadow-rgb: 120, 198, 86; }
:root[data-ht-theme="mai"] .form-check-input:checked, :root[data-ht-theme="mai"] .form-check-input[type=checkbox]:indeterminate { background-color: #4f9a2f; border-color: #4f9a2f; }
:root[data-ht-theme="mai"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="mai"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #78c656; border-color: #78c656; }
:root[data-ht-theme="mai"] body { background-image: radial-gradient(circle at 100% 0, rgba(214, 88, 154, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(79, 154, 47, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="mai"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(239, 134, 189, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(120, 198, 86, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="mai"] {
  --ht-body-bg: #e2eceb; --ht-body-bg-rgb: 226, 236, 235;
  --ht-tertiary-bg: #f1f5f3; --ht-tertiary-bg-rgb: 241, 245, 243;
  --ht-gray-100: #f8f4f9; --ht-gray-200: #e4eded;
  --ht-emphasis-bg: #fbfcfa; --ht-navbar-vertical-card-bg-color: #fbfcfa;
  --ht-bg-navbar-glass: rgba(226, 236, 235, 0.96);
}
:root[data-ht-theme="mai"][data-bs-theme="dark"] {
  --ht-body-bg: #1a241e; --ht-body-bg-rgb: 26, 36, 30; --ht-quaternary-bg: #1a241e; --ht-quaternary-bg-rgb: 26, 36, 30;
  --ht-emphasis-bg: #222c26; --ht-emphasis-bg-rgb: 34, 44, 38; --ht-navbar-vertical-card-bg-color: #222c26;
  --ht-tertiary-bg: #27302a; --ht-tertiary-bg-rgb: 39, 48, 42;
  --ht-gray-100: #232824; --ht-gray-200: #313b35; --ht-gray-300: #414a44;
  --ht-bg-navbar-glass: rgba(26, 36, 30, 0.96); --fc-page-bg-color: #1a241e;
}
:root[data-ht-theme="mai"][data-ht-tint="strong"] {
  --ht-body-bg: #d7e6dd; --ht-body-bg-rgb: 215, 230, 221;
  --ht-tertiary-bg: #e8f0e8; --ht-tertiary-bg-rgb: 232, 240, 232;
  --ht-gray-100: #f6edf5; --ht-gray-200: #dae7e1;
  --ht-emphasis-bg: #f6faf5; --ht-navbar-vertical-card-bg-color: #f6faf5;
  --ht-bg-navbar-glass: rgba(215, 230, 221, 0.96);
}
:root[data-ht-theme="mai"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #233424; --ht-body-bg-rgb: 35, 52, 36; --ht-quaternary-bg: #233424; --ht-quaternary-bg-rgb: 35, 52, 36;
  --ht-emphasis-bg: #2b3b2c; --ht-emphasis-bg-rgb: 43, 59, 44; --ht-navbar-vertical-card-bg-color: #2b3b2c;
  --ht-tertiary-bg: #2f3f30; --ht-tertiary-bg-rgb: 47, 63, 48;
  --ht-gray-100: #333a30; --ht-gray-200: #3a493b; --ht-gray-300: #49564a;
  --ht-bg-navbar-glass: rgba(35, 52, 36, 0.96); --fc-page-bg-color: #233424;
}
:root[data-ht-theme="mai"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fbfcfa; }
:root[data-ht-theme="mai"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f6faf5; }
:root[data-ht-theme="mai"][data-ht-deco] .ht-main::before, :root[data-ht-theme="mai"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8C%BC%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%8C%B8%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8C%BC%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8C%B8%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%8C%BC%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="mai"][data-ht-deco] .ht-logo::after { content: "🌼"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🌻 Juin — tournesol */
:root[data-ht-theme="juin"] {
  --ht-primary: #c28f00; --ht-primary-rgb: 194, 143, 0;
  --ht-link-color: #c28f00; --ht-link-color-rgb: 194, 143, 0; --ht-link-hover-color: #9b7200;
  --ht-primary-text-emphasis: #886400;
  --ht-primary-bg-subtle: #f6eed9;
  --ht-primary-border-subtle: #e8d49e;
  --ht-btn-ht-primary-color: #c28f00;
  --ht-btn-ht-primary-hover-color: #9f7500;
  --ht-btn-ht-primary-active-background: #f4ebd1;
  --ht-info: #14918f; --ht-info-rgb: 20, 145, 143;
  --ht-accent: #14918f; --ht-accent-rgb: 20, 145, 143;
}
:root[data-ht-theme="juin"][data-bs-theme="dark"] {
  --ht-primary: #f0be2e; --ht-primary-rgb: 240, 190, 46;
  --ht-link-color: #f0be2e; --ht-link-color-rgb: 240, 190, 46; --ht-link-hover-color: #f3cb58;
  --ht-primary-text-emphasis: #f8e2a1;
  --ht-primary-bg-subtle: #4b4629;
  --ht-primary-border-subtle: #72622a;
  --ht-btn-ht-primary-color: #f0be2e;
  --ht-btn-ht-primary-hover-color: #f3cb58;
  --ht-btn-ht-primary-active-background: #302609;
  --ht-info: #3cc4c1; --ht-info-rgb: 60, 196, 193;
  --ht-accent: #3cc4c1; --ht-accent-rgb: 60, 196, 193;
}
:root[data-ht-theme="juin"] .btn-primary { --ht-btn-bg: #c28f00; --ht-btn-border-color: #c28f00; --ht-btn-hover-bg: #a77b00; --ht-btn-hover-border-color: #9f7500;
  --ht-btn-active-bg: #9b7200; --ht-btn-active-border-color: #936d00; --ht-btn-disabled-bg: #c28f00; --ht-btn-disabled-border-color: #c28f00; --ht-btn-focus-shadow-rgb: 194, 143, 0; }
:root[data-ht-theme="juin"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #f0be2e; --ht-btn-border-color: #f0be2e; --ht-btn-hover-bg: #d3a728; --ht-btn-hover-border-color: #caa027;
  --ht-btn-active-bg: #c09825; --ht-btn-disabled-bg: #f0be2e; --ht-btn-disabled-border-color: #f0be2e; --ht-btn-focus-shadow-rgb: 240, 190, 46; }
:root[data-ht-theme="juin"] .form-check-input:checked, :root[data-ht-theme="juin"] .form-check-input[type=checkbox]:indeterminate { background-color: #c28f00; border-color: #c28f00; }
:root[data-ht-theme="juin"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="juin"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #f0be2e; border-color: #f0be2e; }
:root[data-ht-theme="juin"] body { background-image: radial-gradient(circle at 100% 0, rgba(20, 145, 143, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(194, 143, 0, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="juin"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(60, 196, 193, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(240, 190, 46, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="juin"] {
  --ht-body-bg: #eaebe8; --ht-body-bg-rgb: 234, 235, 232;
  --ht-tertiary-bg: #f6f5f0; --ht-tertiary-bg-rgb: 246, 245, 240;
  --ht-gray-100: #f0f6f9; --ht-gray-200: #eaecea;
  --ht-emphasis-bg: #fdfcf9; --ht-navbar-vertical-card-bg-color: #fdfcf9;
  --ht-bg-navbar-glass: rgba(234, 235, 232, 0.96);
}
:root[data-ht-theme="juin"][data-bs-theme="dark"] {
  --ht-body-bg: #26231a; --ht-body-bg-rgb: 38, 35, 26; --ht-quaternary-bg: #26231a; --ht-quaternary-bg-rgb: 38, 35, 26;
  --ht-emphasis-bg: #2e2b22; --ht-emphasis-bg-rgb: 46, 43, 34; --ht-navbar-vertical-card-bg-color: #2e2b22;
  --ht-tertiary-bg: #322f27; --ht-tertiary-bg-rgb: 50, 47, 39;
  --ht-gray-100: #272921; --ht-gray-200: #3d3a31; --ht-gray-300: #4b4941;
  --ht-bg-navbar-glass: rgba(38, 35, 26, 0.96); --fc-page-bg-color: #26231a;
}
:root[data-ht-theme="juin"][data-ht-tint="strong"] {
  --ht-body-bg: #e7e4d6; --ht-body-bg-rgb: 231, 228, 214;
  --ht-tertiary-bg: #f4efe4; --ht-tertiary-bg-rgb: 244, 239, 228;
  --ht-gray-100: #e7f2f4; --ht-gray-200: #e8e6db;
  --ht-emphasis-bg: #fcf9f2; --ht-navbar-vertical-card-bg-color: #fcf9f2;
  --ht-bg-navbar-glass: rgba(231, 228, 214, 0.96);
}
:root[data-ht-theme="juin"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #3a331c; --ht-body-bg-rgb: 58, 51, 28; --ht-quaternary-bg: #3a331c; --ht-quaternary-bg-rgb: 58, 51, 28;
  --ht-emphasis-bg: #413a24; --ht-emphasis-bg-rgb: 65, 58, 36; --ht-navbar-vertical-card-bg-color: #413a24;
  --ht-tertiary-bg: #453e28; --ht-tertiary-bg-rgb: 69, 62, 40;
  --ht-gray-100: #3a3e29; --ht-gray-200: #4e4833; --ht-gray-300: #5c5643;
  --ht-bg-navbar-glass: rgba(58, 51, 28, 0.96); --fc-page-bg-color: #3a331c;
}
:root[data-ht-theme="juin"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fdfcf9; }
:root[data-ht-theme="juin"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fcf9f2; }
:root[data-ht-theme="juin"][data-ht-deco] .ht-main::before, :root[data-ht-theme="juin"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8C%BB%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%8C%BB%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8C%BB%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8C%BB%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%8C%BB%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="juin"][data-ht-deco] .ht-logo::after { content: "🌻"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🌅 Août — coucher de soleil */
:root[data-ht-theme="aout"] {
  --ht-primary: #d9542f; --ht-primary-rgb: 217, 84, 47;
  --ht-link-color: #d9542f; --ht-link-color-rgb: 217, 84, 47; --ht-link-hover-color: #ae4326;
  --ht-primary-text-emphasis: #983b21;
  --ht-primary-bg-subtle: #f9e5e0;
  --ht-primary-border-subtle: #f1beb0;
  --ht-btn-ht-primary-color: #d9542f;
  --ht-btn-ht-primary-hover-color: #b24527;
  --ht-btn-ht-primary-active-background: #f8e0da;
  --ht-info: #7c4bb5; --ht-info-rgb: 124, 75, 181;
  --ht-accent: #7c4bb5; --ht-accent-rgb: 124, 75, 181;
}
:root[data-ht-theme="aout"][data-bs-theme="dark"] {
  --ht-primary: #f57d57; --ht-primary-rgb: 245, 125, 87;
  --ht-link-color: #f57d57; --ht-link-color-rgb: 245, 125, 87; --ht-link-hover-color: #f79779;
  --ht-primary-text-emphasis: #fbc5b3;
  --ht-primary-bg-subtle: #4d3434;
  --ht-primary-border-subtle: #74453d;
  --ht-btn-ht-primary-color: #f57d57;
  --ht-btn-ht-primary-hover-color: #f79779;
  --ht-btn-ht-primary-active-background: #311911;
  --ht-info: #a983df; --ht-info-rgb: 169, 131, 223;
  --ht-accent: #a983df; --ht-accent-rgb: 169, 131, 223;
}
:root[data-ht-theme="aout"] .btn-primary { --ht-btn-bg: #d9542f; --ht-btn-border-color: #d9542f; --ht-btn-hover-bg: #bb4828; --ht-btn-hover-border-color: #b24527;
  --ht-btn-active-bg: #ae4326; --ht-btn-active-border-color: #a54024; --ht-btn-disabled-bg: #d9542f; --ht-btn-disabled-border-color: #d9542f; --ht-btn-focus-shadow-rgb: 217, 84, 47; }
:root[data-ht-theme="aout"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #f57d57; --ht-btn-border-color: #f57d57; --ht-btn-hover-bg: #d86e4d; --ht-btn-hover-border-color: #ce6949;
  --ht-btn-active-bg: #c46446; --ht-btn-disabled-bg: #f57d57; --ht-btn-disabled-border-color: #f57d57; --ht-btn-focus-shadow-rgb: 245, 125, 87; }
:root[data-ht-theme="aout"] .form-check-input:checked, :root[data-ht-theme="aout"] .form-check-input[type=checkbox]:indeterminate { background-color: #d9542f; border-color: #d9542f; }
:root[data-ht-theme="aout"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="aout"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #f57d57; border-color: #f57d57; }
:root[data-ht-theme="aout"] body { background-image: radial-gradient(circle at 100% 0, rgba(124, 75, 181, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(217, 84, 47, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="aout"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(169, 131, 223, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(245, 125, 87, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="aout"] {
  --ht-body-bg: #ece7eb; --ht-body-bg-rgb: 236, 231, 235;
  --ht-tertiary-bg: #f7f2f3; --ht-tertiary-bg-rgb: 247, 242, 243;
  --ht-gray-100: #f4f3fa; --ht-gray-200: #ece9ed;
  --ht-emphasis-bg: #fefbfa; --ht-navbar-vertical-card-bg-color: #fefbfa;
  --ht-bg-navbar-glass: rgba(236, 231, 235, 0.96);
}
:root[data-ht-theme="aout"][data-bs-theme="dark"] {
  --ht-body-bg: #261d1e; --ht-body-bg-rgb: 38, 29, 30; --ht-quaternary-bg: #261d1e; --ht-quaternary-bg-rgb: 38, 29, 30;
  --ht-emphasis-bg: #2e2526; --ht-emphasis-bg-rgb: 46, 37, 38; --ht-navbar-vertical-card-bg-color: #2e2526;
  --ht-tertiary-bg: #32292a; --ht-tertiary-bg-rgb: 50, 41, 42;
  --ht-gray-100: #2b2126; --ht-gray-200: #3d3435; --ht-gray-300: #4b4444;
  --ht-bg-navbar-glass: rgba(38, 29, 30, 0.96); --fc-page-bg-color: #261d1e;
}
:root[data-ht-theme="aout"][data-ht-tint="strong"] {
  --ht-body-bg: #eadcdd; --ht-body-bg-rgb: 234, 220, 221;
  --ht-tertiary-bg: #f6e9e8; --ht-tertiary-bg-rgb: 246, 233, 232;
  --ht-gray-100: #efecf7; --ht-gray-200: #ebdfe1;
  --ht-emphasis-bg: #fdf6f5; --ht-navbar-vertical-card-bg-color: #fdf6f5;
  --ht-bg-navbar-glass: rgba(234, 220, 221, 0.96);
}
:root[data-ht-theme="aout"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #3b2624; --ht-body-bg-rgb: 59, 38, 36; --ht-quaternary-bg: #3b2624; --ht-quaternary-bg-rgb: 59, 38, 36;
  --ht-emphasis-bg: #422e2c; --ht-emphasis-bg-rgb: 66, 46, 44; --ht-navbar-vertical-card-bg-color: #422e2c;
  --ht-tertiary-bg: #463230; --ht-tertiary-bg-rgb: 70, 50, 48;
  --ht-gray-100: #432d32; --ht-gray-200: #4f3d3b; --ht-gray-300: #5c4b4a;
  --ht-bg-navbar-glass: rgba(59, 38, 36, 0.96); --fc-page-bg-color: #3b2624;
}
:root[data-ht-theme="aout"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fefbfa; }
:root[data-ht-theme="aout"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fdf6f5; }
:root[data-ht-theme="aout"][data-ht-deco] .ht-main::before, :root[data-ht-theme="aout"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8C%85%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%8C%B4%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8C%85%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%8C%B4%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%8C%85%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="aout"][data-ht-deco] .ht-logo::after { content: "🌅"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🍎 Septembre — pommes */
:root[data-ht-theme="septembre"] {
  --ht-primary: #b8322a; --ht-primary-rgb: 184, 50, 42;
  --ht-link-color: #b8322a; --ht-link-color-rgb: 184, 50, 42; --ht-link-hover-color: #932822;
  --ht-primary-text-emphasis: #81231d;
  --ht-primary-bg-subtle: #f4e0df;
  --ht-primary-border-subtle: #e4b1ae;
  --ht-btn-ht-primary-color: #b8322a;
  --ht-btn-ht-primary-hover-color: #972922;
  --ht-btn-ht-primary-active-background: #f2dad9;
  --ht-info: #6f9a2a; --ht-info-rgb: 111, 154, 42;
  --ht-accent: #6f9a2a; --ht-accent-rgb: 111, 154, 42;
}
:root[data-ht-theme="septembre"][data-bs-theme="dark"] {
  --ht-primary: #e45b52; --ht-primary-rgb: 228, 91, 82;
  --ht-link-color: #e45b52; --ht-link-color-rgb: 228, 91, 82; --ht-link-hover-color: #e97c75;
  --ht-primary-text-emphasis: #f3b5b1;
  --ht-primary-bg-subtle: #482a33;
  --ht-primary-border-subtle: #6d363a;
  --ht-btn-ht-primary-color: #e45b52;
  --ht-btn-ht-primary-hover-color: #e97c75;
  --ht-btn-ht-primary-active-background: #2e1210;
  --ht-info: #9cc850; --ht-info-rgb: 156, 200, 80;
  --ht-accent: #9cc850; --ht-accent-rgb: 156, 200, 80;
}
:root[data-ht-theme="septembre"] .btn-primary { --ht-btn-bg: #b8322a; --ht-btn-border-color: #b8322a; --ht-btn-hover-bg: #9e2b24; --ht-btn-hover-border-color: #972922;
  --ht-btn-active-bg: #932822; --ht-btn-active-border-color: #8c2620; --ht-btn-disabled-bg: #b8322a; --ht-btn-disabled-border-color: #b8322a; --ht-btn-focus-shadow-rgb: 184, 50, 42; }
:root[data-ht-theme="septembre"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #e45b52; --ht-btn-border-color: #e45b52; --ht-btn-hover-bg: #c95048; --ht-btn-hover-border-color: #c04c45;
  --ht-btn-active-bg: #b64942; --ht-btn-disabled-bg: #e45b52; --ht-btn-disabled-border-color: #e45b52; --ht-btn-focus-shadow-rgb: 228, 91, 82; }
:root[data-ht-theme="septembre"] .form-check-input:checked, :root[data-ht-theme="septembre"] .form-check-input[type=checkbox]:indeterminate { background-color: #b8322a; border-color: #b8322a; }
:root[data-ht-theme="septembre"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="septembre"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #e45b52; border-color: #e45b52; }
:root[data-ht-theme="septembre"] body { background-image: radial-gradient(circle at 100% 0, rgba(111, 154, 42, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(184, 50, 42, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="septembre"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(156, 200, 80, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(228, 91, 82, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="septembre"] {
  --ht-body-bg: #e9e5eb; --ht-body-bg-rgb: 233, 229, 235;
  --ht-tertiary-bg: #f6f0f2; --ht-tertiary-bg-rgb: 246, 240, 242;
  --ht-gray-100: #f3f6f5; --ht-gray-200: #eae6ed;
  --ht-emphasis-bg: #fdfafa; --ht-navbar-vertical-card-bg-color: #fdfafa;
  --ht-bg-navbar-glass: rgba(233, 229, 235, 0.96);
}
:root[data-ht-theme="septembre"][data-bs-theme="dark"] {
  --ht-body-bg: #24191e; --ht-body-bg-rgb: 36, 25, 30; --ht-quaternary-bg: #24191e; --ht-quaternary-bg-rgb: 36, 25, 30;
  --ht-emphasis-bg: #2c2126; --ht-emphasis-bg-rgb: 44, 33, 38; --ht-navbar-vertical-card-bg-color: #2c2126;
  --ht-tertiary-bg: #30262a; --ht-tertiary-bg-rgb: 48, 38, 42;
  --ht-gray-100: #292020; --ht-gray-200: #3b3135; --ht-gray-300: #4a4044;
  --ht-bg-navbar-glass: rgba(36, 25, 30, 0.96); --fc-page-bg-color: #24191e;
}
:root[data-ht-theme="septembre"][data-ht-tint="strong"] {
  --ht-body-bg: #e6d7dc; --ht-body-bg-rgb: 230, 215, 220;
  --ht-tertiary-bg: #f3e6e8; --ht-tertiary-bg-rgb: 243, 230, 232;
  --ht-gray-100: #eef2ec; --ht-gray-200: #e7dbe0;
  --ht-emphasis-bg: #fbf5f4; --ht-navbar-vertical-card-bg-color: #fbf5f4;
  --ht-bg-navbar-glass: rgba(230, 215, 220, 0.96);
}
:root[data-ht-theme="septembre"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #372023; --ht-body-bg-rgb: 55, 32, 35; --ht-quaternary-bg: #372023; --ht-quaternary-bg-rgb: 55, 32, 35;
  --ht-emphasis-bg: #3e282b; --ht-emphasis-bg-rgb: 62, 40, 43; --ht-navbar-vertical-card-bg-color: #3e282b;
  --ht-tertiary-bg: #422c2f; --ht-tertiary-bg-rgb: 66, 44, 47;
  --ht-gray-100: #3f2d26; --ht-gray-200: #4c373a; --ht-gray-300: #594649;
  --ht-bg-navbar-glass: rgba(55, 32, 35, 0.96); --fc-page-bg-color: #372023;
}
:root[data-ht-theme="septembre"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fdfafa; }
:root[data-ht-theme="septembre"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fbf5f4; }
:root[data-ht-theme="septembre"][data-ht-deco] .ht-main::before, :root[data-ht-theme="septembre"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8D%8E%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%F0%9F%93%9A%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8D%8E%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%F0%9F%93%9A%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%8D%8E%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="septembre"][data-ht-deco] .ht-logo::after { content: "🍎"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }

/* ── 🍂 Novembre — feuilles mortes */
:root[data-ht-theme="novembre"] {
  --ht-primary: #8d3b36; --ht-primary-rgb: 141, 59, 54;
  --ht-link-color: #8d3b36; --ht-link-color-rgb: 141, 59, 54; --ht-link-hover-color: #712f2b;
  --ht-primary-text-emphasis: #632926;
  --ht-primary-bg-subtle: #eee2e1;
  --ht-primary-border-subtle: #d4b5b3;
  --ht-btn-ht-primary-color: #8d3b36;
  --ht-btn-ht-primary-hover-color: #74302c;
  --ht-btn-ht-primary-active-background: #eadcdb;
  --ht-info: #a0790f; --ht-info-rgb: 160, 121, 15;
  --ht-accent: #a0790f; --ht-accent-rgb: 160, 121, 15;
}
:root[data-ht-theme="novembre"][data-bs-theme="dark"] {
  --ht-primary: #c76660; --ht-primary-rgb: 199, 102, 96;
  --ht-link-color: #c76660; --ht-link-color-rgb: 199, 102, 96; --ht-link-hover-color: #d28580;
  --ht-primary-text-emphasis: #e6bab7;
  --ht-primary-bg-subtle: #402d37;
  --ht-primary-border-subtle: #603b41;
  --ht-btn-ht-primary-color: #c76660;
  --ht-btn-ht-primary-hover-color: #d28580;
  --ht-btn-ht-primary-active-background: #281413;
  --ht-info: #d1a83b; --ht-info-rgb: 209, 168, 59;
  --ht-accent: #d1a83b; --ht-accent-rgb: 209, 168, 59;
}
:root[data-ht-theme="novembre"] .btn-primary { --ht-btn-bg: #8d3b36; --ht-btn-border-color: #8d3b36; --ht-btn-hover-bg: #79332e; --ht-btn-hover-border-color: #74302c;
  --ht-btn-active-bg: #712f2b; --ht-btn-active-border-color: #6b2d29; --ht-btn-disabled-bg: #8d3b36; --ht-btn-disabled-border-color: #8d3b36; --ht-btn-focus-shadow-rgb: 141, 59, 54; }
:root[data-ht-theme="novembre"][data-bs-theme="dark"] .btn-primary { --ht-btn-bg: #c76660; --ht-btn-border-color: #c76660; --ht-btn-hover-bg: #af5a54; --ht-btn-hover-border-color: #a75651;
  --ht-btn-active-bg: #9f524d; --ht-btn-disabled-bg: #c76660; --ht-btn-disabled-border-color: #c76660; --ht-btn-focus-shadow-rgb: 199, 102, 96; }
:root[data-ht-theme="novembre"] .form-check-input:checked, :root[data-ht-theme="novembre"] .form-check-input[type=checkbox]:indeterminate { background-color: #8d3b36; border-color: #8d3b36; }
:root[data-ht-theme="novembre"][data-bs-theme="dark"] .form-check-input:checked, :root[data-ht-theme="novembre"][data-bs-theme="dark"] .form-check-input[type=checkbox]:indeterminate { background-color: #c76660; border-color: #c76660; }
:root[data-ht-theme="novembre"] body { background-image: radial-gradient(circle at 100% 0, rgba(160, 121, 15, 0.07), transparent 38%), radial-gradient(circle at 0 100%, rgba(141, 59, 54, 0.06), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="novembre"][data-bs-theme="dark"] body { background-image: radial-gradient(circle at 100% 0, rgba(209, 168, 59, 0.10), transparent 38%), radial-gradient(circle at 0 100%, rgba(199, 102, 96, 0.08), transparent 42%); background-attachment: fixed; }
:root[data-ht-theme="novembre"] {
  --ht-body-bg: #e6e5eb; --ht-body-bg-rgb: 230, 229, 235;
  --ht-tertiary-bg: #f4f0f3; --ht-tertiary-bg-rgb: 244, 240, 243;
  --ht-gray-100: #f5f5f3; --ht-gray-200: #e7e7ed;
  --ht-emphasis-bg: #fcfafa; --ht-navbar-vertical-card-bg-color: #fcfafa;
  --ht-bg-navbar-glass: rgba(230, 229, 235, 0.96);
}
:root[data-ht-theme="novembre"][data-bs-theme="dark"] {
  --ht-body-bg: #211a1f; --ht-body-bg-rgb: 33, 26, 31; --ht-quaternary-bg: #211a1f; --ht-quaternary-bg-rgb: 33, 26, 31;
  --ht-emphasis-bg: #292227; --ht-emphasis-bg-rgb: 41, 34, 39; --ht-navbar-vertical-card-bg-color: #292227;
  --ht-tertiary-bg: #2d272b; --ht-tertiary-bg-rgb: 45, 39, 43;
  --ht-gray-100: #282020; --ht-gray-200: #383136; --ht-gray-300: #474145;
  --ht-bg-navbar-glass: rgba(33, 26, 31, 0.96); --fc-page-bg-color: #211a1f;
}
:root[data-ht-theme="novembre"][data-ht-tint="strong"] {
  --ht-body-bg: #e0d8de; --ht-body-bg-rgb: 224, 216, 222;
  --ht-tertiary-bg: #eee7e9; --ht-tertiary-bg-rgb: 238, 231, 233;
  --ht-gray-100: #f2f0ea; --ht-gray-200: #e1dce2;
  --ht-emphasis-bg: #f9f5f5; --ht-navbar-vertical-card-bg-color: #f9f5f5;
  --ht-bg-navbar-glass: rgba(224, 216, 222, 0.96);
}
:root[data-ht-theme="novembre"][data-bs-theme="dark"][data-ht-tint="strong"] {
  --ht-body-bg: #322226; --ht-body-bg-rgb: 50, 34, 38; --ht-quaternary-bg: #322226; --ht-quaternary-bg-rgb: 50, 34, 38;
  --ht-emphasis-bg: #392a2e; --ht-emphasis-bg-rgb: 57, 42, 46; --ht-navbar-vertical-card-bg-color: #392a2e;
  --ht-tertiary-bg: #3d2e32; --ht-tertiary-bg-rgb: 61, 46, 50;
  --ht-gray-100: #3e2c28; --ht-gray-200: #47393d; --ht-gray-300: #55484b;
  --ht-bg-navbar-glass: rgba(50, 34, 38, 0.96); --fc-page-bg-color: #322226;
}
:root[data-ht-theme="novembre"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #fcfafa; }
:root[data-ht-theme="novembre"][data-ht-tint="strong"]:not([data-bs-theme="dark"]) .card { --ht-card-bg: #f9f5f5; }
:root[data-ht-theme="novembre"][data-ht-deco] .ht-main::before, :root[data-ht-theme="novembre"][data-bs-theme="dark"][data-ht-deco] .ht-main::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'220'%20height%3D'220'%3E%3Cg%20opacity%3D'0.07'%20font-size%3D'26'%3E%3Ctext%20x%3D'30'%20y%3D'40'%20transform%3D'rotate(-12%2030%2040)'%3E%F0%9F%8D%82%3C%2Ftext%3E%3Ctext%20x%3D'130'%20y%3D'95'%20transform%3D'rotate(14%20130%2095)'%3E%E2%98%95%3C%2Ftext%3E%3Ctext%20x%3D'60'%20y%3D'160'%20transform%3D'rotate(6%2060%20160)'%3E%F0%9F%8D%82%3C%2Ftext%3E%3Ctext%20x%3D'170'%20y%3D'20'%20transform%3D'rotate(-6%20170%2020)'%3E%E2%98%95%3C%2Ftext%3E%3Ctext%20x%3D'190'%20y%3D'170'%20transform%3D'rotate(18%20190%20170)'%3E%F0%9F%8D%82%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
:root[data-ht-theme="novembre"][data-ht-deco] .ht-logo::after { content: "🍂"; position: absolute; right: -0.55rem; bottom: -0.45rem; font-size: 0.95rem; line-height: 1; filter: drop-shadow(0 1px 1px rgba(0,0,0,.25)); }
