/* ========================================================================== */
/* ETHNOS R141 — audit transitions Messages, flou global et délai pseudonyme  */
/* Base : R140. Correctifs ciblés du 3 août 2026.                              */
/* ========================================================================== */

/* Géométrie Messages calculée depuis les vraies cartes Profil / Maps. */
html body.hasMessagesDrawerOpenR141 .memberNavDrawerLayer{
  top:var(--r141-message-top,var(--ethnos-card-height)) !important;
  right:0 !important;
  bottom:var(--r141-message-bottom,var(--ethnos-card-height)) !important;
  left:var(--r141-message-left,var(--ethnos-search-width)) !important;
  width:auto !important;
  overflow:hidden !important;
  contain:paint !important;
  pointer-events:none !important;
}
html body.hasMessagesDrawerOpenR141 .memberMessagesDrawer.isOpen{
  pointer-events:auto !important;
}

/* Le premier volet descend réellement depuis le dessous de Profil. */
html body .memberMessagesDrawer{
  transform:translate3d(0,-101%,0) !important;
  opacity:1 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  will-change:transform,opacity !important;
  transition:
    transform .40s cubic-bezier(.22,.72,.18,1),
    opacity .14s ease,
    visibility 0s linear .40s !important;
}
html body .memberMessagesDrawer.isOpen{
  transform:translate3d(0,0,0) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transition:
    transform .40s cubic-bezier(.22,.72,.18,1),
    opacity .14s ease,
    visibility 0s !important;
}

/* Fermeture sans déplacement lors d'un changement de volet : aucun fantôme. */
html body .memberNavDrawer.isR141FadingOut,
html body .memberMessagesDrawer.isR141FadingOut{
  transform:translate3d(0,0,0) !important;
  opacity:0 !important;
  visibility:visible !important;
  pointer-events:none !important;
  transition:opacity .12s ease !important;
}
html body .memberNavDrawer.isR141NoTransition{
  transition:none !important;
  animation:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* Largeur du tableau principal alignée sur la vraie fiche Profil. */
html body .memberMessagesDrawer .memberMessageCenter{
  --message-dashboard-width:var(--r141-message-dashboard-width,var(--ethnos-context-width,430px)) !important;
}

/* Les flèches ouvrent le volet situé à gauche. */
html body .memberMessagesDrawer .memberMessageDashboardButton>i{
  display:inline-grid !important;
  place-items:center !important;
  min-width:22px !important;
  color:#f26722 !important;
  font-size:20px !important;
  line-height:1 !important;
  transform:none !important;
}

/* Fermer = dimensions exactes du bouton Fermer du Profil, tous formats. */
html body .memberMessagesDrawer .memberMessageDashboardClose{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:calc(100% - 28px) !important;
  min-width:0 !important;
  min-height:44px !important;
  margin:10px 14px 14px !important;
  padding:0 14px !important;
  border:1px solid #071a39 !important;
  border-radius:10px !important;
  background:#071a39 !important;
  color:#fffaf3 !important;
  font-family:var(--ethnos-official-title) !important;
  font-size:clamp(13px,.84vw,16px) !important;
  font-weight:700 !important;
  line-height:1.15 !important;
  box-shadow:0 8px 18px rgba(7,26,57,.12) !important;
}
html body .memberMessagesDrawer .memberMessageDashboardClose:hover{
  background:#0b2c49 !important;
  color:#fff !important;
}

/* L'ancien flou interne est neutralisé : les deux volets restent nets. */
html body .memberMessagesDrawer .memberMessageWorkspaceBackdrop{
  display:none !important;
  opacity:0 !important;
  pointer-events:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
html body .memberMessageCenter.hasMessageWorkspaceOpen .memberMessageDashboard{
  filter:none !important;
  opacity:1 !important;
}

/* Flou global placé SOUS les volets Messages, comme l'éditeur Profil. */
.memberMessagesGlobalBackdropR141[hidden]{display:none !important}
.memberMessagesGlobalBackdropR141{
  position:fixed;
  inset:0;
  z-index:80;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  background:rgba(1,10,16,.34);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
  transition:opacity .28s ease,visibility 0s linear .28s;
}
body.hasMessageWorkspaceOpenR141 .memberMessagesGlobalBackdropR141{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity .28s ease,visibility 0s;
}

/* Tous les volets Messages restent au-dessus du flou. */
html body.hasMessagesDrawerOpenR141 .memberNavDrawerLayer{
  z-index:81 !important;
}
html body.hasMessagesDrawerOpenR141 .memberMessagesDrawer,
html body.hasMessagesDrawerOpenR141 .memberMessageDashboard,
html body.hasMessagesDrawerOpenR141 .memberMessageWorkspaceHost,
html body.hasMessagesDrawerOpenR141 .memberMessageWorkspace,
html body.hasMessagesDrawerOpenR141 .memberMessageSideDrawer{
  filter:none !important;
}

/* Le panneau de détail glisse sans flash ni liseré. */
html body .memberMessagesDrawer .memberMessageWorkspaceHost{
  overflow:hidden !important;
  background:transparent !important;
  pointer-events:none !important;
}
html body .memberMessagesDrawer .memberMessageWorkspaceHost:has(.memberMessageWorkspace.isOpen){
  pointer-events:auto !important;
}
html body .memberMessagesDrawer .memberMessageWorkspace{
  transform:translate3d(101%,0,0) !important;
  opacity:0 !important;
  visibility:hidden !important;
  border:0 !important;
  outline:0 !important;
  transition:
    transform .36s cubic-bezier(.22,.72,.18,1),
    opacity .16s ease,
    visibility 0s linear .36s !important;
}
html body .memberMessagesDrawer .memberMessageWorkspace.isOpen{
  transform:translate3d(0,0,0) !important;
  opacity:1 !important;
  visibility:visible !important;
  transition:
    transform .36s cubic-bezier(.22,.72,.18,1),
    opacity .16s ease,
    visibility 0s !important;
}

/* Aucun volet inactif ne doit rester visible ou cliquable. */
html body .memberNavDrawer:not(.isOpen):not(.isR141FadingOut){
  pointer-events:none !important;
}
html body .memberMessagesDrawer:not(.isOpen):not(.isR141FadingOut) .memberMessageWorkspace,
html body .memberMessagesDrawer:not(.isOpen):not(.isR141FadingOut) .memberMessageSideDrawer{
  visibility:hidden !important;
  pointer-events:none !important;
}

@media (max-width:760px){
  html body.hasMessagesDrawerOpenR141 .memberNavDrawerLayer{
    left:0 !important;
  }
}
