/* RenfortPro v78 — messagerie stable sans reflow */
body.rp74-messages-open{overflow:hidden}
body.rp74-messages-open .top{position:relative;top:auto}
#messages.rp74Messaging{height:calc(100vh - 74px);min-height:0;overflow:hidden;background:#f7f5f1}
#messages.rp74Messaging .messagesWrap{height:100%;min-height:0;overflow:hidden;grid-template-columns:minmax(235px,270px) minmax(420px,1fr) minmax(280px,330px)}
#messages.rp74Messaging .inbox{height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding-bottom:0;background:#fff}
#messages.rp74Messaging .inboxTitle,
#messages.rp74Messaging .inboxSearch,
#messages.rp74Messaging .inboxFilters{flex:0 0 auto}
#messages.rp74Messaging #conversationList{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:18px;scrollbar-gutter:stable}
#messages.rp74Messaging .chat{height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column;background:#fff}
#messages.rp74Messaging .chatHead{position:relative;z-index:6;flex:0 0 auto;background:#fff}
#messages.rp74Messaging .quickReplies{position:relative;z-index:5;flex:0 0 auto;background:#fff;border-bottom:1px solid var(--line)}
#messages.rp74Messaging .chatBody{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-bottom:34px;scroll-behavior:auto}
#messages.rp74Messaging .chatInput{position:relative;z-index:7;flex:0 0 auto;background:#fff}
#messages.rp74Messaging .attachmentPreview,
#messages.rp74Messaging .voiceComposer,
#messages.rp74Messaging .rp74ReplyComposer{flex:0 0 auto}
#messages.rp74Messaging .context{height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:#fff;padding-bottom:26px}
#messages.rp74Messaging .contextActions{position:sticky;bottom:-1px;background:linear-gradient(to top,#fff 84%,#ffffff00);padding-top:22px;padding-bottom:8px;z-index:3}

.rp74MissionMeta{font-size:10px!important;color:#6f7d78!important;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:48vw}
.rp74SearchToggle{border:1px solid var(--line)!important;background:#fff!important;border-radius:99px!important;width:38px;height:38px;padding:0!important;display:grid;place-items:center;font-size:16px!important}
.rp74MessageSearch{display:none;position:relative;z-index:8;flex:0 0 auto;background:#fff;border-bottom:1px solid var(--line);padding:10px 14px;gap:8px;align-items:center}
.rp74MessageSearch.open{display:flex}
.rp74MessageSearch input{flex:1;border:1px solid #d9ddd8;border-radius:99px;padding:10px 14px;outline:none;background:#fbfcfa}
.rp74MessageSearch input:focus{border-color:#8eb3a5;box-shadow:0 0 0 3px #8eb3a51c}
.rp74MessageSearch>button{border:1px solid var(--line);background:#fff;border-radius:99px;padding:9px 12px;font-weight:700}
.rp74SearchResults{position:absolute;left:14px;right:14px;top:54px;max-height:280px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 45px #142d271f;z-index:30;padding:6px}
.rp74SearchResults:empty{display:none}
.rp74SearchResults button{display:block;width:100%;border:0;background:#fff;text-align:left;padding:10px;border-radius:9px}
.rp74SearchResults button:hover{background:#f1f5f2}
.rp74SearchResults b,.rp74SearchResults small{display:block}
.rp74SearchResults b{font-size:11px}.rp74SearchResults small{font-size:9px;color:var(--muted);margin-top:4px}

.rp74Older{display:block;margin:2px auto 18px;border:1px solid var(--line);background:#fff;border-radius:99px;padding:9px 14px;font-size:10px;font-weight:800}
.rp74UnreadDivider{display:flex;align-items:center;gap:8px;margin:16px 0;color:#cc5b36;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.rp74UnreadDivider:before,.rp74UnreadDivider:after{content:"";height:1px;background:#f0b29d;flex:1}
.rp74BubbleTools{position:absolute;top:5px;right:6px;opacity:0;transition:.15s}
.bubble:hover .rp74BubbleTools,.bubble:focus-within .rp74BubbleTools{opacity:1}
.bubble{position:relative}
.rp74BubbleTools button{border:0;background:#f1f3ef;color:#263d35;width:27px;height:27px;border-radius:50%;font-size:12px;padding:0}
.bubble.me .rp74BubbleTools button{background:#ffffff20;color:#fff}
.rp74BubbleTime{display:block;font-size:8px;opacity:.62;margin-top:6px;text-align:right}
.rp74ReplyQuote{border-left:3px solid #9eb7ad;background:#f1f5f2;border-radius:7px;padding:7px 9px;margin-bottom:8px;font-size:10px;color:#52645e;line-height:1.35}
.bubble.me .rp74ReplyQuote{background:#ffffff14;border-left-color:#cfe6dc;color:#eef8f4}
.rp74ReplyComposer{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#f4f7f4;border-top:1px solid var(--line)}
.rp74ReplyComposer>div{min-width:0;flex:1}.rp74ReplyComposer b,.rp74ReplyComposer small{display:block}.rp74ReplyComposer b{font-size:10px}.rp74ReplyComposer small{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}
.rp74ReplyComposer button{border:0;background:none;font-size:18px}
.rp74Event{max-width:min(86%,650px)!important;margin:14px auto!important;border:1px solid #eadfd8!important;background:#fff9f4!important;color:#5f4334!important;border-radius:13px!important;text-align:center;padding:11px 14px!important;font-size:10px!important}
.rp74Event:before{content:"◆";color:#ff7045;margin-right:7px}
.rp74Event .rp74BubbleTime{text-align:center}
.rp74Event .rp74BubbleTools{display:none}
.rp74MessageHit{outline:3px solid #ff805d40;outline-offset:3px;animation:rp74Hit .9s ease}
@keyframes rp74Hit{0%,100%{transform:none}45%{transform:translateY(-2px)}}
.rp74NewMessages{display:none;position:absolute;right:26px;bottom:82px;z-index:18;border:0;background:#173f35;color:#fff;border-radius:99px;padding:10px 14px;font-size:10px;font-weight:800;box-shadow:0 10px 30px #173f3540}
#messages.rp74Messaging .chat{position:relative}
.rp74NewMessages.show{display:block}

.rp74ContextSection{border-top:1px solid var(--line);padding-top:17px;margin-top:17px}
.rp74ContextSection h4{font-size:9px;letter-spacing:.1em;color:var(--muted);margin:0 0 10px}
.rp74MediaGrid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.rp74MediaItem{border:1px solid var(--line);border-radius:10px;background:#fafbf8;min-height:58px;padding:8px;text-decoration:none;color:inherit;overflow:hidden}
.rp74MediaItem img{width:100%;height:74px;object-fit:cover;border-radius:7px;margin-bottom:6px}.rp74MediaItem b,.rp74MediaItem small{display:block}.rp74MediaItem b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp74MediaItem small{font-size:8px;color:var(--muted);margin-top:4px}
.rp74Timeline{display:flex;flex-direction:column;gap:8px}.rp74TimelineItem{display:grid;grid-template-columns:8px 1fr;gap:9px;font-size:9px;line-height:1.35}.rp74TimelineItem i{width:7px;height:7px;border-radius:50%;background:#ff805d;margin-top:3px}.rp74TimelineItem b,.rp74TimelineItem small{display:block}.rp74TimelineItem small{color:var(--muted);margin-top:3px}
.rp74EmptyMini{font-size:9px;color:var(--muted);padding:8px 0}

@media(max-width:1100px){#messages.rp74Messaging .messagesWrap{grid-template-columns:230px minmax(390px,1fr) 270px}}
@media(max-width:900px){
  #messages.rp74Messaging .messagesWrap{grid-template-columns:220px minmax(0,1fr)}
  #messages.rp74Messaging .context{display:none}
  .rp74MissionMeta{max-width:45vw}
}
@media(max-width:680px){
  #messages.rp74Messaging .messagesWrap{grid-template-columns:1fr}
  #messages.rp74Messaging .inbox{display:none}
  #messages.rp74Messaging .chat{grid-column:1}
  .rp74MissionMeta{max-width:58vw}
}


/* v75 — aperçu compact + stabilité visuelle */
#messages.rp74Messaging #conversationList .conversation{min-height:68px;contain:layout paint}
#messages.rp74Messaging #conversationList .conversation>div{min-width:0;overflow:hidden}
#messages.rp74Messaging #conversationList .conversation>div small:last-child{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.35;margin-top:3px}
#messages.rp74Messaging #conversationList{overflow-anchor:none}
#messages.rp74Messaging .chatBody{overflow-anchor:none}
.rp75ReturnThread{display:none;position:absolute;left:50%;right:auto;transform:translateX(-50%);bottom:82px;z-index:19;border:1px solid #d8ded9;background:#fff;color:#173f35;border-radius:99px;padding:10px 14px;font-size:10px;font-weight:800;box-shadow:0 10px 30px #173f3526;white-space:nowrap}
.rp75ReturnThread.show{display:block}
#messages.rp74Messaging .chat.rp75FarFromThread .rp74NewMessages.show{bottom:126px}

/* v76 — ancrage bas et anti-clignotement */
#messages.rp74Messaging .chatBody{scroll-snap-type:none!important;overflow-anchor:none!important}
#messages.rp74Messaging .conversation{transition:background .12s ease!important}
#messages.rp74Messaging #conversationList{contain:layout style}

/* v77 — le navigateur ne restaure jamais une ancienne ancre dans le fil */
#messages.rp74Messaging .chatBody{overflow-anchor:none!important;scroll-behavior:auto!important}
#messages.rp74Messaging .chatBody>*{overflow-anchor:none!important}


/* v78 — suppression des micro-sauts de mise en page */
#messages.rp74Messaging #missionContext51{display:none!important}
#messages.rp74Messaging .chat,
#messages.rp74Messaging .inbox,
#messages.rp74Messaging .context{contain:layout paint}
#messages.rp74Messaging .chatBody{contain:layout paint;scrollbar-gutter:stable!important}
#messages.rp74Messaging .audioBubble audio{display:block;height:40px;min-height:40px}
#messages.rp74Messaging .rp74MediaItem img{display:block;width:100%;height:74px;aspect-ratio:auto;object-fit:cover}
#messages.rp74Messaging .bubble,
#messages.rp74Messaging .rpMissionProposalStrip,
#messages.rp74Messaging .rpProposalBubble{transition:none!important;animation:none!important}

/* v79 — ancre de fin exacte */
#messages.rp74Messaging .chatBody .rp79BottomSentinel{height:1px;min-height:1px;width:100%;pointer-events:none;visibility:hidden;overflow:hidden}
#messages.rp74Messaging .chatBody{scroll-padding-bottom:0!important}


/* v80 — aucun repaint de scroll au retour d’onglet */
#messages.rp74Messaging .messagesWrap{overflow-anchor:none!important}
#messages.rp74Messaging .chatBody{contain:layout paint;will-change:auto}


/* v81 — changement de conversation atomique + panneaux stables */
#messages.rp74Messaging .contextHeader{min-height:92px}
#messages.rp74Messaging .contextActions{min-height:154px;display:grid!important;grid-auto-rows:44px;gap:8px;align-content:end}
#messages.rp74Messaging .contextActions button{height:44px!important;min-height:44px!important;max-height:44px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0!important}
#messages.rp74Messaging .contextActions button[hidden]{display:block!important;visibility:hidden!important;pointer-events:none!important}
#messages.rp74Messaging .rpMissionProposalStrip,
#messages.rp74Messaging .rpProposalBubble{min-height:76px;box-sizing:border-box;contain:layout paint}
#messages.rp74Messaging .rpStripCopy,
#messages.rp74Messaging .rpProposalMain{min-width:0}
#messages.rp74Messaging .rpStripActions,
#messages.rp74Messaging .rpProposalActions{min-height:34px}
#messages.rp74Messaging #conversationList .conversation{height:68px;min-height:68px;max-height:68px}
#messages.rp74Messaging #conversationList .conversation>div{min-width:0}
\n\n/* v82 — finitions panneau droit + miniatures photo natives */
#messages.rp74Messaging .contextActions{
  bottom:-12px!important;
  transform:translateY(10px);
  padding-bottom:10px!important;
}
#messages.rp74Messaging .context{padding-bottom:18px!important}
#messages.rp74Messaging .rp82InlineImageFile{
  display:block!important;
  padding:5px!important;
  background:transparent!important;
  border:0!important;
  min-width:220px;
}
#messages.rp74Messaging .rp82InlineImageThumb{
  display:block;
  width:min(260px,100%);
  border-radius:12px;
  overflow:hidden;
  background:#e9ece8;
  text-decoration:none;
  color:inherit;
}
#messages.rp74Messaging .rp82InlineImageThumb img{
  display:block;
  width:100%;
  height:150px;
  min-height:150px;
  object-fit:cover;
  background:#e9ece8;
}
#messages.rp74Messaging .bubble.me .rp82InlineImageFile{background:transparent!important}
@media(max-width:680px){
  #messages.rp74Messaging .rp82InlineImageFile{min-width:0}
  #messages.rp74Messaging .rp82InlineImageThumb{width:min(72vw,260px)}
  #messages.rp74Messaging .rp82InlineImageThumb img{height:140px;min-height:140px}
}
