/*
 * Style du bandeau et du panneau cookies (socle 2.4.0, 26/10/2026 ; couleurs Divi et arrondis 2.7.0, 29/10/2026) — seule source de style du panneau.
 * Chargé juste après tarteaucitron.css (les deux en <link> dans le <head>, avant l'affichage du bandeau).
 * Reprend les blocs « BANDEAU ET PANNEAU COOKIES » et « Cookies obligatoires » du style.css de delphine-mercier.fr.
 * Couleurs réglables par site (réglage "couleurs" du socle) : variables posées par le socle sur :root.
 */
:root {
  /* 2.7.0 (29/10/2026) : par défaut, les couleurs Divi du site (--gcid-…) et les arrondis de la Bibliothèque (--dm-arrondi-…) ;
     un réglage du site (« couleurs », « arrondi ») les remplace (variables posées par le socle juste après ce fichier). */
  --socle-tac-principal: var(--gcid-heading-color, #333333);   /* bouton principal (Tout accepter, Enregistrer), choix « autorisé » */
  --socle-tac-principal-texte: #ffffff;
  --socle-tac-survol: var(--gcid-primary-color, #ffcc22);      /* survol des boutons : couleur principale Divi */
  --socle-tac-survol-texte: #000000;
  --socle-tac-refus: #888888;                                  /* choix « refusé » */
  --socle-tac-texte: var(--gcid-body-color, #333333);
  --socle-tac-arrondi: var(--dm-arrondi-bouton, 5px);
  --socle-tac-arrondi-panneau: var(--dm-arrondi-bloc, 10px);
  --socle-tac-picto-taille: 44px;
  --socle-tac-ombre: 0 12px 40px rgba(0, 0, 0, .16), 0 2px 8px rgba(0, 0, 0, .08);
}

/* ---------- BANDEAU ET PANNEAU COOKIES (tarteaucitron) ---------- */

/* Fond derrière le panneau */
html body #tarteaucitronRoot #tarteaucitronBack {
  background: #000 !important;
  opacity: 0.35 !important;   /* 2.7.0 : fond plus léger */
}

/* Le panneau */
html body #tarteaucitronRoot #tarteaucitron {
  max-width: 640px !important;   /* 2.7.0 : panneau allégé (moins large, moins haut, ombre douce) */
  border-radius: var(--socle-tac-arrondi-panneau) !important;
  box-shadow: var(--socle-tac-ombre) !important;
  overflow: hidden !important;
  font-family: inherit !important;
}
html body #tarteaucitronRoot #tarteaucitron *,
html body #tarteaucitronRoot #tarteaucitronAlertBig,
html body #tarteaucitronRoot #tarteaucitronAlertBig * {
  font-family: inherit !important;
}

/* Bouton Fermer : petite pastille blanche */
html body #tarteaucitronRoot #tarteaucitronClosePanel {
  background: #ffffff !important;
  color: var(--socle-tac-texte) !important;
  border-radius: 20px 20px 0 0 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  padding: 6px 16px !important;
}

/* Titre */
html body #tarteaucitronRoot .tarteaucitronH1 {
  font-size: 19px !important;
  font-weight: 600 !important;
  color: #222222 !important;
  margin: 10px 0 !important;
}

/* Texte d'explication : normal, sans traits */
html body #tarteaucitronRoot #tarteaucitronInfo {
  border: none !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: #444444 !important;
  padding: 0 30px 10px !important;
}

/* Lien Politique de confidentialité */
html body #tarteaucitronRoot #tarteaucitronPrivacyUrlDialog {
  font-size: 14px !important;
  text-decoration: underline !important;
  color: var(--socle-tac-texte) !important;
  background: none !important;
}

/* Lignes de services : séparées par un trait fin */
html body #tarteaucitronRoot .tarteaucitronLine,
html body #tarteaucitronRoot #tarteaucitronMainLineOffset {
  background: #ffffff !important;
  border: none !important;
  border-top: 1px solid #eeeeee !important;
  padding: 12px 22px !important;
}
html body #tarteaucitronRoot .tarteaucitronH3,
html body #tarteaucitronRoot .tarteaucitronName {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #222222 !important;
}

/* Titres de catégories (+ Cookies obligatoires, + Mesure d'audience) */
html body #tarteaucitronRoot .tarteaucitronTitle button {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--socle-tac-texte) !important;
  background: #f5f5f5 !important;
  padding: 10px 25px !important;
}

/* Tous les boutons : contour fin, texte normal */
html body #tarteaucitronRoot .tarteaucitronAllow,
html body #tarteaucitronRoot .tarteaucitronDeny,
html body #tarteaucitronRoot #tarteaucitronSaveButton {
  background: #ffffff !important;
  color: var(--socle-tac-texte) !important;
  border: 1px solid var(--socle-tac-texte) !important;
  border-radius: var(--socle-tac-arrondi) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  padding: 8px 16px !important;
  opacity: 1 !important;
}

/* On masque les petits symboles ☑ ☐ dans les boutons */
html body #tarteaucitronRoot .tarteaucitronCheck,
html body #tarteaucitronRoot .tarteaucitronCross {
  display: none !important;
}

/* Le bouton principal : Tout accepter */
html body #tarteaucitronRoot #tarteaucitronAllAllowed,
html body #tarteaucitronRoot #tarteaucitronSaveButton,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed.tarteaucitronIsSelected {
  background: var(--socle-tac-principal) !important;
  border-color: var(--socle-tac-principal) !important;
  color: var(--socle-tac-principal-texte) !important;
}

/* Le choix sélectionné se remplit */
html body #tarteaucitronRoot .tarteaucitronIsAllowed .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow {
  background: var(--socle-tac-principal) !important;
  border-color: var(--socle-tac-principal) !important;
  color: var(--socle-tac-principal-texte) !important;
}
html body #tarteaucitronRoot .tarteaucitronIsDenied .tarteaucitronDeny,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied2.tarteaucitronIsSelected,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny {
  background: var(--socle-tac-refus) !important;
  border-color: var(--socle-tac-refus) !important;
  color: #ffffff !important;
}

/* Survol */
html body #tarteaucitronRoot .tarteaucitronAllow:hover,
html body #tarteaucitronRoot .tarteaucitronDeny:hover,
html body #tarteaucitronRoot #tarteaucitronSaveButton:hover,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed:hover,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied2:hover {
  background: var(--socle-tac-survol) !important;
  border-color: var(--socle-tac-survol) !important;
  color: var(--socle-tac-survol-texte) !important;
}

/* ---------- Cookies obligatoires : une ligne discrète sur toute la largeur ---------- */
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronLine {
  padding: 8px 25px 12px !important;
  min-height: 0 !important;
}
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronName {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronName,
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronH3 {
  font-size: 13px !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: #777777 !important;
  line-height: 1.5 !important;
}
/* La partie droite, vide, disparaît */
html body #tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronAsk {
  display: none !important;
}

/* ---------- Boutons du bandeau de première visite (validés le 26/10/2026), jaunes par défaut dans tarteaucitron.css ---------- */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 {
  background: var(--socle-tac-principal) !important;
  color: var(--socle-tac-principal-texte) !important;
  border: 1px solid var(--socle-tac-principal) !important;
  border-radius: var(--socle-tac-arrondi) !important;
}
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
  background: #ffffff !important;
  color: var(--socle-tac-texte) !important;
  border: 1px solid var(--socle-tac-texte) !important;
  border-radius: var(--socle-tac-arrondi) !important;
}
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2:hover,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2:hover,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert:hover {
  background: var(--socle-tac-survol) !important;
  border-color: var(--socle-tac-survol) !important;
  color: var(--socle-tac-survol-texte) !important;
}

/* ---------- Panneau centré verticalement (26/10/2026) ----------
 * tarteaucitron calcule lui-même un « top » décalé vers le haut ; on le remplace par un vrai centrage.
 * Au-dessous de 768 px, tarteaucitron affiche le panneau en plein écran : on n'y touche pas. */
@media (min-width: 768px) {
  html body #tarteaucitronRoot #tarteaucitron {
    top: 50% !important;
    transform: translateY(-50%) !important;
    max-height: 80vh !important;
  }
}

/* ---------- Format compact « popup » (2.7.0, 29/10/2026) : petite carte dans un coin, Accepter / Refuser / Personnaliser ---------- */
html body #tarteaucitronRoot.tarteaucitronSize-popup div#tarteaucitronAlertBig {
  left: 16px !important;
  bottom: 16px !important;
  max-width: 330px !important;
  width: calc(100% - 32px) !important;
  padding: 18px 0 8px !important;
  background: #ffffff !important;
  color: var(--socle-tac-texte) !important;
  border-radius: var(--socle-tac-arrondi-panneau) !important;
  box-shadow: var(--socle-tac-ombre) !important;
}
html body #tarteaucitronRoot.tarteaucitronSize-popup div#tarteaucitronAlertBig::before {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #222222 !important;
}
html body #tarteaucitronRoot.tarteaucitronSize-popup span#tarteaucitronDisclaimerAlert {
  margin: 6px 0 16px !important;
  padding: 0 22px !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: var(--socle-tac-texte) !important;
}
html body #tarteaucitronRoot.tarteaucitronSize-popup div#tarteaucitronAlertBig button:not(#tarteaucitronCloseCross) {
  width: calc(100% - 44px) !important;
  margin: 0 auto 8px !important;
  padding: 9px 14px !important;
  font-size: 14px !important;
}
html body #tarteaucitronRoot.tarteaucitronSize-popup #tarteaucitronAlertBig #tarteaucitronCloseAlert {
  border: 0 !important;
  text-decoration: underline !important;
  background: transparent !important;
}
/* lien « politique de confidentialité » du popup : discret */
html body #tarteaucitronRoot.tarteaucitronSize-popup #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
  background: transparent !important;
  border: 0 !important;
  font-size: 12px !important;
  text-decoration: underline !important;
  color: var(--socle-tac-texte) !important;
}

/* ---------- Pictogramme « Gestion des cookies » : taille réglable (2.7.0) ---------- */
html body #tarteaucitronIcon #tarteaucitronManager {
  background: transparent !important;
  padding: 0 !important;
}
html body #tarteaucitronIcon #tarteaucitronManager img {
  width: var(--socle-tac-picto-taille) !important;
  height: var(--socle-tac-picto-taille) !important;
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .18));
}

/* ---------- « Tout accepter » et « Tout refuser » au même niveau (CNIL, 2.7.0) : même taille, même style, même couleur ---------- */
html body #tarteaucitronRoot.tarteaucitronSize-popup #tarteaucitronAlertBig #tarteaucitronPersonalize2,
html body #tarteaucitronRoot.tarteaucitronSize-popup #tarteaucitronAlertBig #tarteaucitronAllDenied2 {
  background: var(--socle-tac-principal) !important;
  color: var(--socle-tac-principal-texte) !important;
  border: 1px solid var(--socle-tac-principal) !important;
  border-radius: var(--socle-tac-arrondi) !important;
  font-weight: 600 !important;
}

/* ---------- Carte d'information des sites sans service soumis à accord (2.7.0) : « Fermer / Personnaliser » ---------- */
.socle-cookies-info {
  position: fixed; left: 16px; bottom: 16px; z-index: 2147483640;
  box-sizing: border-box; width: calc(100% - 32px); max-width: 330px; padding: 18px 22px 12px;
  background: #ffffff; color: var(--socle-tac-texte);
  border-radius: var(--socle-tac-arrondi-panneau); box-shadow: var(--socle-tac-ombre);
  font: inherit; font-size: 14px; line-height: 1.5; text-align: center;
}
.socle-cookies-info__titre { margin: 0 0 6px; font-size: 16px; font-weight: 600; color: #222222; }
.socle-cookies-info__texte { margin: 0 0 14px; padding: 0; }
.socle-cookies-info button {
  display: block; box-sizing: border-box; width: 100%; margin: 0 0 8px; padding: 9px 14px; cursor: pointer;
  font: inherit; font-size: 14px; border-radius: var(--socle-tac-arrondi);
}
.socle-cookies-info__fermer { background: var(--socle-tac-principal); color: var(--socle-tac-principal-texte); border: 1px solid var(--socle-tac-principal); font-weight: 600; }
.socle-cookies-info__perso { background: transparent; color: var(--socle-tac-texte); border: 0; text-decoration: underline; }
.socle-cookies-info button:hover { background: var(--socle-tac-survol); color: var(--socle-tac-survol-texte); border-color: var(--socle-tac-survol); }
.socle-cookies-info button:focus-visible { outline: 2px solid var(--socle-tac-survol); outline-offset: 2px; }
html.socle-info-ouverte #tarteaucitronIcon { display: none !important; }
