/*
  AlterCookies – Theme overrides for tarteaucitron.js (PS 8.2+)
  Palette:
    --ac-accent: #E62249
    --ac-ink:    #0F0F0F
    --ac-muted:  #777777
    --ac-bg:     #EDEDF3
    --ac-white:  #FFFFFF

  Design goals:
  - Clean, modern top bar
  - Equal prominence for Accept / Refuse (CNIL-friendly)
  - Light motion + respects prefers-reduced-motion
*/

#tarteaucitronRoot {
  --ac-accent: #E62249;
  --ac-ink: #0F0F0F;
  --ac-muted: #777777;
  --ac-bg: #EDEDF3;
  --ac-white: #FFFFFF;

  --ac-radius: 12px;
  --ac-radius-sm: 10px;
  --ac-shadow: 0 12px 28px rgba(15, 15, 15, 0.25);
  --ac-focus: 0 0 0 3px rgba(230, 34, 73, 0.35);
}

/* ---------------- Banner (Bottom) ----------------
   Important : certains thèmes/modules appliquent un style "modal centré" (left:50% + transform).
   On neutralise explicitement ces valeurs pour éviter un bandeau décalé/hors-écran.
*/
#tarteaucitronRoot #tarteaucitronAlertBig {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  width: 100% !important;
  margin: 0 !important;
  transform: none !important;
  box-sizing: border-box !important;

  background: rgba(15, 15, 15, 0.92) !important;
  color: var(--ac-white) !important;
  padding: 16px 18px !important;
  border-top: 1px solid rgba(237, 237, 243, 0.16) !important;
  box-shadow: 0 -10px 28px rgba(15, 15, 15, 0.28) !important;
  text-align: left !important;
}

@supports ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))) {
  #tarteaucitronRoot #tarteaucitronAlertBig {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
  }
}

/* Layout: container centré + actions à droite */
#tarteaucitronRoot #tarteaucitronAlertBig {
  /* display is controlled by tarteaucitron (block/none). Do not force it to avoid invisible overlays. */
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}

/* On limite la largeur de lecture et on centre la "ligne" de contenu */
#tarteaucitronRoot #tarteaucitronAlertBig > * {
  max-width: 1180px;
}

#tarteaucitronRoot #tarteaucitronDisclaimerAlert {
  flex: 1 1 520px;
  max-width: 760px;
  line-height: 1.35;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.92) !important;
  padding: 0 46px 0 0 !important; /* réserve pour la croix */
}

@media (max-width: 768px) {
  #tarteaucitronRoot #tarteaucitronDisclaimerAlert {
    flex-basis: 100%;
    max-width: 100%;
    padding: 0 0 0 0 !important;
    font-size: 15px;
  }
}

/* Buttons */
#tarteaucitronRoot button.tarteaucitronCTAButton,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert {
  border-radius: var(--ac-radius-sm) !important;
  padding: 9px 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px;
  border: 1px solid transparent !important;
  box-shadow: none !important;
  text-transform: none !important;
}

/* Primary (Accept) */
#tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 {
  background: var(--ac-accent) !important;
  color: var(--ac-white) !important;
}

/* Secondary (Refuse) – same visual weight as primary, but outline */
#tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronDeny,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2 {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(237, 237, 243, 0.40) !important;
  color: var(--ac-white) !important;
}

/* Tertiary (Personalize) */
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert {
  background: var(--ac-bg) !important;
  border-color: rgba(237, 237, 243, 0.65) !important;
  color: var(--ac-ink) !important;
}

/* Hover / active */
#tarteaucitronRoot #tarteaucitronAlertBig button:hover {
  transform: translateY(-1px);
}
#tarteaucitronRoot #tarteaucitronAlertBig button:active {
  transform: translateY(0);
  opacity: 0.96;
}

/* Focus */
#tarteaucitronRoot #tarteaucitronAlertBig button:focus-visible,
#tarteaucitronRoot #tarteaucitron button:focus-visible,
#tarteaucitronRoot #tarteaucitron a:focus-visible {
  outline: none !important;
  box-shadow: var(--ac-focus) !important;
}

/* Close cross */
#tarteaucitronRoot #tarteaucitronCloseCross {
  position: absolute !important;
  top: 12px !important;
  right: 14px !important;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, 0.10);
  border: 1px solid rgba(237, 237, 243, 0.18);
}

#tarteaucitronRoot #tarteaucitronCloseCross:hover {
  background: rgba(255, 255, 255, 0.14);
}

/* ---------------- Preferences panel ---------------- */
#tarteaucitronRoot #tarteaucitron {
  border-radius: var(--ac-radius) !important;
  box-shadow: var(--ac-shadow) !important;
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronServices {
  border-radius: var(--ac-radius) !important;
}

/* Header bar */
#tarteaucitronRoot #tarteaucitron #tarteaucitronTitle,
#tarteaucitronRoot #tarteaucitronAlertSmall #tarteaucitronCookiesTitle {
  background: var(--ac-ink) !important;
  border-bottom: 1px solid rgba(15, 15, 15, 0.10) !important;
}

/* Main buttons inside panel */
#tarteaucitronRoot #tarteaucitron .tarteaucitronAllow {
  background: var(--ac-accent) !important;
  padding: 16px!important;
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronDeny {
  background: var(--ac-ink) !important;
}

#tarteaucitronRoot #tarteaucitron a {
  color: var(--ac-accent) !important;
}

/* Slightly calmer animations (limité aux éléments interactifs), respect reduced motion */
#tarteaucitronRoot button,
#tarteaucitronRoot a,
#tarteaucitronRoot [role="button"] {
  transition: transform 160ms ease, background 200ms ease, border-color 200ms ease, opacity 160ms ease, box-shadow 220ms ease;
}

@media (prefers-reduced-motion: reduce) {
  #tarteaucitronRoot button,
  #tarteaucitronRoot a,
  #tarteaucitronRoot [role="button"] {
    transition: none !important;
  }
}

/* Optional: style the "Gestion des cookies" footer link if present */
.altercookies-manage {
  color: #E62249;
  text-decoration: none;
}
.altercookies-manage:hover {
  text-decoration: underline;
}

/*COOKIE BAR*/
body #tarteaucitronRoot div#tarteaucitronAlertBig {
  background: linear-gradient(180deg, #000000 0%, #0F0F0F 100%);;
  top: inherit;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%
}
#tarteaucitron #tarteaucitronClosePanel, #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronClosePanelCookie,#tarteaucitronRoot #tarteaucitron #tarteaucitronServices,#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine,html body #tarteaucitronRoot div#tarteaucitronSave,#tarteaucitron #tarteaucitronInfo, #tarteaucitron #tarteaucitronServices .tarteaucitronDetails, #tarteaucitron #tarteaucitronServices .tarteaucitronTitle button, #tarteaucitronRoot .asCatToggleBtn,#tarteaucitron #tarteaucitronServices .tarteaucitronLine{background: #ffffff!important;}
#tarteaucitronRoot .tarteaucitronH1,#tarteaucitron #tarteaucitronInfo, #tarteaucitron #tarteaucitronServices .tarteaucitronDetails:not(.tarteaucitronDetailsInline),#tarteaucitronRoot .tarteaucitronH2,#tarteaucitron #tarteaucitronClosePanel, #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronClosePanelCookie{color:#0F0F0F!important;}
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices{margin-top: 0!important;padding-top: 35px!important;}
#tarteaucitron #tarteaucitronClosePanel{top: 20px}
#tarteaucitronRoot .tarteaucitronH1,#tarteaucitronRoot .tarteaucitronH2,#tarteaucitron .tarteaucitronH3{font-weight: 600}
#tarteaucitron .tarteaucitronH3{margin-bottom: 16px}
#tarteaucitronRoot #tarteaucitron .tarteaucitronAllow{padding: 16px 32px!important;}
#tarteaucitron #tarteaucitronServices_mandatory .tarteaucitronH3,#tarteaucitron .tarteaucitronH3{font-weight: 500}
.tarteaucitron-toggle-group{margin-top: 16px;font-weight: 600}

@media(max-width: 991px){
  #tarteaucitronRoot #tarteaucitron .tarteaucitronAllow{margin-bottom: 16px!important;}
  #tarteaucitronAllDenied,#tarteaucitron-reject-group-analytic{padding: 16px!important; }
}