/* Messenger fenêtre flottante, affichage mobile plein écran ; le serveur garde les permissions. */
.el28-chat-launch{position:fixed;right:23px;bottom:23px;z-index:1040;border:1px solid #ff4ca7;border-radius:999px;padding:12px 18px;background:linear-gradient(125deg,#d40068,#ff3199);color:white;box-shadow:0 9px 28px #0009;font-weight:800;font-size:.93rem;cursor:pointer;display:flex;gap:8px;align-items:center;min-height:48px;}
.el28-chat-launch[hidden]{display:none!important;}
.el28-chat-launch:focus-visible,.el28-chat-panel button:focus-visible{outline:2px solid #ffd6a3;outline-offset:2px;}
.el28-chat-panel{position:fixed;z-index:1041;right:20px;bottom:20px;width:min(390px,calc(100vw - 24px));height:min(610px,calc(100dvh - 35px));display:flex;flex-direction:column;overflow:hidden;border-radius:22px;border:1px solid #e63c99;box-shadow:0 20px 80px #000c;background:#130e18;}
.el28-chat-panel[hidden]{display:none!important;}
.el28-chat-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;background:linear-gradient(110deg,#37122e,#160e1e);border-bottom:1px solid #783351;min-height:54px;}
.el28-chat-panel-head strong{color:#fff;font-size:.95rem;}
.el28-chat-panel-actions{display:flex;align-items:center;gap:8px;}
.el28-chat-panel-actions a,.el28-chat-panel-actions button{display:grid;place-items:center;width:34px;height:34px;background:#241625;color:white;border:1px solid #77465e;border-radius:10px;text-decoration:none;font-size:1.05rem;cursor:pointer;}
.el28-chat-panel iframe{display:block;width:100%;border:0;min-height:0;flex:1;background:#0f0a13;}
/* Fenêtre native sans iframe : respecte CSP frame-ancestors 'none'. */
.el28-chat-content{min-height:0;flex:1;overflow:hidden;display:flex;flex-direction:column;}
.el28-chat-search{margin:12px 12px 9px;border:1px solid #65324d;border-radius:13px;background:#231724;color:#fff;min-height:42px;padding:10px 13px;}
.el28-chat-threadlist{overflow-y:auto;flex:1;padding:0 7px 12px;min-height:0;}
.el28-chat-thread{display:flex;align-items:center;gap:11px;width:100%;text-align:left;padding:10px 9px;border:0;border-bottom:1px solid #352233;border-radius:11px;background:transparent;color:#f7e7f2;cursor:pointer;}
.el28-chat-thread:hover{background:#391b35;}
.el28-chat-avatar{width:44px;height:44px;border-radius:50%;flex:0 0 auto;border:2px solid #bd307a;object-fit:cover;}
.el28-chat-threadinfo{display:flex;flex-direction:column;min-width:0;flex:1;gap:4px;}
.el28-chat-threadinfo strong,.el28-chat-threadinfo small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.el28-chat-threadinfo small{color:#d1bdd0;font-size:.76rem;}
.el28-chat-online{color:#3adc90;font-weight:700;font-size:.65rem;}
.el28-chat-unread{display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:40px;background:#ff1684;color:#fff;font-weight:700;font-size:.72rem;}
.el28-chat-messages{min-height:0;flex:1;overflow-y:auto;padding:12px 11px;display:flex;flex-direction:column;gap:10px;}
.el28-chat-bubble{max-width:83%;align-self:flex-start;color:#fff;background:#392936;padding:10px 12px;border-radius:15px 15px 15px 4px;overflow-wrap:anywhere;line-height:1.4;}
.el28-chat-bubble.mine{align-self:flex-end;background:linear-gradient(125deg,#bf005a,#ec1a8c);border-radius:15px 15px 4px 15px;}
.el28-chat-bubble small{display:block;font-size:.67rem;color:#f3c6e1;text-align:right;margin-top:6px;}
.el28-chat-bubble img{width:100%;height:auto;border-radius:9px;max-height:260px;object-fit:contain;}
.el28-chat-controls{display:flex;gap:8px;align-items:end;padding:10px;background:#211323;border-top:1px solid #66324f;}
.el28-chat-controls textarea{flex:1;min-width:0;min-height:43px;max-height:100px;resize:vertical;background:#110b15;color:#fff;border:1px solid #663c55;border-radius:14px;padding:10px;}
.el28-chat-controls button{flex:0 0 auto;border:0;border-radius:15px;min-height:43px;background:#ec1688;color:#fff;font-weight:700;padding:9px 13px;cursor:pointer;}
.el28-chat-status{padding:7px 11px;color:#e2b5d1;font-size:.76rem;min-height:25px;}
.el28-chat-note{padding:15px;line-height:1.6;color:#e9d5e2;}
.el28-chat-note a{color:#ffc3e1;}
.el28-chat-panel-head .el28-chat-back{display:none;}
.el28-chat-panel.in-conversation .el28-chat-panel-head .el28-chat-back{display:grid;}
@media(max-width:700px){.el28-chat-launch{right:12px;bottom:calc(78px + env(safe-area-inset-bottom,0px));padding:11px 14px;font-size:.8rem;}.el28-chat-panel{position:fixed;inset:0;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0;border:0;bottom:0;right:0;}.el28-chat-panel-head{padding-top:calc(10px + env(safe-area-inset-top,0px));}.el28-chat-panel iframe{height:auto;}}
/* 2.99.29 : fenêtre Messenger plus lisible, accès à une nouvelle discussion. */
.el28-chat-panel{border-color:#f052a3;box-shadow:0 20px 70px #000d,0 0 0 1px #ee358027;}
.el28-chat-panel-head{background:linear-gradient(120deg,#37132e,#201326);}
.el28-chat-panel-head strong{font-size:1.02rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.el28-chat-thread{min-height:67px;border-radius:12px;}
.el28-chat-new{display:block;text-align:center;color:#ffdceb;margin:0 12px 6px;padding:9px 12px;border-radius:11px;border:1px solid #753351;
 background:#321c31;font-size:.83rem;font-weight:700;text-decoration:none;}
.el28-chat-new:hover{background:#442038;color:white;}
.el28-chat-controls{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));}
.el28-chat-controls textarea{resize:none;line-height:1.4;font-size:16px;}
.el28-chat-controls .el29-chat-emoji{width:39px;height:42px;min-width:39px;padding:0;font-size:1.4rem;border-radius:12px;
 color:#f8d4e9;background:#35223b;border:1px solid #75415c;}
.el28-chat-controls button:disabled{opacity:.55;cursor:not-allowed;}
.el28-chat-status{color:#ebbdd4;line-height:1.35;}
.el28-chat-panel:focus-within{border-color:#fb65b2;}
@media(max-width:700px){.el28-chat-panel{border:0;box-shadow:none;}.el28-chat-launch{bottom:calc(85px + env(safe-area-inset-bottom,0px));}
 .el28-chat-panel-head{min-height:60px;}.el28-chat-thread{min-height:70px;}}
