/**
 * Design dynamique pour les cartes IESR, Domaines, Mentions, Parcours, Pages, Publications.
 * Les cartes s'étirent pour contenir le texte ; les icônes (likes, commentaires, dislikes, partages, masques) ne débordent jamais en hauteur.
 */

/* Carte dynamique : min-height au lieu de height fixe, contenu peut s'étendre */
.gridarea__wraper--dynamic {
  height: auto !important;
  min-height: 400px;
  display: flex;
  flex-direction: column;
  overflow: visible;
}

.gridarea__wraper--dynamic .gridarea__img {
  flex-shrink: 0;
}

.gridarea__wraper--dynamic .gridarea__content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: visible;
}

.gridarea__wraper--dynamic .gridarea__content > p {
  flex: 1 1 auto;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* Zone texte extensible : pas de coupure forcée */
.gridarea__wraper--dynamic .gridarea__content p,
.gridarea__wraper--dynamic .gridarea__content .gridarea__heading,
.gridarea__wraper--dynamic .gridarea__content h3,
.gridarea__wraper--dynamic .gridarea__content h5,
.gridarea__wraper--dynamic .gridarea__content h6 {
  overflow: visible;
}

/* Barre d'icônes sociales : UNE SEULE LIGNE, JAMAIS DE DEBORDEMENT EN HAUTEUR */
.gridarea__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  min-height: 42px;
  flex-shrink: 0;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
  overflow: visible;
}

.gridarea__actions .btn {
  flex-shrink: 0;
  min-height: 36px;
  padding: 6px 10px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
  line-height: 1.2;
}

.gridarea__actions .btn i {
  flex-shrink: 0;
}

.gridarea__actions .btn span {
  flex-shrink: 0;
}

/* Override des cartes avec height fixe en inline : forcer le comportement dynamique */
.gridarea__wraper[style*="height:500px"],
.gridarea__wraper[style*="height:550px"] {
  height: auto !important;
  min-height: 400px;
  display: flex;
  flex-direction: column;
  overflow: visible;
}

.gridarea__wraper[style*="height:500px"] .gridarea__content,
.gridarea__wraper[style*="height:550px"] .gridarea__content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: visible;
}

/* Cible les divs qui contiennent les boutons like/comment/dislike (position:relative;bottom:0) */
.gridarea__wraper > .gridarea__content > div[style*="position:relative"],
.gridarea__wraper > .gridarea__content > div[style*="bottom:0"] {
  flex-shrink: 0;
  min-height: 42px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  margin-top: auto;
  padding-top: 8px;
}

.gridarea__wraper > .gridarea__content > div[style*="position:relative"] .btn,
.gridarea__wraper > .gridarea__content > div[style*="bottom:0"] .btn {
  flex-shrink: 0;
  min-height: 36px;
}
