/* Vêvê na Academy — mesma cara do site institucional, luz verde da página. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.assistente{
  --luz:var(--accent,#4ADE80);
  --luz-tinta:#08130c;
  --corpo:var(--muted,#9A9AA2);
  --divisor:var(--border,rgba(255,255,255,.09));
  --luz-fio:rgba(74,222,128,.34);
  --aresta:inset 0 1px 0 rgba(255,255,255,.1);
  --el-2:0 3px 6px rgba(0,0,0,.55),0 22px 44px -18px rgba(0,0,0,.95);
  --el-3:0 6px 12px rgba(0,0,0,.6),0 44px 88px -28px rgba(0,0,0,1);
  --curva:cubic-bezier(.16,1,.3,1);
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
.assistente-abre{
  position:fixed;right:max(20px,env(safe-area-inset-right));
  bottom:max(20px,env(safe-area-inset-bottom));z-index:80;
  height:52px;padding:0 18px 0 14px;border:0;border-radius:999px;cursor:pointer;
  background:var(--luz);color:var(--luz-tinta);
  box-shadow:0 2px 4px rgba(0,0,0,.4),0 14px 30px -16px var(--luz),var(--el-2);
  display:flex;align-items:center;justify-content:center;gap:10px;
}
.assistente-abre .i-fecha{display:none}
.assistente-abre-txt{font-family:var(--sans);font-weight:600;font-size:14px;letter-spacing:-.02em}
.assistente-abre:hover{transform:translateY(-1px)}
.assistente-abre[aria-expanded=true]{
  width:52px;padding:0;border-radius:50%;background:var(--text);color:var(--bg);
}
.assistente-abre[aria-expanded=true] .i-fala,
.assistente-abre[aria-expanded=true] .assistente-abre-txt{display:none}
.assistente-abre[aria-expanded=true] .i-fecha{display:block}
.assistente-painel{
  position:fixed;right:max(16px,env(safe-area-inset-right));
  bottom:max(84px,calc(env(safe-area-inset-bottom) + 72px));z-index:80;
  width:min(400px,calc(100vw - 32px));height:min(560px,calc(100dvh - 110px));
  display:none;flex-direction:column;overflow:hidden;border-radius:18px;
  isolation:isolate;background:var(--bg);
  box-shadow:var(--aresta),0 0 0 1px var(--luz-fio),var(--el-3);
}
.assistente-painel.aberto{display:flex}
.assistente-topo{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 16px;border-bottom:1px solid var(--divisor);background:var(--bg);
}
.assistente-topo strong{display:block;font-family:var(--sans);font-size:16px;
  color:var(--text);letter-spacing:-.02em}
.assistente-papel{display:block;font-size:12.5px;color:var(--corpo);margin-top:2px}
.assistente-estado{font-family:var(--mono);font-size:11px;letter-spacing:.08em;
  color:var(--luz);margin:0 0 4px}
.assistente-fechar{
  flex:none;width:40px;height:40px;border:0;border-radius:50%;cursor:pointer;
  background:#16181A;color:var(--text);font-size:22px;line-height:1;
}
.assistente-fechar:hover{background:#222428}
.assistente-fala{
  flex:1;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:10px;
  background:var(--bg);
}
.assistente-balao{
  max-width:88%;padding:12px 14px;border-radius:14px;font-size:15.5px;line-height:1.5;
  color:var(--text);overflow-wrap:anywhere;
}
.assistente-balao.bot{
  align-self:flex-start;background:#16181A;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.assistente-balao.eu{align-self:flex-end;background:#222428;color:var(--text)}
.assistente-balao.espera{display:flex;gap:5px;align-items:center;min-height:20px;width:auto}
.assistente-balao.espera span{
  width:6px;height:6px;border-radius:50%;background:var(--luz);opacity:.35;
  animation:assistente-pulso 1s var(--curva) infinite;
}
.assistente-balao.espera span:nth-child(2){animation-delay:.15s}
.assistente-balao.espera span:nth-child(3){animation-delay:.3s}
@keyframes assistente-pulso{50%{opacity:1;transform:translateY(-2px)}}
.assistente-atalhos{
  display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px;background:var(--bg);
}
.assistente-atalhos[hidden]{display:none}
.assistente-atalhos button{
  border:0;border-radius:999px;padding:8px 12px;cursor:pointer;
  background:#16181A;color:var(--text);font-family:var(--body);font-size:13px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.assistente-atalhos button:hover{background:#1E2226}
.assistente-acoes{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 10px;background:var(--bg)}
.assistente-acoes[hidden]{display:none}
.assistente-acoes .btn{padding:10px 16px;font-size:13px}
.assistente-contato{
  align-self:stretch;display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:14px;
  background:#16181A;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.assistente-contato p{margin:0;font-size:15px;line-height:1.5;color:var(--text)}
.assistente-contato label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--corpo)}
.assistente-contato input{
  border:0;border-radius:10px;padding:11px 12px;background:#0C0D0F;color:var(--text);
  font-family:var(--body);font-size:16px;
}
.assistente-contato .btn{align-self:flex-start;padding:10px 16px;font-size:13px}
.assistente-contato-erro[hidden]{display:none}
.assistente-contato .assistente-contato-erro{font-size:13px;color:#F5A524}
.assistente-form{display:flex;gap:8px;padding:12px 16px 16px;
  border-top:1px solid var(--divisor);background:var(--bg)}
.assistente-form input{
  flex:1;min-width:0;border:0;border-radius:11px;padding:12px 14px;
  background:#16181A;color:var(--text);font-family:var(--body);font-size:16px;
}
.assistente-form input::placeholder{color:var(--dim)}
.assistente-form button{
  flex:none;width:44px;height:44px;border:0;border-radius:11px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  background:var(--luz);color:var(--luz-tinta);
}
@media (max-width:560px){
  .assistente-abre{bottom:max(88px,calc(env(safe-area-inset-bottom) + 72px));padding:0 16px 0 14px}
  .assistente-painel{
    right:0;left:0;bottom:0;width:100%;height:min(82dvh,640px);
    border-radius:18px 18px 0 0;
  }
}
@media (prefers-reduced-motion:reduce){
  .assistente-balao.espera span{animation:none;opacity:.8}
}
