/* Assistente virtual — widget de chat (paleta do site) */
.chat-launcher{position:fixed;right:20px;bottom:90px;z-index:91;width:54px;height:54px;border-radius:50%;
  background:var(--green);color:#fff;display:grid;place-items:center;box-shadow:0 12px 26px rgba(1,75,63,.4);
  transition:transform .25s var(--ease),background .25s;cursor:pointer}
.chat-launcher:hover{transform:scale(1.08);background:var(--green-dark)}
.chat-launcher svg{width:26px;height:26px}
.chat-launcher__hint{position:absolute;right:64px;top:50%;transform:translateY(-50%);white-space:nowrap;
  background:var(--green-deep);color:#fff;font-size:.78rem;font-weight:700;padding:6px 12px;border-radius:999px;
  opacity:0;pointer-events:none;transition:opacity .3s}
.chat-launcher:hover .chat-launcher__hint{opacity:1}

.chat-panel{position:fixed;right:20px;bottom:156px;z-index:95;width:min(360px,calc(100vw - 40px));height:min(560px,calc(100vh - 180px));
  background:var(--cream);border-radius:22px;box-shadow:0 28px 70px rgba(1,53,45,.35);border:1px solid var(--line);
  display:flex;flex-direction:column;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(16px) scale(.97);
  transition:opacity .3s var(--ease),transform .3s var(--ease),visibility .3s}
.chat-panel.is-open{opacity:1;visibility:visible;transform:none}
@media(max-width:480px){
  .chat-panel{right:0;bottom:0;width:100vw;height:100dvh;border-radius:0;border:none}
}

.chat-head{background:var(--green);color:#fff;padding:14px 16px;display:flex;align-items:center;gap:11px;flex:none}
.chat-head__ico{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.14);display:grid;place-items:center}
.chat-head__ico svg{width:20px;height:20px}
.chat-head b{font-size:.95rem;display:block;line-height:1.2}
.chat-head small{font-size:.72rem;color:rgba(255,255,255,.75);display:flex;align-items:center;gap:5px}
.chat-head small::before{content:"";width:7px;height:7px;border-radius:50%;background:#5ee0a0}
.chat-close{margin-left:auto;width:34px;height:34px;border-radius:50%;color:#fff;display:grid;place-items:center;font-size:1.15rem;line-height:1}
.chat-close:hover{background:rgba(255,255,255,.14)}

.chat-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.chat-msg{max-width:85%;padding:10px 14px;border-radius:16px;font-size:.9rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:break-word}
.chat-msg--bot{background:#fff;border:1px solid var(--line);color:var(--ink);border-bottom-left-radius:6px;align-self:flex-start}
.chat-msg--user{background:var(--green);color:#fff;border-bottom-right-radius:6px;align-self:flex-end}
.chat-typing{align-self:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;border-bottom-left-radius:6px;padding:12px 16px;display:flex;gap:5px}
.chat-typing i{width:7px;height:7px;border-radius:50%;background:var(--teal);animation:chat-blink 1.2s infinite}
.chat-typing i:nth-child(2){animation-delay:.2s}
.chat-typing i:nth-child(3){animation-delay:.4s}
@keyframes chat-blink{0%,80%,100%{opacity:.3}40%{opacity:1}}

.chat-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 8px}
.chat-chip{background:#fff;border:1.5px solid var(--teal);color:var(--green);font-weight:700;font-size:.82rem;padding:8px 14px;border-radius:999px;transition:background .2s}
.chat-chip:hover{background:rgba(68,160,135,.12)}
.chat-chip--alert{border-color:var(--orange);color:var(--orange-dark)}

.chat-wa{display:inline-flex;align-items:center;gap:8px;background:var(--wa);color:#fff;font-weight:700;font-size:.88rem;
  padding:11px 18px;border-radius:999px;align-self:flex-start;box-shadow:0 8px 18px rgba(37,211,102,.35)}
.chat-wa:hover{filter:brightness(1.05)}
.chat-wa svg{width:18px;height:18px}

.chat-foot{flex:none;border-top:1px solid var(--line);background:#fff;padding:10px 12px}
.chat-form{display:flex;gap:8px}
.chat-input{flex:1;border:1.5px solid var(--line);border-radius:999px;padding:10px 16px;font-family:inherit;font-size:.9rem;background:var(--cream);color:var(--ink)}
.chat-input:focus{outline:none;border-color:var(--teal)}
.chat-send{flex:none;width:42px;height:42px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;transition:background .2s}
.chat-send:hover{background:var(--orange-dark)}
.chat-send svg{width:19px;height:19px}
.chat-send[disabled]{opacity:.5;cursor:default}
.chat-human{display:block;text-align:center;font-size:.76rem;font-weight:700;color:var(--muted);margin-top:8px;cursor:pointer}
.chat-human:hover{color:var(--green)}
.chat-legal{display:block;text-align:center;font-size:.66rem;color:var(--muted);margin-top:8px;line-height:1.4}
.chat-legal[hidden]{display:none}
.chat-legal a{color:var(--muted);text-decoration:underline}
/* selo do reCAPTCHA escondido — o aviso acima cumpre a exigência do Google */
.grecaptcha-badge{visibility:hidden}

@media print{.chat-launcher,.chat-panel{display:none!important}}
