/* ==========================================================================
   DEVIS_WEB — thèmes de couleur (back-office ET devis imprimé)
   Sélection : html[data-theme="…"] — orange (défaut), bleu, vert, violet, rouge, ardoise.
   Variables : --acc1/--acc2 (dégradé), --acc-mid (accents), --acc-dark (libellés),
   --acc-light (sur fond sombre), --acc-soft (fonds clairs), + alphas pour les halos.
   ========================================================================== */
:root, html[data-theme="orange"] {
  --acc1: #ff7a18; --acc2: #e8384f; --acc-mid: #f57c00; --acc-dark: #b0662a;
  --acc-light: #ffb37a; --acc-soft: #fff7f4;
  --acc1-a18: rgba(255,122,24,.18); --acc1-a35: rgba(255,122,24,.35);
  --acc2-a30: rgba(232,56,79,.3);   --acc2-a35: rgba(232,56,79,.35);
}
html[data-theme="bleu"] {
  --acc1: #2f80ed; --acc2: #1b4fd8; --acc-mid: #2f6fd6; --acc-dark: #2a4f9e;
  --acc-light: #9dc0ff; --acc-soft: #f1f6ff;
  --acc1-a18: rgba(47,128,237,.18); --acc1-a35: rgba(47,128,237,.35);
  --acc2-a30: rgba(27,79,216,.3);   --acc2-a35: rgba(27,79,216,.35);
}
html[data-theme="vert"] {
  --acc1: #22b573; --acc2: #0f8a56; --acc-mid: #1e8e5a; --acc-dark: #1d6b47;
  --acc-light: #8fe3b8; --acc-soft: #effaf4;
  --acc1-a18: rgba(34,181,115,.18); --acc1-a35: rgba(34,181,115,.35);
  --acc2-a30: rgba(15,138,86,.3);   --acc2-a35: rgba(15,138,86,.35);
}
html[data-theme="violet"] {
  --acc1: #8b5cf6; --acc2: #5b2ec9; --acc-mid: #7c4dff; --acc-dark: #5a3aa8;
  --acc-light: #c9b4ff; --acc-soft: #f6f2ff;
  --acc1-a18: rgba(139,92,246,.18); --acc1-a35: rgba(139,92,246,.35);
  --acc2-a30: rgba(91,46,201,.3);   --acc2-a35: rgba(91,46,201,.35);
}
html[data-theme="rouge"] {
  --acc1: #f0483e; --acc2: #b3122b; --acc-mid: #d8322a; --acc-dark: #8e1f1f;
  --acc-light: #ffb0a8; --acc-soft: #fff3f2;
  --acc1-a18: rgba(240,72,62,.18);  --acc1-a35: rgba(240,72,62,.35);
  --acc2-a30: rgba(179,18,43,.3);   --acc2-a35: rgba(179,18,43,.35);
}
html[data-theme="ardoise"] {
  --acc1: #5b6475; --acc2: #2b3140; --acc-mid: #4b5568; --acc-dark: #3a4152;
  --acc-light: #c3c9d6; --acc-soft: #f3f4f7;
  --acc1-a18: rgba(91,100,117,.18); --acc1-a35: rgba(91,100,117,.35);
  --acc2-a30: rgba(43,49,64,.3);    --acc2-a35: rgba(43,49,64,.35);
}

/* sélecteur de thème (bandeau du back-office) : bouton compact + menu déroulant */
.theme-pick { position: relative; display: flex; align-items: center; }
.theme-btn {
  display: inline-flex; align-items: center; gap: 9px; padding: 6px 12px 6px 8px; border-radius: 999px;
  border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.06); color: #e6e8ee;
  font: inherit; font-size: 12.5px; font-weight: 600; cursor: pointer; transition: background .12s;
}
.theme-btn:hover { background: rgba(255,255,255,.11); }
.theme-btn .fa-chevron-down { font-size: 10px; opacity: .7; }
.theme-dot {
  width: 14px; height: 14px; border-radius: 50%; flex: none;
  background: linear-gradient(135deg, var(--sw1), var(--sw2)); box-shadow: 0 0 0 2px rgba(255,255,255,.18);
}
.theme-loc { color: var(--acc-light); font-size: 18px; line-height: 0; margin-left: -4px; }
.theme-menu {
  position: absolute; right: 0; top: calc(100% + 10px); min-width: 250px; z-index: 50;
  background: #fff; color: #23262e; border-radius: 12px; padding: 6px;
  box-shadow: 0 12px 34px rgba(0,0,0,.28), 0 0 0 1px rgba(0,0,0,.06);
}
.theme-title { font-size: 10.5px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; color: #8a8f9a; padding: 8px 10px 6px; }
.theme-row {
  display: flex; align-items: center; gap: 10px; width: 100%; padding: 8px 10px; border: 0; border-radius: 8px;
  background: transparent; font: inherit; font-size: 13px; color: #23262e; cursor: pointer; text-align: left;
}
.theme-row:hover { background: #f4f5f8; }
.theme-row.on { font-weight: 700; }
.theme-row .fa-check { margin-left: auto; color: var(--acc2); }
.theme-row .theme-dot { box-shadow: 0 0 0 1px rgba(0,0,0,.08); }
.theme-row[disabled] { opacity: .45; cursor: default; }
.theme-row.theme-reset { color: #5a5e68; font-size: 12.5px; }
.theme-row.theme-reset .fa-undo { width: 14px; text-align: center; color: #8a8f9a; }
.theme-sep { height: 1px; background: #eceef2; margin: 4px 8px; }
.sw-orange  { --sw1: #ff7a18; --sw2: #e8384f; }
.sw-bleu    { --sw1: #2f80ed; --sw2: #1b4fd8; }
.sw-vert    { --sw1: #22b573; --sw2: #0f8a56; }
.sw-violet  { --sw1: #8b5cf6; --sw2: #5b2ec9; }
.sw-rouge   { --sw1: #f0483e; --sw2: #b3122b; }
.sw-ardoise { --sw1: #5b6475; --sw2: #2b3140; }
