/* IA ao vivo dos sites da Dra. Michelle (Lúcia e assistente). Cores vêm de --vv-* que cada site define. */
.vv-bolha{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:900;display:flex;align-items:center;gap:10px;
  border:0;background:none;padding:0;cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent}
.vv-bolha .vv-circ{position:relative;width:74px;height:74px;border-radius:50%;flex:none}
.vv-bolha .vv-circ:before,.vv-bolha .vv-circ:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--vv-ac);opacity:0;animation:vvOnda 2.6s ease-out infinite}
.vv-bolha .vv-circ:after{animation-delay:1.3s}
@keyframes vvOnda{0%{transform:scale(.92);opacity:.7}100%{transform:scale(1.35);opacity:0}}
.vv-foto{position:absolute;inset:0;border-radius:50%;overflow:hidden;background:var(--vv-fundo-foto,#fff);border:3px solid var(--vv-ac);box-shadow:0 14px 34px -12px rgba(0,0,0,.6)}
.vv-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--vv-pos,50% 30%);opacity:0;transition:opacity .35s}
.vv-foto img.on{opacity:1}
.vv-foto.logo img{object-fit:contain;padding:12%}
.vv-rot{background:var(--vv-ac);color:var(--vv-sobre-ac);font-weight:700;font-size:14px;letter-spacing:.02em;padding:10px 16px;border-radius:999px;
  box-shadow:0 10px 26px -12px rgba(0,0,0,.6);white-space:nowrap;display:flex;align-items:center;gap:8px}
.vv-rot svg{width:15px;height:15px}
.vv-bolha[data-estado="falando"] .vv-foto{animation:vvFala .5s ease-in-out infinite alternate}
@keyframes vvFala{to{transform:scale(1.045)}}
body.vv-aberto .vv-bolha .vv-rot{display:none}
@media (max-width:560px){.vv-bolha .vv-circ{width:62px;height:62px}.vv-rot{font-size:13px;padding:9px 13px}}
@media (prefers-reduced-motion:reduce){.vv-bolha .vv-circ:before,.vv-bolha .vv-circ:after,.vv-bolha[data-estado="falando"] .vv-foto{animation:none}}

.vv-painel{position:fixed;right:18px;bottom:calc(104px + env(safe-area-inset-bottom));z-index:901;width:min(390px,calc(100vw - 24px));
  max-height:min(560px,calc(100dvh - 130px));display:flex;flex-direction:column;background:var(--vv-bg);color:var(--vv-ink);
  border:1px solid var(--vv-linha);border-radius:18px;box-shadow:0 30px 70px -20px rgba(0,0,0,.7);overflow:hidden;font-size:15px;line-height:1.45}
.vv-painel[hidden]{display:none}
.vv-cab{display:flex;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid var(--vv-linha)}
.vv-cab b{font-size:16px}
.vv-estado{display:flex;align-items:center;gap:6px;font-size:12px;opacity:.8;margin-right:auto}
.vv-estado i{width:8px;height:8px;border-radius:50%;background:#3ddc84}
.vv-x{border:0;background:none;color:inherit;font-size:24px;line-height:1;cursor:pointer;padding:0 4px}
.vv-msgs{list-style:none;margin:0;padding:14px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:8px;min-height:120px}
.vv-msgs li{max-width:86%;padding:9px 12px;border-radius:14px;white-space:pre-wrap}
.vv-msgs li.ela{background:var(--vv-bolha-ela);align-self:flex-start;border-bottom-left-radius:4px}
.vv-msgs li.eu{background:var(--vv-ac);color:var(--vv-sobre-ac);align-self:flex-end;border-bottom-right-radius:4px}
.vv-msgs li.sistema{align-self:center;font-size:12.5px;opacity:.75;text-align:center;max-width:100%}
.vv-contato{display:flex;gap:8px;flex-wrap:wrap;padding:0 14px 10px}
.vv-contato[hidden]{display:none}
.vv-contato a{flex:1;min-width:140px;text-align:center;text-decoration:none;font-weight:700;font-size:13.5px;padding:10px 12px;border-radius:999px;border:1.5px solid var(--vv-ac);color:var(--vv-ink)}
.vv-contato a.cheio{background:#25D366;border-color:#25D366;color:#fff}
.vv-form{display:flex;gap:8px;align-items:center;padding:10px 12px;border-top:1px solid var(--vv-linha)}
.vv-form input{flex:1;min-width:0;border:1px solid var(--vv-linha);background:rgba(255,255,255,.06);color:inherit;border-radius:999px;padding:10px 14px;font:inherit;font-size:15px}
.vv-form button{border:0;width:40px;height:40px;border-radius:50%;cursor:pointer;display:grid;place-items:center;background:rgba(255,255,255,.1);color:inherit;flex:none}
.vv-form button[type=submit]{background:var(--vv-ac);color:var(--vv-sobre-ac);font-size:18px}
.vv-form .vv-mic[aria-pressed="true"]{background:#e5484d;color:#fff}
.vv-form svg{width:18px;height:18px}
.vv-nota{margin:0;padding:0 14px 12px;font-size:11.5px;opacity:.65}
@media (max-width:560px){.vv-painel{right:12px;left:12px;width:auto;bottom:calc(90px + env(safe-area-inset-bottom));max-height:calc(100dvh - 110px)}}
