/* Chatbot widget — triagem no site */
.fwa{display:none!important}
.cb-launcher{position:fixed;bottom:1.5rem;right:1.5rem;z-index:91;width:56px;height:56px;padding:0;border-radius:50%;background:var(--gold,#EFBB41);color:var(--dark,#494C5B);border:none;-webkit-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(239,187,65,.45);cursor:pointer;transition:transform .3s}
.cb-launcher:hover{transform:scale(1.05)}
.cb-launcher svg{width:32px;height:32px;fill:currentColor;display:block}

.cb-panel{position:fixed;bottom:1.5rem;right:1.5rem;z-index:92;width:min(380px,calc(100vw - 2rem));height:min(560px,calc(100vh - 2rem));background:#fff;border-radius:14px;border-top:3px solid var(--gold,#EFBB41);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 12px 40px rgba(0,0,0,.35);display:none;flex-direction:column;overflow:hidden;font-family:"DM Sans",system-ui,sans-serif}
.cb-panel.cb-open{display:flex;animation:cbIn .25s ease}
@keyframes cbIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

.cb-head{background:var(--dark,#494C5B);color:#fff;padding:.85rem 1rem;display:flex;align-items:center;gap:.65rem}
.cb-head-title{font:600 15px/1.2 "DM Sans",sans-serif;flex:1}
.cb-head-sub{font:400 11px/1.3 "DM Sans",sans-serif;opacity:.75;margin-top:2px}
.cb-close,.cb-reset{background:transparent;border:none;color:#fff;cursor:pointer;padding:4px;opacity:.75;border-radius:4px;display:flex;align-items:center;justify-content:center}
.cb-close:hover,.cb-reset:hover{opacity:1;background:rgba(255,255,255,.1)}
.cb-close svg,.cb-reset svg{width:18px;height:18px}

.cb-body{flex:1;overflow-y:auto;padding:1rem;background:var(--bg,#F7F6F3);display:flex;flex-direction:column;gap:.6rem;scroll-behavior:smooth}
.cb-msg{max-width:85%;padding:.6rem .85rem;border-radius:14px;font:400 14px/1.45 "DM Sans",sans-serif;white-space:pre-wrap;word-wrap:break-word}
.cb-msg-bot{align-self:flex-start;background:#fff;color:var(--dark,#494C5B);border-bottom-left-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.cb-msg-user{align-self:flex-end;background:var(--dark,#494C5B);color:#fff;border-bottom-right-radius:4px}
.cb-msg-sys{align-self:center;font:400 11px/1.4 "DM Sans",sans-serif;color:var(--mid,#777985);background:transparent;text-align:center;max-width:100%;padding:.3rem .5rem}

.cb-typing{align-self:flex-start;background:#fff;border-radius:14px;border-bottom-left-radius:4px;padding:.7rem .85rem;display:flex;gap:4px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.cb-typing span{width:6px;height:6px;background:var(--mid,#777985);border-radius:50%;animation:cbBlink 1.2s infinite ease-in-out}
.cb-typing span:nth-child(2){animation-delay:.2s}
.cb-typing span:nth-child(3){animation-delay:.4s}
@keyframes cbBlink{0%,80%,100%{opacity:.3}40%{opacity:1}}

.cb-handoff{align-self:stretch;margin-top:.5rem;background:#fff;border-radius:10px;padding:.8rem;box-shadow:0 1px 2px rgba(0,0,0,.06);text-align:center}
.cb-handoff-text{font:500 13px/1.4 "DM Sans",sans-serif;color:var(--dark,#494C5B);margin-bottom:.6rem}
.cb-handoff-btn{display:inline-flex;align-items:center;gap:6px;background:#25D366;color:#fff;text-decoration:none;padding:.55rem 1rem;border-radius:8px;font:600 13px/1 "DM Sans",sans-serif}
.cb-handoff-btn svg{width:16px;height:16px;fill:currentColor}

.cb-foot{border-top:1px solid #e8e6e0;padding:.6rem .75rem;background:#fff;display:flex;gap:.5rem;align-items:flex-end}
.cb-input{flex:1;border:1px solid #e8e6e0;border-radius:18px;padding:.55rem .85rem;font:400 14px/1.4 "DM Sans",sans-serif;color:var(--dark,#494C5B);resize:none;outline:none;max-height:96px;background:var(--bg,#F7F6F3)}
.cb-input:focus{border-color:var(--gold,#EFBB41);background:#fff}
.cb-send{background:var(--gold,#EFBB41);color:var(--dark,#494C5B);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}
.cb-send:disabled{opacity:.4;cursor:not-allowed}
.cb-send svg{width:16px;height:16px;fill:currentColor}

.cb-disclaimer{padding:.5rem .75rem;font:400 10px/1.4 "DM Sans",sans-serif;color:var(--mid,#777985);text-align:center;background:#fff;border-top:1px solid #f0eee8}

@media (max-width:480px){
  .cb-panel{bottom:0;right:0;width:100vw;height:100vh;border-radius:0;border-top:none;z-index:200}
  body.cb-locked{overflow:hidden;position:fixed;width:100%}
}
