/* RenfortPro v88 — menu message stable */
.rp87MessageMore{width:28px!important;height:28px!important;min-width:28px!important;border:0!important;border-radius:999px!important;background:rgba(255,255,255,.88)!important;box-shadow:0 5px 16px rgba(28,26,24,.10)!important;color:#25211f!important;line-height:0!important;display:grid!important;place-items:center!important;opacity:.72;transform:none;transition:.16s ease;cursor:pointer!important;padding:0!important}.rp87MessageMore svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.bubble:hover .rp87MessageMore,.rp87MessageMore:focus-visible{opacity:1;transform:none}#chatBody .bubble.rp87HasMessageMenu>.rp74BubbleTools{display:flex!important;gap:4px!important;align-items:center!important;opacity:1!important}#messages #chatBody>.bubble.rp87HasMessageMenu:not(.rpMissionProposalStrip){padding-right:44px!important}.rp87MessageMenu{position:fixed;z-index:100080;width:248px;padding:8px;border:1px solid rgba(30,27,24,.09);border-radius:18px;background:#fff;box-shadow:0 20px 60px rgba(25,20,18,.22);animation:rp87Menu .13s ease-out}.rp87MessageMenu button{width:100%;height:42px;border:0;border-radius:11px;background:transparent;display:flex;align-items:center;gap:12px;padding:0 12px;font:700 13px/1.2 inherit;color:#24201e;text-align:left;cursor:pointer}.rp87MessageMenu button:hover{background:#f7f3ef}.rp87MessageMenu .ico{width:22px;text-align:center;font-size:16px}.rp87MessageMenu .danger{color:#d24d39}.rp87MessageMenu .sep{display:block;height:1px;background:#eee6df;margin:5px 8px}@keyframes rp87Menu{from{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}
.rp87DeleteOverlay,.rp87ForwardOverlay{position:fixed;inset:0;z-index:100090;background:rgba(25,22,21,.38);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;padding:20px}.rp87DeleteOverlay.open,.rp87ForwardOverlay.open{display:flex}.rp87Dialog,.rp87ForwardDialog{width:min(440px,calc(100vw - 32px));background:#fff;border-radius:26px;border:1px solid #eadfd8;box-shadow:0 30px 90px rgba(20,17,15,.28);padding:26px}.rp87DialogIcon{width:48px;height:48px;border-radius:16px;background:#fff1ec;color:#ff5f36;display:grid;place-items:center;font-size:22px;margin-bottom:14px}.rp87Dialog h3,.rp87ForwardDialog h3{margin:0 0 8px;font-size:23px}.rp87Dialog .copy{color:#746b65;line-height:1.5}.rp87Dialog .actions{display:grid;gap:9px;margin-top:20px}.rp87Dialog .actions button,.rp87Dialog .cancel{height:46px;border-radius:14px;border:1px solid #dfd3cc;background:#fff;font-weight:800;cursor:pointer}.rp87Dialog .actions .danger{background:#ff5f36;border-color:#ff5f36;color:#fff}.rp87Dialog .cancel{width:100%;margin-top:8px;border:0;color:#746b65}.rp87DeleteOverlay.busy .rp87Dialog,.rp87ForwardOverlay.busy .rp87ForwardDialog{pointer-events:none;opacity:.68}
.rp87ForwardDialog{padding:0;overflow:hidden;max-height:min(680px,80vh);display:flex;flex-direction:column}.rp87ForwardDialog header{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 16px;border-bottom:1px solid #eee4dd}.rp87ForwardDialog header small{color:#ff5f36;font-weight:900;letter-spacing:.13em}.rp87ForwardDialog header h3{margin:4px 0 0}.rp87ForwardDialog .close{width:38px;height:38px;border-radius:50%;border:0;background:#f4efeb;font-size:21px;cursor:pointer}.rp87ForwardList{overflow:auto;padding:10px}.rp87ForwardList>button{width:100%;border:0;background:#fff;border-radius:16px;display:grid;grid-template-columns:44px 1fr 24px;gap:12px;align-items:center;text-align:left;padding:11px;cursor:pointer}.rp87ForwardList>button:hover{background:#f8f4f1}.rp87ForwardList .avatar{width:44px;height:44px;border-radius:14px;background:#fff0e9;color:#ff5f36;display:grid;place-items:center;font-weight:900}.rp87ForwardList b,.rp87ForwardList small{display:block}.rp87ForwardList small{margin-top:3px;color:#8b817b}.rp87ForwardList i{font-style:normal;color:#ff5f36;font-weight:900}.rp87ForwardList .empty{text-align:center;color:#8b817b;padding:28px}
.rp87Important{box-shadow:0 0 0 1px rgba(255,171,36,.22)!important}.rp87ImportantMark{font-size:12px;color:#d89200;margin-left:4px}.rp87ReplyComposer{animation:rp87Reply .14s ease-out}@keyframes rp87Reply{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:800px){.rp87MessageMore{opacity:1}.rp87MessageMenu{width:230px}.rp87Dialog,.rp87ForwardDialog{border-radius:22px}}
#messages.rp74Messaging .context .contextActions{margin-top:28px!important}

/* v88.2 — ouverture atomique de la messagerie : aucun état intermédiaire visible. */
#messages.rp88AtomicBoot{position:relative;background:#f7f5f1;min-height:calc(100vh - 74px)}
#messages.rp88AtomicBoot .messagesWrap{visibility:hidden!important}
#messages.rp88AtomicBoot::before{
  content:"Chargement de la conversation…";
  position:absolute;
  inset:0;
  z-index:80;
  display:flex;
  align-items:center;
  justify-content:center;
  padding-top:42px;
  color:#6a7974;
  background:#f7f5f1;
  font-size:11px;
  font-weight:700;
  letter-spacing:.02em;
}
#messages.rp88AtomicBoot::after{
  content:"";
  position:absolute;
  z-index:81;
  left:50%;
  top:calc(50% - 15px);
  width:18px;
  height:18px;
  margin-left:-9px;
  border:2px solid #d9e2dd;
  border-top-color:#28715c;
  border-radius:50%;
  animation:rp88AtomicSpin .7s linear infinite;
}
@keyframes rp88AtomicSpin{to{transform:rotate(360deg)}}


/* v88.23 — messagerie instantanée : la classe historique rp88AtomicBoot peut
   encore être posée par un ancien wrapper, mais elle ne masque plus l'UI. */
#messages.rp88AtomicBoot .messagesWrap{visibility:visible!important}
#messages.rp88AtomicBoot::before,#messages.rp88AtomicBoot::after{display:none!important;content:none!important}
