/**
 * Les Mots du Temps — CookieAdmin (modale préférences)
 * Overrides visuels uniquement. Ne pas modifier le plugin CookieAdmin.
 */

/* — Overlay — */
.cookieadmin_modal_overlay{
  background:rgba(23,32,51,.46)!important;
  backdrop-filter:blur(2px);
  z-index:999998!important;
}

/* — Modale principale — */
.cookieadmin_cookie_modal{
  --lmdt-cookie-cream:#FAF4E6;
  --lmdt-cookie-cream-soft:#fffaf0;
  --lmdt-cookie-ink:#172033;
  --lmdt-cookie-muted:#5c554c;
  --lmdt-cookie-gold:#C9A227;
  --lmdt-cookie-gold-soft:rgba(201,162,39,.24);
  --lmdt-cookie-gold-line:rgba(201,162,39,.72);

  background:var(--lmdt-cookie-cream)!important;
  border:1px solid var(--lmdt-cookie-gold-soft)!important;
  border-radius:14px!important;
  box-shadow:0 20px 56px rgba(72,48,16,.16)!important;
  color:var(--lmdt-cookie-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  overflow:hidden!important;
}

.cookieadmin_cookie_modal.cookieadmin_center{
  top:50%!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  transform:translate(-50%,-50%)!important;
  width:min(560px,calc(100vw - 32px))!important;
  max-width:min(560px,calc(100vw - 32px))!important;
  max-height:min(82vh,760px)!important;
}

.cookieadmin_cookie_modal.cookieadmin_side,
.cookieadmin_cookie_modal.cookieadmin_down{
  width:min(560px,calc(100vw - 24px))!important;
  max-width:min(560px,calc(100vw - 24px))!important;
  border-radius:14px 14px 0 0!important;
}

/* — En-tête — */
.cookieadmin_mod_head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:20px 20px 16px!important;
  border-bottom:1px solid var(--lmdt-cookie-gold-soft)!important;
  background:var(--lmdt-cookie-cream)!important;
}

.cookieadmin_preference_title{
  flex:1 1 auto!important;
  margin:0!important;
  padding:0 8px 0 0!important;
  color:var(--lmdt-cookie-ink)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(22px,2.2vw,28px)!important;
  font-weight:400!important;
  line-height:1.2!important;
  text-align:center!important;
  letter-spacing:.015em!important;
}

.cookieadmin_preference_title::after{
  content:"";
  display:block;
  width:55px;
  height:1px;
  margin:12px auto 0;
  background:var(--lmdt-cookie-gold-line);
}

.cookieadmin_close_pref{
  flex-shrink:0!important;
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  margin:2px 0 0!important;
  padding:0!important;
  border:1px solid var(--lmdt-cookie-gold-soft)!important;
  border-radius:999px!important;
  background:var(--lmdt-cookie-cream-soft)!important;
  color:#6b6254!important;
  font-size:18px!important;
  line-height:1!important;
  cursor:pointer!important;
  transition:color .2s ease,border-color .2s ease,background .2s ease!important;
}

.cookieadmin_close_pref:hover{
  color:#8f671f!important;
  border-color:#b18422!important;
  background:#fff!important;
}

/* — Introduction — */
.cookieadmin_details_wrapper{
  padding:0 18px 8px!important;
  height:auto!important;
  max-height:calc(82vh - 220px)!important;
  overflow:auto!important;
  scrollbar-width:thin;
}

.cookieadmin_preference_details{
  padding:14px 4px 6px!important;
}

.cookieadmin_preference{
  padding:0 0 8px!important;
  color:var(--lmdt-cookie-muted)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(14px,1.25vw,16px)!important;
  font-weight:400!important;
  line-height:1.72!important;
}

.cookieadmin_preference p{
  margin:0 0 .85em!important;
}

.cookieadmin_preference p:last-child{
  margin-bottom:0!important;
}

/* — Catégories — */
#cookieadmin_wrapper{
  padding:0!important;
}

.cookieadmin_types{
  margin:0!important;
  padding:14px 4px!important;
  border-top:1px solid var(--lmdt-cookie-gold-soft)!important;
}

.cookieadmin_types:first-of-type{
  border-top:0!important;
  padding-top:6px!important;
}

.cookieadmin_header{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}

.cookieadmin_header > span{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
}

.cookieadmin_header .stitle{
  color:var(--lmdt-cookie-ink)!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.35!important;
  cursor:pointer!important;
}

.cookieadmin_show_pref_cookies{
  color:var(--lmdt-cookie-gold)!important;
  font-size:14px!important;
}

.cookieadmin_desc{
  margin:8px 0 0!important;
  padding:0 0 0 22px!important;
  padding-right:0!important;
  color:var(--lmdt-cookie-muted)!important;
  font-size:14px!important;
  line-height:1.65!important;
}

.cookieadmin-modal-cookies-list{
  margin:8px 0 0 22px!important;
  margin-right:0!important;
  padding:10px 12px!important;
  border:1px solid var(--lmdt-cookie-gold-soft)!important;
  border-radius:10px!important;
  background:var(--lmdt-cookie-cream-soft)!important;
  color:var(--lmdt-cookie-muted)!important;
  font-size:13px!important;
  text-align:left!important;
}

.cookieadmin_remark{
  color:#6b6254!important;
  font-size:12px!important;
  font-weight:600!important;
  white-space:nowrap!important;
}

.cookieadmin_remark.cookieadmin_act{
  display:inline!important;
  color:var(--lmdt-cookie-gold)!important;
  font-weight:700!important;
}

/* — Interrupteurs — */
.cookieadmin_cookie_modal .cookieadmin_toggle{
  width:44px!important;
  height:24px!important;
  flex-shrink:0!important;
}

.cookieadmin_cookie_modal .cookieadmin_slider{
  width:44px!important;
  height:24px!important;
  background:#e8dfd0!important;
  border:1px solid rgba(177,132,34,.18)!important;
  border-radius:999px!important;
  transition:background .2s ease,border-color .2s ease!important;
}

.cookieadmin_cookie_modal .cookieadmin_slider:before{
  width:18px!important;
  height:18px!important;
  left:2px!important;
  bottom:2px!important;
  background:#fff!important;
  box-shadow:0 1px 3px rgba(72,48,16,.16)!important;
  transition:transform .2s ease!important;
}

.cookieadmin_cookie_modal .cookieadmin_toggle input:checked + .cookieadmin_slider{
  background:var(--lmdt-cookie-gold)!important;
  border-color:rgba(177,132,34,.42)!important;
}

.cookieadmin_cookie_modal .cookieadmin_toggle input:checked + .cookieadmin_slider:before{
  transform:translateX(20px)!important;
}

.cookieadmin_cookie_modal label,
.cookieadmin_cookie_modal input{
  margin:0!important;
  padding:0!important;
}

/* — Pied de modale / boutons — */
.cookieadmin_modal_footer{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  padding:16px 18px 18px!important;
  border-top:1px solid var(--lmdt-cookie-gold-soft)!important;
  background:var(--lmdt-cookie-cream)!important;
}

.cookieadmin_modal_footer .cookieadmin_btn{
  flex:1 1 calc(33.333% - 8px)!important;
  min-width:140px!important;
  min-height:44px!important;
  margin:0!important;
  padding:11px 14px!important;
  border-radius:999px!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:.06em!important;
  line-height:1.25!important;
  text-transform:none!important;
  text-wrap:balance!important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease,color .2s ease!important;
}

.cookieadmin_modal_footer .cookieadmin_reject_btn{
  background:transparent!important;
  border:1px solid rgba(177,132,34,.42)!important;
  color:var(--lmdt-cookie-ink)!important;
}

.cookieadmin_modal_footer .cookieadmin_reject_btn:hover{
  border-color:#b18422!important;
  color:#6f5318!important;
  background:rgba(255,250,239,.72)!important;
}

.cookieadmin_modal_footer .cookieadmin_save_btn{
  background:var(--lmdt-cookie-cream-soft)!important;
  border:1px solid rgba(177,132,34,.32)!important;
  color:var(--lmdt-cookie-ink)!important;
}

.cookieadmin_modal_footer .cookieadmin_save_btn:hover{
  border-color:#b18422!important;
  background:#fff!important;
  color:#6f5318!important;
}

.cookieadmin_modal_footer .cookieadmin_accept_btn{
  background:linear-gradient(135deg,#C9A227,#d4ad3a)!important;
  border:1px solid rgba(177,132,34,.48)!important;
  color:var(--lmdt-cookie-ink)!important;
  box-shadow:0 10px 24px rgba(198,150,50,.18)!important;
}

.cookieadmin_modal_footer .cookieadmin_accept_btn:hover{
  transform:translateY(-1px)!important;
  border-color:#b18422!important;
  box-shadow:0 14px 28px rgba(198,150,50,.22)!important;
}

.cookieadmin_modal_footer_links{
  flex:1 1 100%!important;
  margin:8px 0 0!important;
  padding-top:8px!important;
  border-top:1px solid rgba(201,162,39,.14)!important;
}

.cookieadmin_modal_policy_link_box,
.cookieadmin_policy_link_box{
  gap:10px 14px!important;
}

.cookieadmin_modal_policy_link_box a,
.cookieadmin_policy_link_box a{
  color:#6b6254!important;
  text-decoration:none!important;
}

.cookieadmin_modal_policy_link_box a:hover,
.cookieadmin_policy_link_box a:hover{
  color:#8f671f!important;
}

.cookieadmin_modal_footer .cookieadmin-poweredby a{
  color:#6b6254!important;
  font-size:11px!important;
}

/* — Responsive — */
@media (max-width:640px){
  .cookieadmin_cookie_modal.cookieadmin_center{
    top:auto!important;
    bottom:0!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    max-height:90vh!important;
    border-radius:14px 14px 0 0!important;
  }

  .cookieadmin_mod_head{
    padding:16px 16px 12px!important;
  }

  .cookieadmin_details_wrapper{
    max-height:calc(90vh - 250px)!important;
    padding:0 14px 6px!important;
  }

  .cookieadmin_modal_footer{
    flex-direction:column!important;
    padding:14px!important;
  }

  .cookieadmin_modal_footer .cookieadmin_btn{
    flex:1 1 auto!important;
    width:100%!important;
    min-width:0!important;
  }
}

/* — Bouton flottant re-consentement (bas gauche) — */
button.cookieadmin_re_consent{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  bottom:15px!important;
  left:15px!important;
  width:44px!important;
  height:44px!important;
  padding:0!important;
  border:1px solid rgba(201,162,39,.28)!important;
  border-radius:50%!important;
  background:#FAF4E6!important;
  box-shadow:0 4px 14px rgba(72,48,16,.10)!important;
  cursor:pointer!important;
  z-index:99999!important;
  transition:border-color .25s ease,box-shadow .25s ease,background .25s ease,transform .25s ease!important;
}

button.cookieadmin_re_consent:hover,
button.cookieadmin_re_consent:focus-visible{
  border-color:rgba(177,132,34,.52)!important;
  background:#fffaf0!important;
  box-shadow:0 6px 18px rgba(72,48,16,.14)!important;
  transform:translateY(-1px)!important;
  outline:none!important;
}

button.cookieadmin_re_consent .cookieadmin_reconsent_img{
  display:block!important;
  width:22px!important;
  height:22px!important;
  object-fit:contain!important;
  filter:brightness(0) saturate(100%) invert(63%) sepia(48%) saturate(638%) hue-rotate(8deg) brightness(91%) contrast(89%)!important;
  transition:filter .25s ease,transform .25s ease!important;
}

button.cookieadmin_re_consent:hover .cookieadmin_reconsent_img,
button.cookieadmin_re_consent:focus-visible .cookieadmin_reconsent_img{
  filter:brightness(0) saturate(100%) invert(54%) sepia(58%) saturate(720%) hue-rotate(8deg) brightness(92%) contrast(92%)!important;
  transform:scale(1.04)!important;
}

@media (max-width:640px){
  button.cookieadmin_re_consent{
    bottom:14px!important;
    left:14px!important;
    width:42px!important;
    height:42px!important;
  }

  button.cookieadmin_re_consent .cookieadmin_reconsent_img{
    width:20px!important;
    height:20px!important;
  }
}
