/* EcoDev Agent Chat — styles isolés sous .ecodev-chat pour ne pas toucher au thème du site. */
.ecodev-chat{--ecodev-chat-couleur:#FF6500;position:fixed;bottom:20px;z-index:999999;font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#1f1f1f}
.ecodev-chat--droite{right:20px}.ecodev-chat--gauche{left:20px}
.ecodev-chat *{box-sizing:border-box}
.ecodev-chat__bouton{position:relative;width:58px;height:58px;border-radius:50%;border:0;background:var(--ecodev-chat-couleur);color:#fff;
  display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.22);padding:0;margin:0}
.ecodev-chat__bouton:focus-visible,.ecodev-chat button:focus-visible,.ecodev-chat textarea:focus-visible{outline:3px solid #1f1f1f;outline-offset:2px}
.ecodev-chat--ouvert .ecodev-chat__bouton{display:none}
.ecodev-chat__pastille{position:absolute;top:4px;right:4px;width:13px;height:13px;border-radius:50%;background:#e11d48;border:2px solid #fff}
.ecodev-chat__pastille[hidden],.ecodev-chat [hidden]{display:none!important}
.ecodev-chat__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ecodev-chat__panneau{width:min(370px,calc(100vw - 32px));height:min(540px,calc(100vh - 40px));background:#fff;border-radius:16px;
  box-shadow:0 12px 40px rgba(0,0,0,.25);display:flex;flex-direction:column;overflow:hidden}
.ecodev-chat__tete{background:var(--ecodev-chat-couleur);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.ecodev-chat__tete strong{display:block;font-size:16px}
.ecodev-chat__sous{display:block;font-size:12.5px;opacity:.9}
.ecodev-chat__fermer{background:none;border:0;color:#fff;font-size:26px;line-height:1;cursor:pointer;padding:0 4px;margin:0}
.ecodev-chat__messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px;background:#f5f4f2;overscroll-behavior:contain}
.ecodev-chat__msg{max-width:84%;padding:9px 12px;border-radius:14px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14.5px}
.ecodev-chat__msg--agent{align-self:flex-start;background:#fff;border:1px solid #e4e1dd;border-bottom-left-radius:4px}
.ecodev-chat__msg--moi{align-self:flex-end;background:var(--ecodev-chat-couleur);color:#fff;border-bottom-right-radius:4px}
.ecodev-chat__erreur{background:#fbe4e2;border-color:#f3c6c2;color:#8a1f19}
.ecodev-chat__ecrit{display:flex;gap:4px;padding:12px 14px}
.ecodev-chat__ecrit i{width:7px;height:7px;border-radius:50%;background:#9a958f;animation:ecodev-chat-point 1.2s infinite ease-in-out}
.ecodev-chat__ecrit i:nth-child(2){animation-delay:.15s}.ecodev-chat__ecrit i:nth-child(3){animation-delay:.3s}
@keyframes ecodev-chat-point{0%,80%,100%{opacity:.3}40%{opacity:1}}
@media (prefers-reduced-motion:reduce){.ecodev-chat__ecrit i{animation:none;opacity:.6}}
.ecodev-chat__saisie{display:flex;gap:8px;padding:10px;border-top:1px solid #e4e1dd;background:#fff;margin:0}
.ecodev-chat__saisie textarea{flex:1;min-width:0;resize:none;border:1px solid #d6d2cd;border-radius:10px;padding:9px 11px;font:inherit;max-height:110px;margin:0;background:#fff;color:#1f1f1f}
.ecodev-chat__saisie button{width:42px;border:0;border-radius:10px;background:var(--ecodev-chat-couleur);color:#fff;cursor:pointer;display:grid;place-items:center;padding:0;margin:0}
@media (max-width:480px){
  .ecodev-chat{bottom:14px}.ecodev-chat--droite{right:14px}.ecodev-chat--gauche{left:14px}
  .ecodev-chat--ouvert{inset:0;bottom:0}
  .ecodev-chat--ouvert .ecodev-chat__panneau{width:100vw;height:100%;border-radius:0}
}
