/* Robot de chat « Pulse » — widget flottant du site PlaneoPulse */
.pp-chat-bulle{position:fixed;bottom:22px;right:22px;z-index:9998;width:60px;height:60px;border-radius:50%;background:#D4644A;border:none;cursor:pointer;box-shadow:0 8px 24px rgba(212,100,74,.42);display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s}
.pp-chat-bulle:hover{transform:scale(1.06);box-shadow:0 10px 30px rgba(212,100,74,.5)}
.pp-chat-bulle svg{width:28px;height:28px;stroke:#fff;fill:none}
.pp-chat-bulle .pp-fermer-ico{display:none}
.pp-chat-bulle.ouvert .pp-ouvrir-ico{display:none}
.pp-chat-bulle.ouvert .pp-fermer-ico{display:block}
.pp-chat-pastille{position:absolute;top:0;right:0;width:16px;height:16px;border-radius:50%;background:#22c55e;border:2px solid #fff;display:none}
.pp-chat-pastille.actif{display:block}

.pp-chat-fenetre{position:fixed;bottom:94px;right:22px;z-index:9999;width:380px;max-width:calc(100vw - 32px);height:560px;max-height:calc(100vh - 130px);background:#fff;border-radius:18px;box-shadow:0 18px 52px rgba(28,30,33,.24);display:none;flex-direction:column;overflow:hidden;border:1px solid #ECE7DF}
.pp-chat-fenetre.ouvert{display:flex;animation:pp-chat-pop .22s ease}
@keyframes pp-chat-pop{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}

.pp-chat-tete{background:#D4644A;color:#fff;padding:15px 16px;display:flex;align-items:center;gap:12px}
.pp-chat-avatar{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:800;font-size:18px}
.pp-chat-tete-txt{flex:1;min-width:0}
.pp-chat-tete-txt strong{display:block;font-size:15px;font-weight:700;line-height:1.25}
.pp-chat-tete-txt span{font-size:12px;opacity:.92;display:flex;align-items:center;gap:6px}
.pp-chat-tete-txt span::before{content:"";width:7px;height:7px;border-radius:50%;background:#86efac;display:inline-block}
.pp-chat-tete-fermer{background:none;border:none;color:#fff;cursor:pointer;opacity:.85;padding:4px;line-height:0}
.pp-chat-tete-fermer:hover{opacity:1}
.pp-chat-tete-fermer svg{width:22px;height:22px;stroke:#fff;fill:none}

.pp-chat-corps{flex:1;overflow-y:auto;padding:18px 16px;background:#FAF8F4;display:flex;flex-direction:column;gap:11px}
.pp-msg{max-width:85%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.5;word-wrap:break-word;overflow-wrap:anywhere}
.pp-msg a{color:inherit;text-decoration:underline}
.pp-msg-bot{align-self:flex-start;background:#fff;color:#27303A;border:1px solid #ECE7DF;border-bottom-left-radius:5px}
.pp-msg-user{align-self:flex-end;background:#D4644A;color:#fff;border-bottom-right-radius:5px;white-space:pre-wrap}
.pp-msg-bot strong{font-weight:700}
.pp-msg-bot ul{margin:6px 0;padding-left:18px}
.pp-msg-bot li{margin:2px 0}
.pp-msg-agent{background:#FFF6F2;border-color:#F0C4B5}
.pp-msg-auteur{display:block;font-size:11px;font-weight:700;color:#D4644A;margin-bottom:3px}
.pp-msg-sys{align-self:center;font-size:12px;color:#8A8175;background:#F1ECE4;padding:5px 12px;border-radius:12px;margin:3px 0;text-align:center}
.pp-fc{align-self:stretch;background:#fff;border:1px solid #ECE7DF;border-radius:14px;padding:13px;display:flex;flex-direction:column;gap:7px}
.pp-fc-t{font-size:13.5px;font-weight:700;color:#27303A;margin-bottom:2px}
.pp-fc-in{border:1px solid #DDD6CC;border-radius:9px;padding:9px 11px;font-size:14px;font-family:inherit;outline:none;color:#27303A}
.pp-fc-in:focus{border-color:#D4644A}
.pp-fc-btn{background:#D4644A;color:#fff;border:none;border-radius:10px;padding:11px;font-size:14px;font-weight:700;cursor:pointer;margin-top:2px}
.pp-fc-btn:hover{background:#B84A30}
.pp-fc-btn:disabled{opacity:.6;cursor:default}
.pp-fc-err{font-size:12px;color:#c0392b}

.pp-typing{align-self:flex-start;background:#fff;border:1px solid #ECE7DF;border-radius:16px;border-bottom-left-radius:5px;padding:13px 16px;display:flex;gap:5px}
.pp-typing span{width:7px;height:7px;border-radius:50%;background:#C9B8A8;animation:pp-blink 1.2s infinite}
.pp-typing span:nth-child(2){animation-delay:.2s}
.pp-typing span:nth-child(3){animation-delay:.4s}
@keyframes pp-blink{0%,60%,100%{opacity:.3}30%{opacity:1}}

.pp-chat-pied{padding:11px 12px;border-top:1px solid #ECE7DF;background:#fff}
.pp-chat-form{display:flex;gap:8px;align-items:flex-end}
.pp-chat-input{flex:1;border:1px solid #DDD6CC;border-radius:12px;padding:10px 12px;font-size:14px;font-family:inherit;resize:none;max-height:90px;line-height:1.4;outline:none;color:#27303A}
.pp-chat-input:focus{border-color:#D4644A;box-shadow:0 0 0 3px rgba(212,100,74,.12)}
.pp-chat-envoyer{background:#D4644A;border:none;border-radius:12px;width:42px;height:42px;flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.pp-chat-envoyer:hover{background:#B84A30}
.pp-chat-envoyer:disabled{opacity:.5;cursor:default}
.pp-chat-envoyer svg{width:20px;height:20px;stroke:#fff;fill:none}
.pp-chat-credit{text-align:center;font-size:11px;color:#A89C8C;margin-top:7px}

@media (max-width:480px){
  .pp-chat-fenetre{bottom:0;right:0;left:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0;border:none}
  .pp-chat-bulle{bottom:16px;right:16px}
}
