/* ==========================================================================
   ETHNOS R689 — ANNUAIRE + FICHE MEMBRE : PROPRIÉTAIRE CSS CONSOLIDÉ
   Base consolidée : R582 + R599 + R600.
   Le bloc final R689 est la source de vérité de la fiche publique membre.
   Aucun fichier CSS correctif additionnel n'est chargé par-dessus ce propriétaire.
   ========================================================================== */

/* ETHNOS R581 — Annuaire consolidé.
   Propriétaire visuel final de l’Annuaire et de la fiche membre partagée.
   Consolide les corrections Annuaire R170/R172/R279/R282/R291 ; leurs feuilles séparées ne sont plus chargées. */

/* ETHNOS R169 — fiche Annuaire enrichie et responsive. */
html body .memberDirectoryIdentityCard{
  width:min(820px,calc(100vw - 34px)) !important;
  max-height:min(980px,calc(100vh - 28px)) !important;
  border-radius:20px !important;
}
html body .memberDirectoryIdentityCardHeader{
  grid-template-columns:96px minmax(0,1fr) !important;
  gap:20px !important;
  padding:24px 28px !important;
}
html body .memberDirectoryIdentityAvatar{
  width:92px !important;
  height:92px !important;
}
html body .memberDirectoryIdentityHeaderCopy{min-width:0 !important}
html body .memberDirectoryIdentityCardHeader h3{
  max-width:100% !important;
  font-size:clamp(28px,2.35vw,43px) !important;
  line-height:1.02 !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
html body .memberDirectoryIdentityCardHeader p{font-size:13px !important}
html body .memberDirectoryIdentityBody{
  padding:20px 28px 12px !important;
  scrollbar-width:thin;
  scrollbar-color:rgba(7,26,57,.28) transparent;
}
html body .memberDirectoryIdentityBody::-webkit-scrollbar{width:7px}
html body .memberDirectoryIdentityBody::-webkit-scrollbar-thumb{background:rgba(7,26,57,.25);border-radius:999px}
html body .memberDirectoryIdentityBody section{
  margin-bottom:16px !important;
  padding-bottom:16px !important;
}
html body .memberDirectoryIdentityFacts{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}
html body .memberDirectoryIdentityFacts div{
  min-width:0 !important;
  padding:13px 14px !important;
}
html body .memberDirectoryIdentityFacts strong{
  min-height:25px;
  display:flex !important;
  align-items:center;
  gap:8px;
  font-size:13px !important;
  line-height:1.25 !important;
}
html body .memberDirectoryIdentityFlagValue img{
  width:25px;
  height:17px;
  flex:0 0 auto;
  object-fit:cover;
  border:1px solid rgba(7,26,57,.10);
  border-radius:2px;
}
html body .memberDirectoryIdentityFlagValue span{min-width:0;overflow-wrap:anywhere}
html body .memberDirectoryIdentityBody h4{
  margin-bottom:10px !important;
  font-size:17px !important;
  text-align:center;
}
html body .memberDirectoryIdentityBody p{
  max-width:680px;
  margin-inline:auto !important;
  text-align:center;
  font-size:13px !important;
}
html body .memberDirectoryIdentityInterests{
  justify-content:center !important;
}
html body .memberDirectoryIdentityInterests span{
  font-size:11px !important;
  padding:7px 11px !important;
}
html body .memberDirectoryIdentityInterests span.isEmpty{
  border-style:dashed !important;
  color:#7b8c95 !important;
}
html body .memberDirectoryIdentityFavorites{
  width:100%;
  max-height:158px;
  overflow-y:auto;
  display:grid;
  gap:7px;
  padding-right:4px;
  scrollbar-width:thin;
  scrollbar-color:rgba(7,26,57,.28) transparent;
}
html body .memberDirectoryIdentityFavorites::-webkit-scrollbar{width:6px}
html body .memberDirectoryIdentityFavorites::-webkit-scrollbar-thumb{background:rgba(7,26,57,.24);border-radius:999px}
html body .memberDirectoryIdentityFavorites article{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid rgba(7,26,57,.10);
  border-radius:10px;
  background:#fff2e3;
}
html body .memberDirectoryIdentityFavorites article>img{
  width:25px;
  height:17px;
  object-fit:cover;
  border-radius:2px;
}
html body .memberDirectoryIdentityFavorites article div{min-width:0}
html body .memberDirectoryIdentityFavorites strong{
  display:block;
  color:#071a39;
  font-size:12px;
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
html body .memberDirectoryIdentityFavorites small{
  display:block;
  margin-top:2px;
  color:#667b87;
  font:600 10px/1.3 Manrope,Inter,sans-serif;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
html body .memberDirectoryIdentityFavoritesEmpty{
  padding:15px !important;
  border:1px dashed rgba(7,26,57,.18);
  border-radius:10px;
  color:#71838d !important;
  background:#fffaf3;
}
html body .memberDirectoryIdentityTrophies{
  display:flex !important;
  flex-wrap:wrap;
  justify-content:center !important;
  gap:12px !important;
}
html body .memberDirectoryIdentityTrophies article{
  flex:0 1 180px;
  min-width:150px !important;
  max-width:190px;
  padding:12px 10px !important;
}
html body .memberDirectoryIdentityTrophies img{
  width:62px !important;
  height:62px !important;
  margin-inline:auto;
}
html body .memberDirectoryIdentityTrophies span{font-size:10px !important}
html body .memberDirectoryIdentityFooter{
  padding:10px 18px 16px;
  background:#fff8ee;
  border-top:1px solid rgba(7,26,57,.10);
}
html body .memberDirectoryIdentityActions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-bottom:10px;
}
html body .memberDirectoryIdentityInvite,
html body .memberDirectoryIdentityReport,
html body .memberDirectoryIdentityClose{
  min-height:46px;
  border-radius:10px;
  font-family:var(--ethnos-official-title);
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}
html body .memberDirectoryIdentityInvite{
  border:1px solid #f26722;
  background:#f98649;
  color:#071a39;
}
html body .memberDirectoryIdentityReport{
  border:1px solid #d98b86;
  background:#f7d7d4;
  color:#7f2824;
}
html body .memberDirectoryIdentityClose{
  width:100% !important;
  min-height:46px !important;
  margin:0 !important;
}
html body .memberDirectoryIdentityInvite:hover,
html body .memberDirectoryIdentityReport:hover,
html body .memberDirectoryIdentityClose:hover{transform:translateY(-1px);filter:brightness(1.03)}

@media (min-width:1700px){
  html body .memberDirectoryIdentityCard{
    width:min(960px,calc(100vw - 80px)) !important;
  }
  html body .memberDirectoryIdentityCardHeader{
    grid-template-columns:108px minmax(0,1fr) !important;
    padding:28px 34px !important;
  }
  html body .memberDirectoryIdentityAvatar{width:102px !important;height:102px !important}
  html body .memberDirectoryIdentityBody{padding-inline:34px !important}
}

@media (max-width:760px){
  html body .memberDirectoryIdentityModal{padding:8px !important}
  html body .memberDirectoryIdentityCard{
    width:calc(100vw - 16px) !important;
    max-height:calc(100vh - 16px) !important;
    border-radius:14px !important;
  }
  html body .memberDirectoryIdentityCardHeader{
    grid-template-columns:68px minmax(0,1fr) !important;
    gap:12px !important;
    padding:14px 15px !important;
  }
  html body .memberDirectoryIdentityAvatar{width:64px !important;height:64px !important}
  html body .memberDirectoryIdentityCardHeader h3{font-size:clamp(20px,6vw,28px) !important}
  html body .memberDirectoryIdentityCardHeader p{font-size:10px !important}
  html body .memberDirectoryIdentityBody{padding:13px 14px 8px !important}
  html body .memberDirectoryIdentityFacts{grid-template-columns:1fr !important;gap:7px !important}
  html body .memberDirectoryIdentityFacts div{padding:9px 11px !important}
  html body .memberDirectoryIdentityBody section{margin-bottom:11px !important;padding-bottom:11px !important}
  html body .memberDirectoryIdentityBody h4{font-size:14px !important;margin-bottom:7px !important}
  html body .memberDirectoryIdentityFavorites{max-height:128px}
  html body .memberDirectoryIdentityTrophies article{flex-basis:135px;min-width:125px !important}
  html body .memberDirectoryIdentityFooter{padding:8px 10px 10px}
  html body .memberDirectoryIdentityActions{gap:7px;margin-bottom:7px}
  html body .memberDirectoryIdentityInvite,
  html body .memberDirectoryIdentityReport,
  html body .memberDirectoryIdentityClose{min-height:40px !important;font-size:12px !important}
}

@media (max-height:760px){
  html body .memberDirectoryIdentityCard{max-height:calc(100vh - 12px) !important}
  html body .memberDirectoryIdentityCardHeader{padding-top:13px !important;padding-bottom:13px !important}
  html body .memberDirectoryIdentityAvatar{width:62px !important;height:62px !important}
  html body .memberDirectoryIdentityBody{padding-top:11px !important}
  html body .memberDirectoryIdentityBody section{margin-bottom:10px !important;padding-bottom:10px !important}
  html body .memberDirectoryIdentityFavorites{max-height:105px}
  html body .memberDirectoryIdentityTrophies img{width:48px !important;height:48px !important}
}

/* ETHNOS R172 — fiche Annuaire reliée au profil + contraste crème/blanc. */
:root{
  --r172-directory-cream:#fff1df;
  --r172-directory-white:#fffdf9;
  --r172-directory-line:rgba(7,26,57,.12);
}

/* Le fond du volet reste crème jusqu'en bas. */
html body .memberDirectoryDrawer,
html body .memberDirectoryShell,
html body .memberDirectoryShell.isResultsMode,
html body .memberDirectoryShell.isResultsMode .memberDirectoryContent{
  background:var(--r172-directory-cream) !important;
}

/* La liste garde le fond crème ; chaque profil reste un bandeau blanc. */
html body .memberDirectoryShell.isResultsMode .memberDirectoryResults{
  background:var(--r172-directory-cream) !important;
  border-top-color:var(--r172-directory-cream) !important;
}
html body .memberDirectoryShell.isResultsMode .memberDirectoryResult,
html body .memberDirectoryShell.isResultsMode .memberDirectoryResult:nth-child(even){
  background:var(--r172-directory-white) !important;
  border-bottom:1px solid var(--r172-directory-line) !important;
}
html body .memberDirectoryShell.isResultsMode .memberDirectoryResult:hover,
html body .memberDirectoryShell.isResultsMode .memberDirectoryResult:focus-visible{
  background:#fff !important;
}

/* Le bouton Fermer reste posé sur le fond crème, sans recréer de zone blanche. */
html body .memberDirectoryShell.isResultsMode .memberDirectoryInlineClose{
  position:relative;
  z-index:1;
}

/* Consolidation R279 — mesures validées 1280x720. */
@media (width:1280px) and (height:720px){
  html[data-ethnos-ui] body #memberDrawer-directory .memberDirectoryInlineSearch > button[type="submit"]{
    box-sizing:border-box !important;align-self:center !important;height:29px !important;min-height:29px !important;max-height:29px !important;padding-top:0 !important;padding-bottom:0 !important;
  }
  html[data-ethnos-ui] body #memberDrawer-directory .memberDirectoryHeader > h2{font-size:18px !important;line-height:1.02 !important;}
}

/* ==========================================================================
   ETHNOS R282 — ANNUAIRE 1280x720
   Correction locale du décalage créé par R281.

   PREUVE DE CAUSE :
   R281 avait remplacé le layout de .memberDirectoryContent par CSS Grid.
   Ce parent contient l'ensemble des sections de l'annuaire, pas seulement
   Recommencer et Fermer. Le changement structurel touchait donc des éléments
   hors périmètre et modifiait leur flux vertical.

   A MODIFIER :
   - restaurer le flux normal du conteneur principal ;
   - conserver Recommencer + Fermer côte à côte via un wrapper dédié ;
   - conserver leur hauteur à 29px.

   A NE PAS TOUCHER :
   - Rechercher (validé)
   - titre et sous-titre
   - sections Recherche géographique / Recherche par lettre
   - autres boutons
   - JavaScript
   - autres volets
   - autres résolutions
   ========================================================================== */

@media (width:1280px) and (height:720px){

  /* Annulation ciblée du changement structurel R281 sur le parent global. */
  html[data-ethnos-ui] body
  #memberDrawer-directory .memberDirectoryContent{
    display:block !important;
  }

  /* Wrapper local : seul le duo d'actions basses utilise Flexbox. */
  html[data-ethnos-ui] body
  #memberDrawer-directory .memberDirectoryBottomActions{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    width:100% !important;
    box-sizing:border-box !important;
    margin:8px 0 10px !important;
  }

  html[data-ethnos-ui] body
  #memberDrawer-directory .memberDirectoryBottomActions
  > button.memberDirectoryRestartButton{
    display:flex !important;
    flex:1 1 56% !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:29px !important;
    min-height:29px !important;
    max-height:29px !important;
    margin:0 !important;
    box-sizing:border-box !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
  }

  html[data-ethnos-ui] body
  #memberDrawer-directory .memberDirectoryBottomActions
  > button.memberDirectoryInlineClose{
    display:flex !important;
    flex:1 1 44% !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:29px !important;
    min-height:29px !important;
    max-height:29px !important;
    margin:0 !important;
    box-sizing:border-box !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
  }
}

/* ETHNOS R291 - fiche profil publique.
   Perimetre strict : Ville + fond creme officiel uniquement. */
html body .memberDirectoryIdentityCard,
html body .memberDirectoryIdentityBody,
html body .memberDirectoryIdentityFooter {
  background: #fff1df !important;
}

@media (min-width: 701px) {
  html body .memberDirectoryIdentityFacts {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* ETHNOS R581 — Annuaire + fiche membre interactive, couche finale dédiée. */
html body .memberDirectoryDrawer .memberDirectoryResult{
  cursor:pointer!important;
  pointer-events:auto!important;
}
html body .memberDirectoryDrawer .memberDirectoryResult:hover,
html body .memberDirectoryDrawer .memberDirectoryResult:focus-visible{
  outline:none!important;
  box-shadow:inset 4px 0 0 rgba(242,103,34,.72),0 5px 16px rgba(7,26,57,.08)!important;
}
/* Le menu pays R109 garde sa structure, mais reprend le chevron SVG officiel R580. */
html body .memberDirectoryDrawer .realFlagSelectButton{
  color:#f5f0e8!important;
  opacity:1!important;
  text-shadow:none!important;
  background-color:#061e2c!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.25 6 6.25 11 1.25' fill='none' stroke='%23f7f2e9' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),linear-gradient(180deg,#0b3143 0%,#082536 100%)!important;
  background-repeat:no-repeat,no-repeat!important;
  background-position:right 14px center,right center!important;
  background-size:12px 8px,40px 100%!important;
}
html body .memberDirectoryDrawer .realFlagSelectButton::after{content:none!important;display:none!important}
html body .memberDirectoryDrawer .realFlagSelectOption{
  color:#f5f0e8!important;
  opacity:1!important;
  text-shadow:none!important;
  font-weight:600!important;
}
html body .memberDirectoryDrawer .realFlagSelectOption:hover,
html body .memberDirectoryDrawer .realFlagSelectOption:focus-visible,
html body .memberDirectoryDrawer .realFlagSelectOption.isSelected{
  color:#fff!important;
  background:rgba(245,138,75,.18)!important;
}
/* Ville : même rendu de champ/chevron que le standard officiel utilisé en R580. */
html body .memberDirectoryDrawer select[data-directory-city]{
  -webkit-appearance:none!important;
  appearance:none!important;
  padding-right:42px!important;
  background-color:#092535!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.25 6 6.25 11 1.25' fill='none' stroke='%23f7f2e9' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),linear-gradient(180deg,#0b3143 0%,#082536 100%)!important;
  background-repeat:no-repeat,no-repeat!important;
  background-position:right 14px center,right center!important;
  background-size:12px 8px,40px 100%!important;
  color:#f5f0e8!important;
}
html body .memberDirectoryIdentityActions .memberDirectoryIdentityContact{
  min-width:150px!important;
}
/* Salons/Tchat : le pseudo est désormais une porte d'entrée vers la même fiche membre. */
html body .ethnosSalonR573Meta>strong,
html body .ethnosSalonR573MemberCopy>strong{
  cursor:pointer!important;
}
html body .ethnosSalonR573Meta>strong:hover,
html body .ethnosSalonR573Meta>strong:focus-visible{
  text-decoration:underline!important;
  text-underline-offset:3px!important;
  outline:none!important;
}

/* ETHNOS R582 — correction ciblée : supprimer l'ancienne respiration R168
   matérialisée par un border-top de 10/14px au-dessus des résultats. */
html body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryResults{
  border-top:0!important;
  margin-top:0!important;
}


/* ===== Consolidation R599 ===== */
/* ETHNOS R599 — Annuaire : identité membre compacte et géométrie de résultats figée.
   Contrat local : pseudonyme complet (25 caractères max) -> blason -> icône Officiel éventuelle,
   toujours sur une seule ligne. Les colonnes texte sont alignées à gauche et la typo
   du pseudonyme est ajustée par JS uniquement lorsque l'espace l'exige. */

html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryResult{
  box-sizing:border-box !important;
  width:100% !important;
  height:78px !important;
  min-height:78px !important;
  max-height:78px !important;
  padding:10px 14px !important;
  grid-template-columns:52px minmax(0,1fr) 27px !important;
  grid-template-areas:
    "avatar identity flag"
    "avatar presence presence" !important;
  grid-template-rows:minmax(0,1fr) 18px !important;
  column-gap:10px !important;
  row-gap:2px !important;
  align-items:center !important;
  overflow:hidden !important;
}

html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryAvatar{
  grid-area:avatar !important;
  width:48px !important;
  height:48px !important;
  min-width:48px !important;
  min-height:48px !important;
  max-width:48px !important;
  max-height:48px !important;
}

html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryIdentity{
  grid-area:identity !important;
  position:relative !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  grid-template-rows:20px 13px 13px !important;
  align-content:center !important;
  align-items:center !important;
  justify-content:stretch !important;
  justify-items:stretch !important;
  text-align:left !important;
  gap:1px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
}

html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine{
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  justify-self:stretch !important;
  text-align:left !important;
  gap:4px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:20px !important;
  min-height:20px !important;
  max-height:20px !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}

html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine > .r599DirectoryName{
  display:block !important;
  flex:0 0 auto !important;
  width:max-content !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  overflow:visible !important;
  white-space:nowrap !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
  text-overflow:clip !important;
  font-size:13px !important;
  line-height:20px !important;
  letter-spacing:-.02em !important;
}

html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine > .memberDirectoryShield{
  display:block !important;
  flex:0 0 20px !important;
  grid-area:auto !important;
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  min-height:20px !important;
  max-width:20px !important;
  max-height:20px !important;
  margin:0 !important;
  object-fit:contain !important;
}

html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot{
  display:inline-flex !important;
  flex:0 0 18px !important;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  min-height:18px !important;
  max-width:18px !important;
  max-height:18px !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  overflow:hidden !important;
}
html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot > .ethnosMemberOfficialR594{
  display:grid !important;
  place-items:center !important;
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  min-height:16px !important;
  max-width:16px !important;
  max-height:16px !important;
}

/* Le badge texte « ✓ Officiel » n'a plus sa place dans un résultat Annuaire. */
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r484OfficialBadgeMini{
  display:none !important;
}

html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r484DirectoryOfficialDetail,
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r599DirectoryLocation{
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  height:13px !important;
  min-height:13px !important;
  max-height:13px !important;
  margin:0 !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
  text-align:left !important;
  justify-self:stretch !important;
  font-size:8px !important;
  line-height:13px !important;
}
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r484DirectoryOfficialDetail[aria-hidden="true"]{
  visibility:hidden !important;
}

html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryFlag{
  grid-area:flag !important;
  width:25px !important;
  min-width:25px !important;
  max-width:25px !important;
  height:auto !important;
  max-height:17px !important;
  justify-self:end !important;
}

html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryPresence{
  grid-area:presence !important;
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  gap:5px !important;
  width:100% !important;
  min-width:0 !important;
  height:18px !important;
  min-height:18px !important;
  max-height:18px !important;
  margin:0 !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryPresence > span:not(.r599DirectoryFollowInline){
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryFollowInline{
  display:inline-flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  height:15px !important;
  min-height:15px !important;
  margin:0 0 0 4px !important;
  padding:1px 6px !important;
  border:1px solid rgba(49,209,207,.42) !important;
  border-radius:999px !important;
  background:rgba(49,209,207,.11) !important;
  color:#147f7e !important;
  font:800 7px/1 Manrope,Inter,"Segoe UI",Arial,sans-serif !important;
}

@media (max-width:1600px) and (max-height:920px){
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryResult{
    height:68px !important;
    min-height:68px !important;
    max-height:68px !important;
    padding:8px 11px !important;
    grid-template-columns:42px minmax(0,1fr) 22px !important;
    grid-template-rows:minmax(0,1fr) 15px !important;
    column-gap:7px !important;
    row-gap:1px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryAvatar{
    width:40px !important;height:40px !important;min-width:40px !important;min-height:40px !important;max-width:40px !important;max-height:40px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryIdentity{
    grid-template-rows:17px 11px 11px !important;gap:0 !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine{
    height:17px !important;min-height:17px !important;max-height:17px !important;gap:3px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine > .r599DirectoryName{
    /* R599 : garder la taille normale quand elle tient réellement.
       Le JS réduit seulement le pseudo qui dépasse, jamais toute la liste. */
    font-size:13px !important;line-height:17px !important;letter-spacing:-.02em !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine > .memberDirectoryShield{
    flex-basis:17px !important;width:17px !important;height:17px !important;min-width:17px !important;min-height:17px !important;max-width:17px !important;max-height:17px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot{
    flex-basis:16px !important;width:16px !important;height:16px !important;min-width:16px !important;min-height:16px !important;max-width:16px !important;max-height:16px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot > .ethnosMemberOfficialR594{
    width:14px !important;height:14px !important;min-width:14px !important;min-height:14px !important;max-width:14px !important;max-height:14px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r484DirectoryOfficialDetail,
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r599DirectoryLocation{
    height:11px !important;min-height:11px !important;max-height:11px !important;font-size:7px !important;line-height:11px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryFlag{
    width:21px !important;min-width:21px !important;max-width:21px !important;max-height:14px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryPresence{
    height:15px !important;min-height:15px !important;max-height:15px !important;font-size:7px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryFollowInline{height:13px !important;min-height:13px !important;font-size:6px !important;padding-inline:5px !important}
}


/* ETHNOS R599 — FICHE MEMBRE : contrat d'identité + actions sobres.
   Séquence dure : pseudo complet -> blason -> icône Officiel.
   Le badge texte ✓ Officiel est conservé sur cette fiche uniquement. */
html body .memberDirectoryIdentityCardHeader .r599DirectoryOfficialTitleLine{
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
}
html body .memberDirectoryIdentityCardHeader .r599DirectoryModalIdentitySequence{
  display:inline-flex !important;
  flex:0 1 auto !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
  min-width:0 !important;
  max-width:100% !important;
  white-space:nowrap !important;
}
html body .memberDirectoryIdentityCardHeader .r599DirectoryModalIdentitySequence > h3[data-directory-identity-name]{
  display:block !important;
  flex:0 0 auto !important;
  width:max-content !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  overflow:visible !important;
  white-space:nowrap !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
  text-overflow:clip !important;
}
html body .memberDirectoryIdentityCardHeader .r599DirectoryModalShieldSlot{
  display:inline-flex !important;
  flex:0 0 26px !important;
  width:26px !important;
  height:26px !important;
  align-items:center !important;
  justify-content:center !important;
}
html body .memberDirectoryIdentityCardHeader .r599DirectoryModalShieldSlot > .memberDirectoryShield{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  min-height:26px !important;
  max-width:26px !important;
  max-height:26px !important;
  object-fit:contain !important;
}
html body .memberDirectoryIdentityCardHeader .r599DirectoryModalOfficialIconSlot{
  display:inline-flex !important;
  flex:0 0 20px !important;
  width:20px !important;
  height:20px !important;
  align-items:center !important;
  justify-content:center !important;
}
html body .memberDirectoryIdentityCardHeader .r599DirectoryModalOfficialIconSlot:empty{
  display:none !important;
  flex-basis:0 !important;
  width:0 !important;
  height:0 !important;
}
html body .memberDirectoryIdentityCardHeader .r599DirectoryModalOfficialIconSlot > .ethnosMemberOfficialR594{
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  min-height:20px !important;
  max-width:20px !important;
  max-height:20px !important;
}
html body .memberDirectoryIdentityCardHeader .r599DirectoryModalOfficialBadgeSlot{
  display:inline-flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  min-width:0 !important;
}

/* Footer plus discret : conserver les actions, réduire seulement leur emprise. */
html body .memberDirectoryIdentityFooter{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  padding:10px 18px 14px !important;
}
html body .memberDirectoryIdentityActions{
  width:min(100%,620px) !important;
  max-width:620px !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,240px)) !important;
  justify-content:center !important;
  align-items:center !important;
  gap:8px 10px !important;
  margin:0 auto 8px !important;
}
html body .memberDirectoryIdentityActions > .memberDirectoryIdentityContact,
html body .memberDirectoryIdentityActions > .memberDirectoryIdentityInvite{
  box-sizing:border-box !important;
  width:100% !important;
  min-width:0 !important;
  max-width:240px !important;
  min-height:40px !important;
  height:40px !important;
  max-height:40px !important;
  justify-self:stretch !important;
  margin:0 !important;
  padding:0 14px !important;
  border-radius:9px !important;
  font-size:13px !important;
}
html body .memberDirectoryIdentityActions > .memberDirectoryIdentityReport{
  box-sizing:border-box !important;
  grid-column:1 / -1 !important;
  justify-self:center !important;
  width:min(240px,100%) !important;
  min-width:0 !important;
  max-width:240px !important;
  min-height:38px !important;
  height:38px !important;
  max-height:38px !important;
  margin:0 !important;
  padding:0 14px !important;
  border-radius:9px !important;
  font-size:12px !important;
}
html[data-ethnos-ui] body .memberDirectoryIdentityFooter .memberDirectoryIdentityActions > button.r484OfficialSpaceButton:not(:disabled):not([hidden]){
  grid-column:1 / -1 !important;
  justify-self:center !important;
  width:min(320px,100%) !important;
  min-width:0 !important;
  max-width:320px !important;
  height:40px !important;
  min-height:40px !important;
  max-height:40px !important;
  margin:0 !important;
  border-radius:9px !important;
  font-size:13px !important;
}
html body .memberDirectoryIdentityFooter > .memberDirectoryIdentityClose{
  box-sizing:border-box !important;
  width:min(320px,100%) !important;
  min-width:0 !important;
  max-width:320px !important;
  min-height:40px !important;
  height:40px !important;
  max-height:40px !important;
  margin:0 auto !important;
  padding:0 14px !important;
  border-radius:9px !important;
  font-size:13px !important;
}

@media (max-width:760px){
  html body .memberDirectoryIdentityCardHeader .r599DirectoryOfficialTitleLine{
    flex-wrap:wrap !important;
    gap:6px 9px !important;
  }
  html body .memberDirectoryIdentityCardHeader .r599DirectoryModalIdentitySequence{
    flex:1 1 100% !important;
    max-width:100% !important;
    gap:6px !important;
  }
  html body .memberDirectoryIdentityCardHeader .r599DirectoryModalShieldSlot,
  html body .memberDirectoryIdentityCardHeader .r599DirectoryModalShieldSlot > .memberDirectoryShield{
    flex-basis:21px !important;
    width:21px !important;height:21px !important;min-width:21px !important;min-height:21px !important;max-width:21px !important;max-height:21px !important;
  }
  html body .memberDirectoryIdentityCardHeader .r599DirectoryModalOfficialIconSlot,
  html body .memberDirectoryIdentityCardHeader .r599DirectoryModalOfficialIconSlot > .ethnosMemberOfficialR594{
    flex-basis:17px !important;
    width:17px !important;height:17px !important;min-width:17px !important;min-height:17px !important;max-width:17px !important;max-height:17px !important;
  }
  html body .memberDirectoryIdentityActions{
    width:min(100%,360px) !important;
    max-width:360px !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
  }
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityContact,
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityInvite,
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityReport,
  html[data-ethnos-ui] body .memberDirectoryIdentityFooter .memberDirectoryIdentityActions > button.r484OfficialSpaceButton:not(:disabled):not([hidden]){
    grid-column:1 !important;
    width:100% !important;
    max-width:360px !important;
    justify-self:stretch !important;
  }
  html body .memberDirectoryIdentityFooter > .memberDirectoryIdentityClose{
    width:min(100%,360px) !important;
    max-width:360px !important;
  }
}

/* ========================================================================== */
/* R599 — GÉOMÉTRIE RÉELLE DU RAIL ANNUAIRE                                  */
/* La QA R598 utilisait un panneau artificiellement large (520 px). Le rail   */
/* actif fait ~201–294 px selon les formats Ethnos. On récupère donc la colonne*/
/* du drapeau pour la ligne d'identité : le drapeau devient flottant au milieu */
/* droit, tandis que pseudo -> blason -> Officiel utilise toute la largeur     */
/* réellement libre. La hauteur des résultats reste strictement inchangée.     */
/* ========================================================================== */
@media (min-width:901px){
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryResult{
    position:relative !important;
    padding:10px 10px !important;
    grid-template-columns:52px minmax(0,1fr) !important;
    grid-template-areas:
      "avatar identity"
      "avatar presence" !important;
    grid-template-rows:minmax(0,1fr) 18px !important;
    column-gap:6px !important;
    row-gap:2px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryIdentity{
    grid-area:identity !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    justify-self:stretch !important;
    justify-items:stretch !important;
    text-align:left !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine{
    width:100% !important;
    max-width:100% !important;
    justify-content:flex-start !important;
    justify-self:stretch !important;
    text-align:left !important;
    gap:3px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine > .memberDirectoryShield{
    flex-basis:18px !important;
    width:18px !important;height:18px !important;
    min-width:18px !important;min-height:18px !important;
    max-width:18px !important;max-height:18px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot{
    flex-basis:16px !important;
    width:16px !important;height:16px !important;
    min-width:16px !important;min-height:16px !important;
    max-width:16px !important;max-height:16px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot > .ethnosMemberOfficialR594{
    width:14px !important;height:14px !important;
    min-width:14px !important;min-height:14px !important;
    max-width:14px !important;max-height:14px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryFlag{
    position:absolute !important;
    z-index:2 !important;
    right:10px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    grid-area:auto !important;
    margin:0 !important;
  }
  /* Le drapeau occupe la moitié basse du bandeau : les lignes secondaires le
     réservent, mais la ligne pseudo/blason/Officiel récupère toute la largeur. */
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r484DirectoryOfficialDetail,
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r599DirectoryLocation,
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryPresence{
    box-sizing:border-box !important;
    padding-right:34px !important;
    text-align:left !important;
  }
}

@media (min-width:901px) and (max-width:1600px) and (max-height:920px){
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryResult{
    /* hauteur 68 px conservée ; seule la largeur interne est mieux exploitée */
    padding:8px 7px !important;
    grid-template-columns:42px minmax(0,1fr) !important;
    grid-template-rows:minmax(0,1fr) 15px !important;
    column-gap:5px !important;
    row-gap:1px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine{
    gap:2px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine > .memberDirectoryShield{
    flex-basis:16px !important;
    width:16px !important;height:16px !important;
    min-width:16px !important;min-height:16px !important;
    max-width:16px !important;max-height:16px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot{
    flex-basis:14px !important;
    width:14px !important;height:14px !important;
    min-width:14px !important;min-height:14px !important;
    max-width:14px !important;max-height:14px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot > .ethnosMemberOfficialR594{
    width:13px !important;height:13px !important;
    min-width:13px !important;min-height:13px !important;
    max-width:13px !important;max-height:13px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryFlag{
    right:7px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r484DirectoryOfficialDetail,
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r599DirectoryLocation,
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryPresence{
    padding-right:29px !important;
  }
}


/* ===== Consolidation R600 ===== */
/* ETHNOS R600 — Annuaire : dernier verrou de géométrie réelle.
   Aucun pseudo n'est tronqué. La ligne identité exploite toute la largeur utile ;
   le drapeau quitte la grille du pseudo et se place sur la zone basse du résultat. */
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryResult{
  position:relative !important;
  grid-template-columns:46px minmax(0,1fr) !important;
  grid-template-areas:
    "avatar identity"
    "avatar presence" !important;
  column-gap:8px !important;
  padding-right:12px !important;
}
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryAvatar{
  width:44px !important;height:44px !important;min-width:44px !important;min-height:44px !important;max-width:44px !important;max-height:44px !important;
}
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryIdentity{
  width:100% !important;max-width:none !important;overflow:visible !important;
}
html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine{
  width:100% !important;max-width:none !important;overflow:hidden !important;
}
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryFlag{
  position:absolute !important;
  right:10px !important;
  bottom:11px !important;
  z-index:2 !important;
  grid-area:auto !important;
}
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r484DirectoryOfficialDetail,
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r599DirectoryLocation,
html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryPresence{
  padding-right:30px !important;
}

@media (max-width:1600px) and (max-height:920px){
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryResult{
    padding:7px 8px !important;
    padding-right:8px !important;
    grid-template-columns:38px minmax(0,1fr) !important;
    column-gap:6px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryAvatar{
    width:38px !important;height:38px !important;min-width:38px !important;min-height:38px !important;max-width:38px !important;max-height:38px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryFlag{
    right:8px !important;bottom:9px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r484DirectoryOfficialDetail,
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryResult .r599DirectoryLocation,
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryPresence{
    padding-right:27px !important;
  }
}
@media (min-width:901px) and (max-width:1366px){
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryResult{
    grid-template-columns:36px minmax(0,1fr) !important;
    column-gap:5px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .memberDirectoryShell.isResultsMode .memberDirectoryAvatar{
    width:36px !important;height:36px !important;min-width:36px !important;min-height:36px !important;max-width:36px !important;max-height:36px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine{gap:2px !important;}
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryNameLine > .memberDirectoryShield{
    flex-basis:15px !important;width:15px !important;height:15px !important;min-width:15px !important;min-height:15px !important;max-width:15px !important;max-height:15px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot{
    flex-basis:14px !important;width:14px !important;height:14px !important;min-width:14px !important;min-height:14px !important;max-width:14px !important;max-height:14px !important;
  }
  html.ethnosConnectedUnified body #memberDrawer-directory .r599DirectoryOfficialSlot > .ethnosMemberOfficialR594{
    width:12px !important;height:12px !important;min-width:12px !important;min-height:12px !important;max-width:12px !important;max-height:12px !important;
  }
}


/* ==========================================================================
   R689 — FICHE PUBLIQUE MEMBRE : STRUCTURE DE RÉFÉRENCE
   Périmètre : photo, fermeture, activité Favoris/Événements, trophées, actions.
   ========================================================================== */

html.directoryIdentityOpen body{overflow:hidden !important}
html body .memberDirectoryIdentityModal[hidden]{display:none !important}
html body .memberDirectoryIdentityModal{
  position:fixed !important;
  inset:0 !important;
  z-index:1600 !important;
  display:grid !important;
  place-items:center !important;
  padding:20px !important;
  font-family:var(--ethnos-official-title,Inter,"Segoe UI",Arial,sans-serif) !important;
}
html body .memberDirectoryIdentityBackdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(2,15,23,.58) !important;
  backdrop-filter:blur(7px) !important;
}
html body .memberDirectoryIdentityCard{
  position:relative !important;
  box-sizing:border-box !important;
  width:min(960px,calc(100vw - 34px)) !important;
  max-height:min(980px,calc(100vh - 28px)) !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) auto !important;
  overflow:hidden !important;
  border:1px solid rgba(49,209,207,.30) !important;
  border-radius:20px !important;
  background:#fff1df !important;
  color:#071a39 !important;
  box-shadow:0 28px 90px rgba(0,0,0,.42) !important;
}

/* Fermeture unique : bouton rond, toujours en haut à droite. */
html body .memberDirectoryIdentityClose{
  position:absolute !important;
  top:16px !important;
  right:16px !important;
  z-index:4 !important;
  box-sizing:border-box !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  max-width:42px !important;
  max-height:42px !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid rgba(255,255,255,.58) !important;
  border-radius:50% !important;
  background:rgba(4,29,40,.72) !important;
  color:#fffaf3 !important;
  font-family:Inter,"Segoe UI",Arial,sans-serif !important;
  font-size:30px !important;
  font-weight:400 !important;
  line-height:1 !important;
  cursor:pointer !important;
  box-shadow:0 4px 16px rgba(0,0,0,.18) !important;
  transition:transform .12s ease,background .12s ease,border-color .12s ease !important;
}
html body .memberDirectoryIdentityClose > span{
  display:block !important;
  transform:translateY(-1px) !important;
  color:inherit !important;
  font:inherit !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}
html body .memberDirectoryIdentityClose:hover,
html body .memberDirectoryIdentityClose:focus-visible{
  transform:translateY(-1px) !important;
  filter:none !important;
  background:rgba(10,55,71,.96) !important;
  border-color:#31d1cf !important;
  outline:2px solid rgba(49,209,207,.30) !important;
  outline-offset:2px !important;
}
html body .memberDirectoryIdentityClose:active{transform:translateY(0) scale(.97) !important}

/* En-tête : la photo n'est plus sous-dimensionnée par rapport à la fiche. */
html body .memberDirectoryIdentityCardHeader{
  position:relative !important;
  display:grid !important;
  grid-template-columns:124px minmax(0,1fr) !important;
  align-items:center !important;
  gap:22px !important;
  padding:26px 76px 26px 30px !important;
  background:linear-gradient(118deg,#03141e 0%,#062431 72%,#083241 100%) !important;
}
html body .memberDirectoryIdentityAvatar{
  box-sizing:border-box !important;
  width:118px !important;
  height:118px !important;
  min-width:118px !important;
  min-height:118px !important;
  max-width:118px !important;
  max-height:118px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  border:3px solid #f26722 !important;
  border-radius:50% !important;
  background:#0a3042 !important;
  color:#fffaf3 !important;
  font-size:30px !important;
  font-weight:800 !important;
}
html body .memberDirectoryIdentityAvatar img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}
html body .memberDirectoryIdentityHeaderCopy{min-width:0 !important}
html body .memberDirectoryIdentityCardHeader h3{
  max-width:100% !important;
  font-size:clamp(28px,2.35vw,43px) !important;
  line-height:1.02 !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
html body .memberDirectoryIdentityCardHeader p{font-size:13px !important}

/* Corps : les zones à contenu variable sont cloisonnées. */
html body .memberDirectoryIdentityBody{
  min-height:0 !important;
  overflow-y:auto !important;
  padding:18px 28px 12px !important;
  background:#fff1df !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(7,26,57,.28) transparent !important;
}
html body .memberDirectoryIdentityBody::-webkit-scrollbar{width:7px !important}
html body .memberDirectoryIdentityBody::-webkit-scrollbar-thumb{background:rgba(7,26,57,.25) !important;border-radius:999px !important}
html body .memberDirectoryIdentityBody section{
  margin:0 0 14px !important;
  padding:0 0 14px !important;
  border-bottom:1px solid rgba(7,26,57,.11) !important;
}
html body .memberDirectoryIdentityBody h4{
  margin:0 0 10px !important;
  color:#071a39 !important;
  font-size:17px !important;
  font-weight:800 !important;
  text-align:center !important;
}
html body .memberDirectoryIdentityBody p{
  max-width:760px !important;
  margin-inline:auto !important;
  text-align:center !important;
  font-size:13px !important;
}
html body .memberDirectoryIdentityFacts{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:12px !important}
html body .memberDirectoryIdentityFacts div{min-width:0 !important;padding:12px 13px !important}
html body .memberDirectoryIdentityFacts strong{min-height:24px !important;display:flex !important;align-items:center !important;gap:8px !important;font-size:13px !important;line-height:1.25 !important}
html body .memberDirectoryIdentityInterests{justify-content:center !important}

/* Favoris + Événements : deux colonnes homologues, chacune avec son propre scroll vertical. */
html body .memberDirectoryIdentityActivityGrid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  align-items:start !important;
  gap:18px !important;
  min-width:0 !important;
  margin:0 0 16px !important;
  padding:0 0 16px !important;
  border-bottom:1px solid rgba(7,26,57,.11) !important;
}
html body .memberDirectoryIdentityActivityGrid > section{
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
html body .memberDirectoryIdentityEventsSection{
  padding-left:18px !important;
  border-left:1px solid rgba(7,26,57,.11) !important;
  text-align:center !important;
}
html body .memberDirectoryIdentityFavorites,
html body .memberDirectoryIdentityEvents{
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  max-height:196px !important;
  min-height:0 !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  align-content:start !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 6px 0 0 !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(7,26,57,.28) transparent !important;
}
html body .memberDirectoryIdentityFavorites{display:grid !important}
html body .memberDirectoryIdentityEvents{display:grid !important;grid-template-columns:1fr !important;text-align:left !important}
html body .memberDirectoryIdentityFavorites::-webkit-scrollbar,
html body .memberDirectoryIdentityEvents::-webkit-scrollbar{width:6px !important}
html body .memberDirectoryIdentityFavorites::-webkit-scrollbar-thumb,
html body .memberDirectoryIdentityEvents::-webkit-scrollbar-thumb{background:rgba(7,26,57,.24) !important;border-radius:999px !important}
html body .memberDirectoryIdentityEventsGroup{display:grid !important;grid-template-columns:1fr !important;align-content:start !important;gap:7px !important;min-width:0 !important}
html body .memberDirectoryIdentityEventCard{grid-template-columns:46px minmax(0,1fr) !important}
html body .memberDirectoryIdentityFavoritesEmpty,
html body .memberDirectoryIdentityEventsEmpty{box-sizing:border-box !important;width:100% !important;margin:0 !important}

/* Trophées : une seule ligne. Les cartes gardent leur taille ; le surplus scrolle horizontalement. */
html body .memberDirectoryIdentityTrophySection{margin-bottom:0 !important;border-bottom:0 !important}
html body .memberDirectoryIdentityTrophies{
  box-sizing:border-box !important;
  width:100% !important;
  display:flex !important;
  flex-flow:row nowrap !important;
  justify-content:safe center !important;
  align-items:stretch !important;
  gap:12px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  padding:2px 4px 10px !important;
  scroll-snap-type:x proximity !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(7,26,57,.26) transparent !important;
}
html body .memberDirectoryIdentityTrophies::-webkit-scrollbar{height:7px !important}
html body .memberDirectoryIdentityTrophies::-webkit-scrollbar-thumb{background:rgba(7,26,57,.22) !important;border-radius:999px !important}
html body .memberDirectoryIdentityTrophies article{
  box-sizing:border-box !important;
  flex:0 0 180px !important;
  width:180px !important;
  min-width:180px !important;
  max-width:180px !important;
  min-height:142px !important;
  display:grid !important;
  align-content:center !important;
  justify-items:center !important;
  gap:9px !important;
  padding:12px 10px !important;
  scroll-snap-align:start !important;
}
html body .memberDirectoryIdentityTrophies img{width:74px !important;height:74px !important;object-fit:contain !important}
html body .memberDirectoryIdentityTrophies span{font-size:10px !important;line-height:1.3 !important}

/* Actions : ligne nette. Le signalement reste visuellement secondaire et plus compact. */
html body .memberDirectoryIdentityFooter{
  padding:14px 28px 16px !important;
  background:#fff1df !important;
  border-top:1px solid rgba(7,26,57,.10) !important;
}
html body .memberDirectoryIdentityActions{
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  margin:0 !important;
}
html body .memberDirectoryIdentityActions > .memberDirectoryIdentityContact,
html body .memberDirectoryIdentityActions > .memberDirectoryIdentityInvite,
html[data-ethnos-ui] body .memberDirectoryIdentityFooter .memberDirectoryIdentityActions > button.r484OfficialSpaceButton:not([hidden]){
  box-sizing:border-box !important;
  flex:1 1 0 !important;
  width:auto !important;
  min-width:0 !important;
  max-width:245px !important;
  height:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  margin:0 !important;
  padding:0 14px !important;
  border-radius:9px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-family:var(--ethnos-official-title,Inter,"Segoe UI",Arial,sans-serif) !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1.1 !important;
  text-align:center !important;
  white-space:normal !important;
  opacity:1 !important;
}
html[data-ethnos-ui] body .memberDirectoryIdentityFooter .memberDirectoryIdentityActions > button.r484OfficialSpaceButton:not([hidden]){
  border:1px solid rgba(255,211,183,.92) !important;
  background:linear-gradient(180deg,#ffad7a 0%,#ee8d55 100%) !important;
  color:#071826 !important;
  box-shadow:0 1px 0 #c96d3d,0 3px 5px rgba(0,0,0,.11) !important;
  cursor:pointer !important;
}
html body .memberDirectoryIdentityInvite{
  border:1px solid #f26722 !important;
  background:#f98649 !important;
  color:#071a39 !important;
  cursor:pointer !important;
}
html body .memberDirectoryIdentityContact[data-contact-state="contact"]{
  border:1px solid #075d87 !important;
  background:linear-gradient(180deg,#188fbe 0%,#0a709b 100%) !important;
  color:#fff !important;
  opacity:1 !important;
  filter:none !important;
  box-shadow:0 1px 0 #075372,0 3px 5px rgba(0,0,0,.10) !important;
  cursor:default !important;
}
html body .memberDirectoryIdentityContact[data-contact-state="contact"]:disabled{opacity:1 !important;color:#fff !important;-webkit-text-fill-color:#fff !important}
html body .memberDirectoryIdentityActions > .memberDirectoryIdentityReport{
  box-sizing:border-box !important;
  flex:0 0 108px !important;
  width:108px !important;
  min-width:108px !important;
  max-width:108px !important;
  height:38px !important;
  min-height:38px !important;
  max-height:38px !important;
  margin:0 !important;
  padding:0 12px !important;
  border:1px solid #d98b86 !important;
  border-radius:8px !important;
  background:#f7d7d4 !important;
  color:#7f2824 !important;
  font-family:var(--ethnos-official-title,Inter,"Segoe UI",Arial,sans-serif) !important;
  font-size:12px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}
html body .memberDirectoryIdentityActions > button:hover:not(:disabled),
html body .memberDirectoryIdentityActions > button:focus-visible:not(:disabled){
  transform:translateY(-1px) !important;
  filter:brightness(1.03) !important;
  outline:none !important;
}

@media (min-width:1700px){
  html body .memberDirectoryIdentityCardHeader{grid-template-columns:140px minmax(0,1fr) !important;padding:28px 82px 28px 34px !important}
  html body .memberDirectoryIdentityAvatar{width:132px !important;height:132px !important;min-width:132px !important;min-height:132px !important;max-width:132px !important;max-height:132px !important}
  html body .memberDirectoryIdentityBody{padding-inline:34px !important}
  html body .memberDirectoryIdentityFavorites,html body .memberDirectoryIdentityEvents{max-height:210px !important}
}

@media (max-width:760px){
  html body .memberDirectoryIdentityModal{padding:8px !important}
  html body .memberDirectoryIdentityCard{width:calc(100vw - 16px) !important;max-height:calc(100vh - 16px) !important;border-radius:14px !important}
  html body .memberDirectoryIdentityClose{top:10px !important;right:10px !important;width:36px !important;height:36px !important;min-width:36px !important;min-height:36px !important;max-width:36px !important;max-height:36px !important;font-size:26px !important}
  html body .memberDirectoryIdentityCardHeader{grid-template-columns:84px minmax(0,1fr) !important;gap:12px !important;padding:14px 54px 14px 15px !important}
  html body .memberDirectoryIdentityAvatar{width:78px !important;height:78px !important;min-width:78px !important;min-height:78px !important;max-width:78px !important;max-height:78px !important;font-size:22px !important}
  html body .memberDirectoryIdentityCardHeader h3{font-size:clamp(20px,6vw,28px) !important}
  html body .memberDirectoryIdentityCardHeader p{font-size:10px !important}
  html body .memberDirectoryIdentityBody{padding:13px 14px 8px !important}
  html body .memberDirectoryIdentityFacts{grid-template-columns:1fr 1fr !important;gap:7px !important}
  html body .memberDirectoryIdentityFacts div{padding:9px 10px !important}
  html body .memberDirectoryIdentityBody section{margin-bottom:11px !important;padding-bottom:11px !important}
  html body .memberDirectoryIdentityBody h4{font-size:14px !important;margin-bottom:7px !important}
  html body .memberDirectoryIdentityActivityGrid{grid-template-columns:1fr !important;gap:12px !important;margin-bottom:12px !important;padding-bottom:12px !important}
  html body .memberDirectoryIdentityEventsSection{padding:12px 0 0 !important;border-left:0 !important;border-top:1px solid rgba(7,26,57,.11) !important}
  html body .memberDirectoryIdentityFavorites,html body .memberDirectoryIdentityEvents{max-height:152px !important}
  html body .memberDirectoryIdentityTrophies{justify-content:flex-start !important}
  html body .memberDirectoryIdentityTrophies article{flex-basis:148px !important;width:148px !important;min-width:148px !important;max-width:148px !important;min-height:128px !important}
  html body .memberDirectoryIdentityTrophies img{width:62px !important;height:62px !important}
  html body .memberDirectoryIdentityFooter{padding:10px 12px 12px !important}
  html body .memberDirectoryIdentityActions{display:grid !important;grid-template-columns:1fr 1fr !important;gap:8px !important}
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityContact,
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityInvite,
  html[data-ethnos-ui] body .memberDirectoryIdentityFooter .memberDirectoryIdentityActions > button.r484OfficialSpaceButton:not([hidden]){width:100% !important;max-width:none !important;height:40px !important;min-height:40px !important;max-height:40px !important;font-size:12px !important}
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityReport{grid-column:1/-1 !important;justify-self:center !important}
}

@media (max-width:470px){
  html body .memberDirectoryIdentityFacts{grid-template-columns:1fr !important}
  html body .memberDirectoryIdentityActions{grid-template-columns:1fr !important}
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityReport{grid-column:1 !important}
}

@media (max-height:760px) and (min-width:761px){
  html body .memberDirectoryIdentityCard{max-height:calc(100vh - 12px) !important}
  html body .memberDirectoryIdentityCardHeader{grid-template-columns:98px minmax(0,1fr) !important;padding-top:13px !important;padding-bottom:13px !important}
  html body .memberDirectoryIdentityAvatar{width:92px !important;height:92px !important;min-width:92px !important;min-height:92px !important;max-width:92px !important;max-height:92px !important;font-size:24px !important}
  html body .memberDirectoryIdentityBody{padding-top:11px !important}
  html body .memberDirectoryIdentityBody section{margin-bottom:10px !important;padding-bottom:10px !important}
  html body .memberDirectoryIdentityFavorites,html body .memberDirectoryIdentityEvents{max-height:142px !important}
  html body .memberDirectoryIdentityTrophies article{min-height:118px !important}
  html body .memberDirectoryIdentityTrophies img{width:58px !important;height:58px !important}
}


/* ========================================================================== */
/* R690 — ÉTAT CONTACT CONFIRMÉ : propriétaire explicite, non désaturé.       */
/* Le moteur JS pose isContactConfirmed ; la couleur ne dépend plus d'un      */
/* enchaînement de sélecteurs historiques ou du style natif :disabled.        */
/* ========================================================================== */
html[data-ethnos-ui] body .memberDirectoryIdentityFooter .memberDirectoryIdentityActions > button.memberDirectoryIdentityContact.isContactConfirmed,
html[data-ethnos-ui] body .memberDirectoryIdentityFooter .memberDirectoryIdentityActions > button.memberDirectoryIdentityContact.isContactConfirmed:disabled{
  border:1px solid #075d87 !important;
  background:linear-gradient(180deg,#168fbe 0%,#086f9c 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  opacity:1 !important;
  filter:none !important;
  box-shadow:0 1px 0 #075372,0 3px 5px rgba(0,0,0,.12) !important;
  cursor:default !important;
}


/* ========================================================================== */
/* R692 — FICHE MEMBRE : propriétaire de la géométrie des actions             */
/* Le module Jeux dispose de son emplacement dédié et ne participe jamais      */
/* au calcul de largeur des quatre actions de relation/modération.              */
/* ========================================================================== */
html body .memberDirectoryIdentityFooter{
  container-type:inline-size !important;
  container-name:memberProfileFooterR692 !important;
}
html body .memberDirectoryIdentityActions{
  min-width:0 !important;
}
html body .memberDirectoryIdentityActions > button{
  min-width:0 !important;
  overflow-wrap:anywhere !important;
}
html body .memberDirectoryIdentityGameAction{
  box-sizing:border-box !important;
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:10px 0 0 !important;
  padding:0 !important;
}
html body .memberDirectoryIdentityGameAction:empty{
  display:none !important;
  margin:0 !important;
}
html body .memberDirectoryIdentityGameAction > .ethnosGamesProfileButtonR649{
  box-sizing:border-box !important;
  width:min(440px,100%) !important;
  min-width:0 !important;
  max-width:440px !important;
  min-height:42px !important;
  margin:0 !important;
  padding:10px 18px !important;
  border-radius:10px !important;
  font-size:13px !important;
  line-height:1.15 !important;
  white-space:normal !important;
}
@container memberProfileFooterR692 (max-width:760px){
  html body .memberDirectoryIdentityActions{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityContact,
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityInvite,
  html[data-ethnos-ui] body .memberDirectoryIdentityFooter .memberDirectoryIdentityActions > button.r484OfficialSpaceButton:not([hidden]){
    width:100% !important;
    max-width:none !important;
  }
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityReport{
    grid-column:1/-1 !important;
    justify-self:center !important;
  }
}
@container memberProfileFooterR692 (max-width:430px){
  html body .memberDirectoryIdentityActions{
    grid-template-columns:1fr !important;
  }
  html body .memberDirectoryIdentityActions > .memberDirectoryIdentityReport{
    grid-column:1 !important;
  }
  html body .memberDirectoryIdentityGameAction > .ethnosGamesProfileButtonR649{
    width:100% !important;
    max-width:none !important;
  }
}
