/* ===================================================================
   Ukkotaz — Habillage custom de tarteaucitron (bandeau cookies)
   Surcharge assets/css/style.css par-dessus tarteaucitron/css/tarteaucitron.css
   =================================================================== */

#tarteaucitronRoot * {
  font-family: var(--font-body) !important;
}
#tarteaucitronRoot strong,
#tarteaucitronRoot .tarteaucitronH1,
#tarteaucitronRoot .tarteaucitronH2,
#tarteaucitronRoot .tarteaucitronH3,
#tarteaucitronRoot .tarteaucitronH4 {
  font-family: var(--font-title) !important;
}

/* Retire les cases à cocher ☐/☑ que la lib affiche devant chaque bouton
   (Tout accepter, Autoriser, Interdire...) — l'état est déjà lisible via la
   couleur de fond du bouton, la case en plus fait glitch visuel */
#tarteaucitronRoot .tarteaucitronCheck,
#tarteaucitronRoot .tarteaucitronCross {
  display: none !important;
}

/* Anneau de focus par défaut du navigateur sur la modale entière (visible dès
   l'ouverture car #tarteaucitron reçoit un focus() JS) : trop brutal, on le
   retire sur la modale et on garde un anneau violet propre sur les vrais
   éléments interactifs (liens/boutons) */
#tarteaucitron:focus,
#tarteaucitron:focus-visible {
  outline: none !important;
}
#tarteaucitronRoot a:focus-visible,
#tarteaucitronRoot button:focus-visible {
  outline: 2px solid var(--violet) !important;
  outline-offset: 2px !important;
}

/* ---------- Bandeau principal (bas de page) ---------- */
#tarteaucitronRoot #tarteaucitronAlertBig {
  background: var(--white) !important;
  color: var(--ink) !important;
  border: 0 !important;
  border-top: 1px solid var(--line) !important;
  box-shadow: 0 -20px 50px -20px rgba(21, 14, 31, 0.25) !important;
  padding: 20px 56px 20px 24px !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  text-align: left !important;
}

#tarteaucitronAlertBig span#tarteaucitronDisclaimerAlert {
  flex: 1 1 280px !important;
  padding: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  text-align: left !important;
}
#tarteaucitronAlertBig button {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert,
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong {
  color: var(--ink) !important;
}
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong {
  font-weight: 800 !important;
}
#tarteaucitron #tarteaucitronDisclaimer {
  color: var(--gray) !important;
}

#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog {
  color: var(--violet) !important;
}

/* ---------- Boutons du bandeau ---------- */
#tarteaucitronAlertBig #tarteaucitronCloseAlert,
#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronPersonalize2,
.tarteaucitronCTAButton,
#tarteaucitronRoot .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronDeny,
html body #tarteaucitronRoot button#tarteaucitronSaveButton {
  font-family: var(--font-title) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  border-radius: 999px !important;
  padding: 13px 24px !important;
  border: 1px solid transparent !important;
  margin: 0 !important;
  transition: transform 0.18s ease, box-shadow 0.2s ease, background 0.2s ease !important;
}
.tarteaucitronCTAButton:hover,
html body #tarteaucitronRoot button#tarteaucitronSaveButton:hover {
  transform: translateY(-2px);
}

/* Tout accepter / Tout refuser / Personnaliser : 3 boutons strictement identiques
   (pas de dark pattern — CNIL). Ciblés par id exact (même spécificité que la
   règle de base ci-dessus qui utilise aussi ces ids) pour être sûr de gagner
   la cascade sur les 3 boutons de façon symétrique — "Personalize2" est l'id
   trompeur du bouton accept-all et "AllDenied2" celui du bouton deny-all. */
#tarteaucitronAlertBig #tarteaucitronPersonalize2,
#tarteaucitronAlertBig #tarteaucitronAllDenied2,
#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronCloseAlert {
  background: transparent !important;
  color: var(--ink) !important;
  border: 1px solid rgba(21, 14, 31, 0.2) !important;
  box-shadow: none !important;
}
#tarteaucitronAlertBig #tarteaucitronPersonalize2:hover,
#tarteaucitronAlertBig #tarteaucitronAllDenied2:hover,
#tarteaucitronAlertBig #tarteaucitronPersonalize:hover,
#tarteaucitronAlertBig #tarteaucitronCloseAlert:hover {
  background: var(--violet-tint) !important;
}
/* Retire les icônes ✓ / ✗ du markup (tarteaucitron.lang) : sans elles, les 3
   boutons sont visuellement identiques, pas seulement de même couleur */
#tarteaucitronAlertBig .tarteaucitronCTAButton .tarteaucitronCheck,
#tarteaucitronAlertBig .tarteaucitronCTAButton .tarteaucitronCross {
  display: none !important;
}

/* Enregistrer (panneau de préférences) : action unique, pas concernée par
   l'équilibrage ci-dessus — reste le bouton principal violet */
html body #tarteaucitronRoot button#tarteaucitronSaveButton {
  background: var(--violet) !important;
  color: var(--white) !important;
  box-shadow: 0 10px 30px -8px rgba(99, 0, 226, 0.55) !important;
}
html body #tarteaucitronRoot button#tarteaucitronSaveButton:hover {
  background: var(--violet-dark) !important;
}

/* Croix de fermeture : petit bouton rond en haut à droite du bandeau */
#tarteaucitronRoot #tarteaucitronAlertBig {
  position: fixed !important;
}
#tarteaucitronCloseCross {
  position: absolute !important;
  top: 50% !important;
  right: 16px !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  width: 32px !important;
  height: 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  color: var(--gray) !important;
  font-size: 14px !important;
  background: var(--light) !important;
}
#tarteaucitronCloseCross:hover {
  background: var(--violet-tint) !important;
  color: var(--violet) !important;
}

@media screen and (max-width: 640px) {
  #tarteaucitronRoot #tarteaucitronAlertBig {
    padding: 20px !important;
    padding-top: 46px !important;
  }
  #tarteaucitronAlertBig button:not(#tarteaucitronCloseCross) {
    flex: 1 1 100% !important;
    width: 100% !important;
    white-space: normal !important;
  }
  #tarteaucitronCloseCross {
    top: 10px !important;
    right: 10px !important;
    transform: none !important;
  }
}

/* ---------- Icône flottante (rouvrir le panneau) ---------- */
#tarteaucitronIcon #tarteaucitronManager {
  background: var(--white) !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 30px -10px rgba(21, 14, 31, 0.3) !important;
  border: 1px solid var(--line) !important;
  padding: 9px !important;
  margin: 14px !important;
}
#tarteaucitronIcon #tarteaucitronManager img {
  width: 32px !important;
  height: 32px !important;
}

/* ---------- Panneau de gestion des préférences ----------
   La carte visible doit être #tarteaucitronServices dans son ensemble
   (en-tête + liste), pas seulement .tarteaucitronBorder : sinon le radius de
   .tarteaucitronBorder se retrouve tout seul au milieu de la modale, coupant
   des encoches qui laissent voir le fond flouté derrière. */
div#tarteaucitronServices {
  background: var(--white) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--radius-l) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  box-shadow: none !important;
}
#tarteaucitron .tarteaucitronBorder {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

#tarteaucitronRoot .tarteaucitronH1 {
  color: var(--ink) !important;
  font-weight: 800 !important;
}

button#tarteaucitronClosePanel {
  background: var(--light) !important;
  color: var(--ink) !important;
  border-radius: 999px !important;
  top: 30px !important;
  right: 26px !important;
  width: auto !important;
  padding: 6px 14px !important;
  z-index: 2 !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine {
  background: var(--white) !important;
  border-color: var(--white) !important;
  border-radius: var(--radius-s) !important;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine:hover {
  background: var(--violet-tint) !important;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed {
  border-left-color: var(--violet) !important;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied {
  border-left-color: rgba(21, 14, 31, 0.15) !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a,
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName button,
span.tarteaucitronH3 {
  color: var(--ink) !important;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle a,
#tarteaucitron #tarteaucitronInfo a {
  color: var(--violet) !important;
}
#tarteaucitron .tacCurrentStatus,
#tarteaucitron .tarteaucitronReadmoreSeparator {
  color: var(--gray) !important;
}

/* Boutons Autoriser / Interdire par service : petites pastilles pill */
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny,
#tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed,
#tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied,
#tarteaucitronRoot .asCatToggleBtn {
  background: var(--light) !important;
  color: var(--ink) !important;
  border-radius: 999px !important;
  font-family: var(--font-title) !important;
  font-weight: 700 !important;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed.tarteaucitronIsSelected {
  background: var(--violet) !important;
  color: var(--white) !important;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny,
#tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied.tarteaucitronIsSelected {
  background: var(--ink) !important;
  color: var(--white) !important;
}

/* Bandeau "Enregistrer" en bas du panneau */
html body #tarteaucitronRoot div#tarteaucitronSave {
  background: var(--light) !important;
  border-top: 1px solid var(--line) !important;
}

/* Fond flouté derrière le panneau : légèrement teinté violet plutôt que blanc pur */
html body.tarteaucitron-modal-open div#tarteaucitronRoot::before,
html body .tarteaucitronSize-middle.tarteaucitronBeforeVisible::before {
  background: rgba(99, 0, 226, 0.08) !important;
}
