/* tac-gratuit : thème carte pour la bannière native tarteaucitron (orientation "bottom").
   Généré, ne pas modifier dans le build : modifier templates/theme.css ou style dans client.yaml.
   Préfixe html body #tarteaucitronRoot pour passer devant le CSS de tarteaucitron (chargé après). */

:root {
  --tac-couleur: #ff014f;
  --tac-couleur-texte: #ffffff;
}

/* Carte */
html body #tarteaucitronRoot #tarteaucitronAlertBig {
  top: auto !important;
  bottom: 24px !important;
  left: 24px !important;
  right: auto !important;
  width: 420px !important;
  max-width: calc(100vw - 32px) !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 22px !important;
  background: #ffffff !important;
  color: #222222 !important;
  text-align: left !important;
  border: 1px solid rgba(0, 0, 0, .06) !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, .14), 0 2px 8px rgba(0, 0, 0, .07) !important;
  font-family: inherit !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert {
  display: block !important;
  padding: 0 !important;
  margin: 0 0 18px !important;
  max-height: none !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  color: #333333 !important;
  text-align: left !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert .tac-titre {
  display: block;
  margin-bottom: 6px;
  font-size: 17px;
  font-weight: 700;
  color: #111111 !important;
}

/* Refus : lien « Continuer sans accepter » en haut à droite de la carte.
   Lisible (gris foncé, souligné, 13 px, contraste > 7:1) : refuser reste aussi simple qu'accepter. */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2 {
  position: absolute !important;
  top: 14px !important;
  right: 18px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 2px 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #444444 !important;
  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
  text-transform: none !important;
  letter-spacing: 0 !important;
  cursor: pointer;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2:hover {
  color: #111111 !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert {
  margin-top: 22px !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCheck,
html body #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCross {
  display: none !important;
}

/* Ligne de boutons : Personnaliser (contour) à gauche, Tout accepter (plein) à droite.
   Floats et non flex : tarteaucitron masque la carte par un style display en ligne. */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2,
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
  width: calc(50% - 5px) !important;
  margin: 0 !important;
  padding: 11px 10px !important;
  box-sizing: border-box !important;
  border-radius: 8px !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  cursor: pointer;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 {
  float: right;
  background: var(--tac-couleur) !important;
  color: var(--tac-couleur-texte) !important;
  border: 1.5px solid var(--tac-couleur) !important;
  transition: filter .15s ease;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2:hover {
  filter: brightness(.88);
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
  float: left;
  display: block !important;
  background: #ffffff !important;
  color: #333333 !important;
  border: 1.5px solid #cccccc !important;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert:hover {
  border-color: #888888 !important;
  background: #f7f7f7 !important;
}

/* Lien politique de confidentialité */
html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
  clear: both;
  display: block !important;
  margin: 0 auto !important;
  padding: 14px 0 0 !important;  /* padding et non margin : la marge d'un élément clear est absorbée après des floats */
  background: none !important;
  border: 0 !important;
  color: #666666 !important;
  font-family: inherit !important;
  font-size: 12px !important;
  text-decoration: underline !important;
  cursor: pointer;
}

/* Icône masquée quand la page a un lien « Gestion des cookies » (href="#tarteaucitron", voir tac-init.js) */
html.tac-lien-footer body #tarteaucitronRoot #tarteaucitronIcon {
  display: none !important;
}

/* Icône de retrait du consentement : pastille discrète */
html body #tarteaucitronRoot #tarteaucitronIcon {
  bottom: 16px !important;
  left: 16px !important;
  right: auto !important;
}

html body #tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 50px !important;
  height: 50px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  line-height: 0 !important;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, .18) !important;
}

html body #tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager img {
  width: 30px !important;
  height: 30px !important;
  display: block;
}

/* Panneau de personnalisation : boutons neutres, choix actif à la couleur du site */
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronAllAllowed,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronAllDenied,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny {
  background: #ffffff !important;
  color: #333333 !important;
  border: 1.5px solid #cccccc !important;
  border-radius: 8px !important;
  font-family: inherit !important;
  opacity: 1 !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronAllAllowed.tarteaucitronIsSelected,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronAllDenied.tarteaucitronIsSelected,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAsk .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronAsk .tarteaucitronDeny,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow {
  background: var(--tac-couleur) !important;
  color: var(--tac-couleur-texte) !important;
  border-color: var(--tac-couleur) !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronIsSelected span::before,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronIsAllowed .tarteaucitronAllow span::before,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronIsDenied .tarteaucitronDeny span::before,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices_mandatory .tarteaucitronAllow span::before {
  color: var(--tac-couleur-texte) !important;
}

html body #tarteaucitronRoot #tarteaucitron .tarteaucitronLine.tarteaucitronIsAllowed,
html body #tarteaucitronRoot #tarteaucitron .tarteaucitronLine.tarteaucitronIsDenied {
  border-color: var(--tac-couleur) !important;
}

/* Mobile : bandeau collé en bas */
@media (max-width: 520px) {
  html body #tarteaucitronRoot #tarteaucitronAlertBig {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 18px 16px !important;
    border-radius: 16px 16px 0 0 !important;
  }
}
