/*
 | A ANA NO SITE — ícone holográfico, janela da conversa e painel das páginas.
 | Paleta do Renzo Gracie: vermelho #C8211A / #8B1612, dourado #C8A84B / #E8A317, preto.
 | O orbe respira com a voz (--ana-lvl, 0–1, posto pelo ana.js a partir do áudio).
 */
#ana [hidden] { display:none !important; } /* o atributo hidden vence os display:flex/grid abaixo */
:root { --ana-red:#C8211A; --ana-red-dk:#8B1612; --ana-gold:#C8A84B; --ana-amber:#E8A317; --ana-lvl:0; }

/* ── o orbe ─────────────────────────────────────────────────────────────── */
.ana-orb { position:relative; width:54px; height:54px; border-radius:50%; isolation:isolate;
  transform:scale(calc(1 + var(--ana-lvl) * .12)); transition:transform .08s linear; }
.ana-orb__halo { position:absolute; inset:-14px; border-radius:50%; z-index:-1;
  background:conic-gradient(from 0deg, rgba(200,33,26,.0), rgba(200,33,26,.55), rgba(232,163,23,.55), rgba(200,168,75,.35), rgba(200,33,26,.0));
  filter:blur(10px); opacity:calc(.55 + var(--ana-lvl) * .45); animation:ana-spin 9s linear infinite; }
.ana-orb__body { position:absolute; inset:0; border-radius:50%; overflow:hidden;
  background:
    radial-gradient(circle at 30% 25%, rgba(255,255,255,.55), rgba(255,255,255,0) 32%),
    conic-gradient(from 210deg, #1a0605, var(--ana-red-dk), var(--ana-red), #ff5a3c, var(--ana-amber), var(--ana-gold), #fff2c4, var(--ana-gold), var(--ana-red), #1a0605);
  box-shadow: inset 0 0 18px rgba(0,0,0,.65), inset 0 -6px 14px rgba(0,0,0,.5), 0 0 0 1.5px rgba(232,163,23,.65), 0 8px 24px -6px rgba(200,33,26,.75);
  animation: ana-morph 7s ease-in-out infinite, ana-hue 9s ease-in-out infinite; }
.ana-orb__swirl, .ana-orb__swirl--b { position:absolute; inset:-30%; border-radius:50%; mix-blend-mode:screen; opacity:.75; }
.ana-orb__swirl { background:conic-gradient(from 0deg, transparent 0 18%, rgba(255,214,120,.75) 24%, transparent 32% 58%, rgba(255,80,60,.6) 66%, transparent 74%); animation:ana-spin 4.8s linear infinite; }
.ana-orb__swirl--b { background:conic-gradient(from 90deg, transparent 0 30%, rgba(255,255,255,.45) 36%, transparent 44% 80%, rgba(232,163,23,.55) 88%, transparent 94%); animation:ana-spin-r 6.8s linear infinite; }
.ana-orb__sheen { position:absolute; inset:0; border-radius:50%;
  background:linear-gradient(120deg, transparent 30%, rgba(255,255,255,.35) 46%, transparent 60%);
  background-size:250% 250%; animation:ana-sheen 5.5s ease-in-out infinite; mix-blend-mode:overlay; }
.ana-orb__emblem { position:absolute; inset:12%; width:76%; height:76%; object-fit:contain; z-index:2;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.8)) drop-shadow(0 0 6px rgba(255,220,150,.45)); animation:ana-breathe 3.6s ease-in-out infinite; }
.ana-orb__ring { position:absolute; inset:0; border-radius:50%; border:2px solid rgba(232,163,23,.85); opacity:0; pointer-events:none; }
.ana-orb.is-talking .ana-orb__ring { animation:ana-ring 1.5s ease-out infinite; }
.ana-orb.is-talking .ana-orb__ring:nth-child(2) { animation-delay:.75s; border-color:rgba(200,33,26,.85); }

@keyframes ana-spin { to { transform:rotate(1turn); } }
@keyframes ana-spin-r { to { transform:rotate(-1turn); } }
@keyframes ana-morph { 0%,100%{border-radius:50%} 25%{border-radius:56% 44% 52% 48%/46% 55% 45% 54%} 50%{border-radius:46% 54% 47% 53%/55% 45% 56% 44%} 75%{border-radius:52% 48% 44% 56%/48% 52% 48% 52%} }
@keyframes ana-hue { 0%,100%{filter:saturate(1.1) brightness(1)} 50%{filter:saturate(1.45) brightness(1.18) hue-rotate(-12deg)} }
@keyframes ana-sheen { 0%,100%{background-position:0% 0%} 50%{background-position:100% 100%} }
@keyframes ana-breathe { 0%,100%{transform:scale(.94)} 50%{transform:scale(1.04)} }
@keyframes ana-ring { from{transform:scale(1);opacity:.85} to{transform:scale(2.1);opacity:0} }
@keyframes ana-beat { 0%,72%,100%{transform:scale(1)} 78%{transform:scale(1.12)} 84%{transform:scale(.97)} 90%{transform:scale(1.05)} }

/* ── o botão flutuante (acima do WhatsApp) ─────────────────────────────── */
.ana-launch { position:fixed; right:22px; bottom:100px; z-index:45; display:flex; align-items:center; gap:10px;
  background:none; border:0; padding:0; cursor:pointer; }
.ana-launch .ana-orb { animation:ana-beat 6.5s ease-in-out 2s infinite; }
.ana-launch__tip { order:-1; background:rgba(12,6,6,.92); color:#fff; border:1px solid rgba(200,168,75,.55);
  border-radius:999px; padding:7px 13px; font:600 12.5px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif; letter-spacing:.02em;
  white-space:nowrap; box-shadow:0 6px 18px -6px rgba(0,0,0,.6); opacity:0; transform:translateX(8px); transition:.25s; pointer-events:none; }
.ana-launch:hover .ana-launch__tip, .ana-launch.is-hint .ana-launch__tip { opacity:1; transform:none; }
.ana-launch__tip b { color:var(--ana-gold); }
@media (min-width:768px){ .ana-launch{ right:28px; bottom:112px; } .ana-launch .ana-orb{ width:60px; height:60px; } }

/* ── a janela da conversa ──────────────────────────────────────────────── */
.ana-card { position:fixed; right:18px; bottom:182px; z-index:46; width:min(340px, calc(100vw - 24px)); max-height:min(700px, calc(100vh - 200px));
  display:flex; flex-direction:column; color:#f4efe6; border-radius:22px; overflow:hidden;
  background:radial-gradient(120% 80% at 100% 0%, rgba(200,33,26,.28), transparent 55%), radial-gradient(90% 70% at 0% 100%, rgba(200,168,75,.18), transparent 60%), #0d0909;
  border:1px solid rgba(200,168,75,.45); box-shadow:0 24px 60px -18px rgba(0,0,0,.85), 0 0 0 1px rgba(200,33,26,.25);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
.ana-card[hidden] { display:none; }
.ana-card__head { display:flex; align-items:center; gap:12px; padding:16px 16px 12px; border-bottom:1px solid rgba(200,168,75,.18); }
.ana-card__head .ana-orb { width:44px; height:44px; flex:none; }
.ana-card__name { font:800 19px/1 "Bebas Neue","Oswald",system-ui,sans-serif; letter-spacing:.06em; text-transform:uppercase; }
.ana-card__name small { display:block; margin-top:4px; font:600 10.5px/1.2 system-ui,sans-serif; letter-spacing:.18em; color:var(--ana-gold); }
.ana-card__status { font-size:12px; color:#cfc6b8; margin-top:6px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ana-card__close { margin-left:auto; align-self:flex-start; background:none; border:0; color:#bfb5a6; font-size:22px; line-height:1; cursor:pointer; padding:2px 4px; }
.ana-card__body { flex:1; min-height:0; padding:14px 14px 10px; overflow-y:auto; }
.ana-card__foot { padding:0 14px 14px; border-top:1px solid rgba(200,168,75,.14); }
.ana-card__foot .ana-btn { margin-top:12px; }
/* rolagem nas cores da marca (dourado sobre o escuro) */
.ana-card__body, .ana-sheet iframe { scrollbar-width:thin; scrollbar-color:rgba(200,168,75,.7) rgba(255,255,255,.04); }
.ana-card__body::-webkit-scrollbar { width:6px; }
.ana-card__body::-webkit-scrollbar-track { background:rgba(255,255,255,.04); border-radius:6px; }
.ana-card__body::-webkit-scrollbar-thumb { background:linear-gradient(180deg, var(--ana-gold), var(--ana-red)); border-radius:6px; }
.ana-card__body::-webkit-scrollbar-thumb:hover { background:var(--ana-amber); }
.ana-card__label { font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--ana-gold); margin:2px 0 8px; font-weight:700; }

.ana-langs { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:7px; }
.ana-lang { display:flex; flex-direction:column; align-items:center; gap:6px; min-width:0; padding:9px 4px 7px; border-radius:12px; cursor:pointer;
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); color:#eee5d6; font-size:11.5px; font-weight:600; transition:.15s; }
.ana-lang img { width:36px; height:24px; object-fit:cover; border-radius:3px; box-shadow:0 0 0 1px rgba(0,0,0,.4), 0 3px 8px -3px rgba(0,0,0,.7); flex:none; }
.ana-lang span { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ana-lang:hover { border-color:rgba(200,168,75,.5); }
.ana-lang.is-on { background:linear-gradient(135deg, rgba(200,33,26,.5), rgba(200,168,75,.28)); border-color:var(--ana-gold); color:#fff; box-shadow:0 0 0 1px rgba(232,163,23,.35), 0 6px 16px -8px rgba(200,33,26,.9); }

.ana-form { display:grid; gap:8px; margin-top:14px; }
.ana-form input[type=text], .ana-form input[type=email], .ana-form input[type=tel] { width:100%; box-sizing:border-box; padding:10px 12px; border-radius:10px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); color:#fff; font-size:14px; outline:none; }
.ana-form input:focus { border-color:var(--ana-gold); box-shadow:0 0 0 3px rgba(200,168,75,.18); }
.ana-form label.ana-check { display:flex; gap:8px; align-items:flex-start; font-size:11.5px; line-height:1.4; color:#cfc6b8; }
.ana-form label.ana-check input { margin-top:2px; accent-color:var(--ana-red); }
.ana-erro { color:#ffb4a8; font-size:12px; min-height:0; }

.ana-btn { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; margin-top:14px; padding:12px 14px; border:0; border-radius:12px; cursor:pointer;
  color:#fff; font:800 13px/1 system-ui,sans-serif; letter-spacing:.14em; text-transform:uppercase;
  background:linear-gradient(135deg, var(--ana-red) 0%, #e2402b 45%, var(--ana-amber) 100%); box-shadow:0 10px 24px -10px rgba(200,33,26,.9); }
.ana-btn:disabled { opacity:.6; cursor:wait; }
.ana-btn--ghost { background:rgba(255,255,255,.06); box-shadow:none; border:1px solid rgba(255,255,255,.16); letter-spacing:.08em; }
.ana-row { display:flex; gap:8px; }
.ana-row .ana-btn { margin-top:12px; }

.ana-bars { display:flex; align-items:center; justify-content:center; gap:4px; height:46px; margin:4px 0 10px; }
.ana-bars i { display:block; width:5px; height:100%; border-radius:3px; transform-origin:center; transform:scaleY(.25);
  background:linear-gradient(180deg, var(--ana-amber), var(--ana-red)); }
.ana-caption { min-height:40px; font-size:14px; line-height:1.45; color:#f6efe2; text-align:center; }
.ana-legal { margin-top:10px; font-size:10.5px; color:#9d9384; text-align:center; }

/* ── o painel das páginas (a conversa continua) ────────────────────────── */
/* A página que a Ana abre vem num PAINEL com barra própria (título · nova aba · Fechar), por cima do site e do
   cabeçalho dele (z-index 1100 > cabeçalho do site da academia, 1000, e menu 999 — com 90 o cabeçalho cobria a barra: "Fechar" sem clique e dois
   cabeçalhos). Computador: gaveta na metade direita, o resto do site escurecido atrás. Celular: folha que sobe de
   baixo. Com o painel aberto a conversa recolhe e fica só a bolinha (pulsando com a voz); tocar nela mostra a
   conversa por cima (body.ana-peek). A bolinha e o WhatsApp continuam visíveis, fora do painel. */
:root { --ana-sheet-w:min(820px, 56vw); }
.ana-sheet { position:fixed; top:0; right:0; bottom:0; z-index:1100; width:var(--ana-sheet-w); background:#fff; display:flex; flex-direction:column;
  border-left:2px solid var(--ana-gold); box-shadow:0 0 0 100vmax rgba(0,0,0,0), -18px 0 48px -12px rgba(0,0,0,.6);
  transform:translateX(104%); visibility:hidden; transition:transform .35s ease, box-shadow .35s ease, visibility 0s .35s; }
.ana-sheet.is-open { transform:none; visibility:visible; transition:transform .35s ease, box-shadow .35s ease;
  box-shadow:0 0 0 100vmax rgba(0,0,0,.55), -18px 0 48px -12px rgba(0,0,0,.6); }
.ana-sheet__bar { display:flex; align-items:center; gap:10px; padding:10px 14px; background:#0d0909; color:#f4efe6; border-bottom:2px solid var(--ana-red); flex:none; }
.ana-sheet__title { font:700 13px/1.2 system-ui,sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; flex:1; }
.ana-sheet__bar a, .ana-sheet__bar button { color:#f4efe6; background:none; border:1px solid rgba(255,255,255,.2); border-radius:8px; padding:6px 10px; font-size:12px; cursor:pointer; text-decoration:none; white-space:nowrap; }
.ana-sheet__bar button { border-color:var(--ana-gold); color:var(--ana-gold); font-weight:700; }
.ana-sheet__bar button::before { content:"✕ "; }
.ana-sheet iframe { flex:1; width:100%; border:0; background:#fff; }
/* Painel aberto: a conversa recolhe (só a bolinha); bolinha e WhatsApp saem de cima do painel, ao lado dele. */
body.ana-sheet-open .ana-card { display:none; }
body.ana-sheet-open.ana-peek .ana-card { display:flex; z-index:1102; right:calc(var(--ana-sheet-w) + 18px); }
body.ana-sheet-open .ana-launch { z-index:1101; right:calc(var(--ana-sheet-w) + 24px); }
body.ana-sheet-open .ana-launch .ana-launch__tip { display:none; }
body.ana-sheet-open a.fixed.bottom-6.right-6 { z-index:1101; right:calc(var(--ana-sheet-w) + 24px); }
/* Dentro do painel (o site carregado no iframe): só o conteúdo — sem cabeçalho, rodapé, Ana e WhatsApp
   (é o mesmo efeito do ?embed=1, que o painel também manda; isto cobre os links clicados lá dentro). */
html.ana-dentro #ana, html.ana-dentro a.fixed.bottom-6.right-6,
html.ana-dentro header.hdr-live, html.ana-dentro #hdrSpacer, html.ana-dentro body > footer { display:none !important; }
html.ana-dentro body { padding-top:0 !important; }

/* Idioma escolhido, recolhido: bandeira + nome + "trocar" (abre as bandeiras de novo) */
.ana-langsel { display:flex; align-items:center; gap:10px; padding:9px 10px; border-radius:12px; background:rgba(255,255,255,.05); border:1px solid rgba(200,168,75,.35); }
.ana-langsel img { width:30px; height:20px; object-fit:cover; border-radius:3px; box-shadow:0 0 0 1px rgba(0,0,0,.4); }
.ana-langsel strong { font-size:13px; color:#fff; flex:1; }
.ana-langsel button { background:none; border:1px solid rgba(200,168,75,.5); color:var(--ana-gold); border-radius:999px; padding:5px 11px; font-size:11px; font-weight:700; letter-spacing:.06em; cursor:pointer; }
.ana-langs { margin-top:10px; }

@media (max-width:767px){
  .ana-card { right:12px; left:12px; width:auto; bottom:164px; height:calc(100dvh - 184px); }
  /* Celular: folha que sobe de baixo, deixando uma faixa do site à mostra em cima (dá para ver que é um painel).
     A bolinha e o WhatsApp ficam onde sempre ficam, por cima da folha. */
  .ana-sheet { width:100vw; top:56px; height:auto; border-left:0; border-top:2px solid var(--ana-gold); border-radius:16px 16px 0 0; overflow:hidden;
    transform:translateY(104%); }
  .ana-sheet__bar { padding:12px 14px; }
  body.ana-sheet-open.ana-peek .ana-card { left:12px; right:12px; bottom:164px; height:min(520px, calc(100dvh - 300px)); } /* não cobre a barra do painel */
  body.ana-sheet-open .ana-launch { right:22px; }
  body.ana-sheet-open a.fixed.bottom-6.right-6 { right:24px; }
}
@media (prefers-reduced-motion:reduce){ .ana-orb__halo,.ana-orb__swirl,.ana-orb__swirl--b{ animation-duration:20s; } }

/* Cadastro pela Ana (06/10/2026): os dados para a pessoa conferir — Confirmar / Corrigir. */
.ana-conf { margin-top:12px; padding:12px 12px 10px; border-radius:14px; background:rgba(255,255,255,.05); border:1px solid rgba(200,168,75,.45); }
.ana-conf__title { margin:0 0 8px; font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--ana-gold); font-weight:700; }
.ana-conf__row { display:flex; justify-content:space-between; gap:10px; padding:5px 0; border-bottom:1px dashed rgba(255,255,255,.1); font-size:12.5px; }
.ana-conf__row span { color:rgba(255,255,255,.6); flex:none; }
.ana-conf__row strong { color:#fff; text-align:right; word-break:break-word; }
.ana-conf__terms { margin:8px 0 0; font-size:10.5px; line-height:1.45; color:rgba(255,255,255,.6); }
.ana-conf__terms a { color:var(--ana-gold); text-decoration:underline; }
.ana-conf__btns { display:grid; grid-template-columns:1fr 1.4fr; gap:8px; }
.ana-conf__btns .ana-btn { margin-top:10px; padding:10px 8px; font-size:12px; }
.ana-conf__wait, .ana-conf__ok { margin:10px 0 2px; font-size:12.5px; font-weight:700; color:var(--ana-gold); text-align:center; }
.ana-conf__ok { color:#7fe0a0; }
