/* Chatbot FAQ Pro - estilos */
#cfpp-fab{
  position:fixed; bottom:130px; right:20px;
  width:60px; height:60px; border-radius:9999px;
  display:flex; align-items:center; justify-content:center;
  background:#2563eb; color:#fff; box-shadow:0 10px 25px rgba(0,0,0,.2);
  cursor:pointer; z-index:999999;
}
#cfpp-fab svg{ fill:#fff; }
#cfpp-modal{ position:fixed; inset:0; background:rgba(0,0,0,.35);
  display:flex; align-items:flex-end; justify-content:flex-end; padding:20px; z-index:999998; }
#cfpp-modal.cfpp-hidden{ display:none; }
.cfpp-card{
  width:360px; max-height:78vh; background:#ffffff; border-radius:16px; overflow:hidden;
  box-shadow:0 20px 40px rgba(0,0,0,.25); display:flex; flex-direction:column;
  border:1px solid #e5e7eb;
}
.cfpp-header{ display:flex; align-items:center; justify-content:space-between; padding:12px 14px; background:#2563eb; color:#fff; }
.cfpp-title{ font-weight:700; letter-spacing:.2px; }
.cfpp-close{ background:transparent; border:none; color:#fff; font-size:20px; line-height:1; cursor:pointer; }
.cfpp-messages{ padding:12px; overflow:auto; display:flex; flex-direction:column; gap:8px; background:#f8fafc; min-height:220px; }
.cfpp-bubble{ padding:10px 12px; border-radius:14px; max-width:85%; font-size:14px; line-height:1.4; }
.cfpp-bot{ background:#ffffff; border:1px solid #e5e7eb; align-self:flex-start; }
.cfpp-user{ background:#2563eb; color:#fff; align-self:flex-end; }
.cfpp-input{ display:flex; gap:8px; padding:12px; border-top:1px solid #e5e7eb; background:#fff; }
.cfpp-input input{ flex:1; padding:10px 12px; border:1px solid #e5e7eb; border-radius:10px; outline:none; }
.cfpp-input button{ padding:10px 14px; border:none; border-radius:10px; background:#2563eb; color:#fff; cursor:pointer; }
@media (max-width: 480px){
  .cfpp-card{ width:100%; max-height:85vh; }
}
