/* OFQD V258 — Accueil Premium : cartes, métadonnées et colonne Pros.
   Portée strictement limitée à body.ofqd-home-page.
   Aucun changement du moteur d'images, de Pexels, du cache ou de l'anti-doublons. */

body.ofqd-home-page{
  --v258-card-radius:14px;
  --v258-card-border:rgba(30,58,138,.115);
  --v258-card-shadow:0 7px 18px rgba(7,27,85,.085);
  --v258-card-shadow-hover:0 15px 30px rgba(7,27,85,.145);
  --v258-muted:#53627d;
}

/* Titre de section et filtres : alignement plus précis sans changer la hauteur. */
body.ofqd-home-page .ofqd-dynamic-title{
  min-height:40px!important;
  margin-bottom:10px!important;
}
body.ofqd-home-page .ofqd-dynamic-title-text h2{
  margin:0!important;
  color:#071b55!important;
  font-size:clamp(22px,1.55vw,30px)!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.035em!important;
}
body.ofqd-home-page .ofqd-event-pills-v24{
  gap:7px!important;
}
body.ofqd-home-page .ofqd-event-pills-v24 a{
  min-height:30px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  border:1px solid rgba(30,58,138,.12)!important;
  background:#fff!important;
  color:#263a68!important;
  box-shadow:0 3px 9px rgba(7,27,85,.05)!important;
  font-family:"Poppins",system-ui,sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease!important;
}
body.ofqd-home-page .ofqd-event-pills-v24 a:hover,
body.ofqd-home-page .ofqd-event-pills-v24 a:focus-visible{
  transform:translateY(-1px)!important;
  box-shadow:0 6px 13px rgba(7,27,85,.09)!important;
}
body.ofqd-home-page .ofqd-event-pills-v24 a.active{
  color:#fff!important;
  border-color:#146bea!important;
  background:linear-gradient(135deg,#1e63d5,#0877ff)!important;
  box-shadow:0 7px 15px rgba(37,99,235,.22)!important;
}

/* Vignettes officielles : toujours compactes, mais plus nettes et cohérentes. */
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31{
  border:1px solid var(--v258-card-border)!important;
  border-radius:var(--v258-card-radius)!important;
  background:#fff!important;
  box-shadow:var(--v258-card-shadow)!important;
  overflow:hidden!important;
  isolation:isolate!important;
  transform:translateZ(0)!important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31:hover,
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31:focus-visible,
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31:focus-within{
  transform:translateY(-3px)!important;
  border-color:rgba(37,99,235,.25)!important;
  box-shadow:var(--v258-card-shadow-hover)!important;
  outline:none!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31:focus-visible{
  box-shadow:0 0 0 3px rgba(37,99,235,.18),var(--v258-card-shadow-hover)!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-media{
  border-radius:calc(var(--v258-card-radius) - 1px) calc(var(--v258-card-radius) - 1px) 0 0!important;
  overflow:hidden!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-media::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(7,27,85,.08),transparent 40%,rgba(7,27,85,.10));
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-media > span{
  top:5px!important;
  left:5px!important;
  z-index:3!important;
  min-height:19px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:2px 6px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.94)!important;
  color:#071b55!important;
  box-shadow:0 4px 10px rgba(7,27,85,.12)!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.015em!important;
  backdrop-filter:blur(5px)!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-body{
  position:relative!important;
  z-index:2!important;
  padding:7px 8px 6px!important;
  background:linear-gradient(180deg,#fff 0%,#fcfdff 100%)!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-body h3{
  color:#071b55!important;
  font-family:"Poppins",system-ui,sans-serif!important;
  font-weight:750!important;
  letter-spacing:-.016em!important;
}

/* Métadonnées : suppression des emojis au profit des SVG de la charte. */
body.ofqd-home-page #events-dynamiques .ofqd-event-date-line,
body.ofqd-home-page #events-dynamiques .ofqd-event-place-text{
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  min-width:0!important;
  color:var(--v258-muted)!important;
  font-family:"Poppins",system-ui,sans-serif!important;
  font-weight:550!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-date-line > span,
body.ofqd-home-page #events-dynamiques .ofqd-event-place-text > span{
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-meta-icon{
  width:11px!important;
  height:11px!important;
  min-width:11px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-meta-icon--calendar{color:#e25a32!important}
body.ofqd-home-page #events-dynamiques .ofqd-event-meta-icon--pin{color:#d73345!important}

/* Favori : véritable pictogramme fin, tout en conservant le JS existant. */
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31 .ofqd-favorite-btn{
  position:relative!important;
  font-size:0!important;
  color:transparent!important;
  overflow:hidden!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31 .ofqd-favorite-btn::before{
  content:"";
  width:12px;
  height:12px;
  display:block;
  background:#183668;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8l1.1 1.1L12 21l7.8-7.5 1.1-1.1a5.5 5.5 0 0 0-.1-7.8Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8l1.1 1.1L12 21l7.8-7.5 1.1-1.1a5.5 5.5 0 0 0-.1-7.8Z'/%3E%3C/svg%3E") center/contain no-repeat;
  transition:transform .18s ease,background .18s ease!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31 .ofqd-favorite-btn:hover::before{transform:scale(1.08);background:#0877ff}
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31 .ofqd-favorite-btn.is-favorite::before,
body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31 .ofqd-favorite-btn[aria-pressed="true"]::before{
  background:#ef334e;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 21 4.2 13.5A5.5 5.5 0 0 1 12 5.7a5.5 5.5 0 0 1 7.8 7.8Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 21 4.2 13.5A5.5 5.5 0 0 1 12 5.7a5.5 5.5 0 0 1 7.8 7.8Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Colonne Artisans & Commerçants : retour strict à la version officielle validée.
   Aucune règle V258 ne surcharge désormais la largeur, le 50/50, le texte ou le favori. */

/* V261 — garde-fou : les styles de favori des vignettes Événements ne doivent
   jamais s'appliquer au carrousel Artisans & Commerçants. */
body.ofqd-home-page #events-dynamiques .ofqd-home-pro-favorite{
  position:absolute!important;
  right:7px!important;
  bottom:7px!important;
  top:auto!important;
  font-size:initial!important;
  color:#667997!important;
  overflow:visible!important;
}
body.ofqd-home-page #events-dynamiques .ofqd-home-pro-favorite::before{content:none!important;display:none!important}
body.ofqd-home-page #events-dynamiques .ofqd-home-pro-favorite .ofqd-home-pro-heart{
  display:block!important;
  width:15px!important;
  height:15px!important;
  color:inherit!important;
}


/* Mode nuit, limité à l'accueil. */
html.ofqd-night body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31,
body.night.ofqd-home-page #events-dynamiques .ofqd-event-card-v31,
html.ofqd-night body.ofqd-home-page #events-dynamiques .ofqd-event-card-body,
body.night.ofqd-home-page #events-dynamiques .ofqd-event-card-body{
  background:#0a1835!important;
  border-color:rgba(125,184,255,.18)!important;
}
html.ofqd-night body.ofqd-home-page #events-dynamiques .ofqd-event-card-body h3,
body.night.ofqd-home-page #events-dynamiques .ofqd-event-card-body h3{
  color:#f6f9ff!important;
}

@media(max-width:1050px){
  body.ofqd-home-page .ofqd-home-pro-controls button{width:32px!important;height:32px!important;min-width:32px!important}
}
@media(max-width:700px){
  body.ofqd-home-page .ofqd-dynamic-title{align-items:flex-start!important;flex-wrap:wrap!important}
  body.ofqd-home-page .ofqd-event-pills-v24{order:3;width:100%;overflow-x:auto;padding-bottom:3px!important}
  body.ofqd-home-page #events-dynamiques .ofqd-event-card-media > span{font-size:7px!important;padding:2px 5px!important}
  body.ofqd-home-page #events-dynamiques .ofqd-event-meta-icon{width:10px!important;height:10px!important;min-width:10px!important}
}
@media(prefers-reduced-motion:reduce){
  body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31,
  body.ofqd-home-page #events-dynamiques .ofqd-event-card-v31 .ofqd-favorite-btn::before{transition:none!important}
}
