/* ==========================================================================
   PIGREJAS — css/pigr-assistente.css   (Assistente virtual)
   Funciona sozinho (tem as próprias cores) e combina com css/pigr-home.css.
   ========================================================================== */
.pa-lancar, .pa-painel{
  --pa-azul:#0b5fd9; --pa-azul-esc:#0a4cb8; --pa-marinho:#0a2766; --pa-fundo:#f3f6fc; --pa-linha:#e2e8f3;
  --pa-tinta:#0c1a3a; --pa-tinta2:#46557a; --pa-tinta3:#7483a3; --pa-ok:#0f9d58; --pa-erro:#d33a2c;
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif; box-sizing:border-box;
}
.pa-painel *, .pa-painel *::before, .pa-painel *::after{box-sizing:border-box}
.pa-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- botão flutuante ---------- */
.pa-lancar{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:70;display:inline-flex;align-items:center;gap:8px;
  height:58px;padding:0 20px 0 14px;border:0;border-radius:999px;background:#fff;color:var(--pa-azul-esc);font-weight:700;font-size:.95rem;cursor:pointer;
  box-shadow:0 10px 28px rgba(5,22,56,.28),0 0 0 1.5px rgba(11,95,217,.18);transition:transform .2s,bottom .25s ease,background .15s}
.pa-lancar:hover{background:#eef5ff;transform:translateY(-2px)}
.pa-lancar:focus-visible{outline:3px solid #62a6ff;outline-offset:3px}
.pa-lancar .pa-pi{width:44px;height:44px;margin-left:-8px}
.pa-lancar[aria-expanded="true"]{transform:scale(.9);opacity:0;pointer-events:none}
/* acima da barra fixa "Criar perfil" da página inicial, quando ela aparece */
.hm-barra-cel.visivel ~ .pa-lancar{bottom:calc(84px + env(safe-area-inset-bottom))}
@media (max-width:640px){.pa-lancar{height:54px;padding:0 16px 0 12px}.pa-lancar .pa-pi{width:40px;height:40px}}

/* ---------- painel ---------- */
.pa-painel{position:fixed;z-index:80;right:16px;bottom:16px;width:min(400px,calc(100vw - 32px));height:min(640px,calc(100vh - 32px));
  display:flex;flex-direction:column;background:#fff;color:var(--pa-tinta);border-radius:22px;overflow:hidden;
  box-shadow:0 28px 70px rgba(5,22,56,.32),0 0 0 1px rgba(12,26,58,.06);
  opacity:0;transform:translateY(16px) scale(.98);transform-origin:bottom right;transition:opacity .2s ease,transform .2s ease}
.pa-painel.pa-visivel{opacity:1;transform:none}
@media (max-width:640px){
  .pa-painel{inset:0;width:100%;height:100%;height:100dvh;border-radius:0;transform:translateY(24px)}
  html.pa-aberto, html.pa-aberto body{overflow:hidden}
}
@media (prefers-reduced-motion:reduce){.pa-painel,.pa-lancar{transition:none}}

.pa-topo{display:flex;align-items:center;gap:10px;padding:14px 12px 14px 16px;background:linear-gradient(135deg,var(--pa-azul),var(--pa-marinho));color:#fff;flex-shrink:0;
  padding-top:calc(14px + env(safe-area-inset-top))}
.pa-avatar{width:46px;height:46px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#fff;box-shadow:0 3px 10px rgba(3,14,40,.3)}
.pa-avatar .pa-pi{width:38px;height:38px;margin-top:2px}
.pa-topo-txt{flex:1;min-width:0;line-height:1.2}
.pa-topo-txt strong{display:block;font-size:1rem}
.pa-topo-txt small{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#cfe0ff}
.pa-topo-txt small::before{content:"";width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 0 3px rgba(52,211,153,.25)}
.pa-topo-txt small.pa-sub-dig{font-style:italic;color:#fff}
.pa-dig-txt{font-size:.85rem;color:var(--pa-tinta3);font-style:italic}
.pa-icone{width:40px;height:40px;border:0;border-radius:12px;background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center}
.pa-icone:hover{background:rgba(255,255,255,.14)}
.pa-icone:focus-visible{outline:2px solid #fff;outline-offset:-2px}
.pa-icone svg{width:20px;height:20px}

/* ---------- mensagens ---------- */
.pa-msgs{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:16px 14px 8px;background:var(--pa-fundo);display:flex;flex-direction:column;gap:8px;scroll-behavior:smooth}
.pa-linha{display:flex}
.pa-eu{justify-content:flex-end}
.pa-balao{max-width:86%;padding:10px 14px;border-radius:18px;font-size:.94rem;line-height:1.5;overflow-wrap:anywhere}
.pa-bot .pa-balao{background:#fff;border:1px solid var(--pa-linha);border-bottom-left-radius:6px;box-shadow:0 1px 2px rgba(12,26,58,.04)}
.pa-eu .pa-balao{background:var(--pa-azul);color:#fff;border-bottom-right-radius:6px}
.pa-balao p{margin:0 0 6px}
.pa-balao p:last-child{margin-bottom:0}
.pa-balao ul{margin:4px 0 8px;padding-left:1.15em;display:grid;gap:3px}
.pa-balao ul:last-child{margin-bottom:0}
.pa-balao a{color:var(--pa-azul);font-weight:600}
.pa-balao strong{color:var(--pa-tinta)}
.pa-digitando .pa-balao{display:flex;gap:4px;padding:14px 16px}
.pa-digitando i{width:7px;height:7px;border-radius:50%;background:#9db3d9;animation:pa-pulo 1s infinite ease-in-out}
.pa-digitando i:nth-child(2){animation-delay:.15s}.pa-digitando i:nth-child(3){animation-delay:.3s}
@keyframes pa-pulo{0%,80%,100%{transform:translateY(0);opacity:.5}40%{transform:translateY(-4px);opacity:1}}

.pa-chips{display:flex;flex-wrap:wrap;gap:6px;padding:2px 0 4px}
.pa-chip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 14px;border-radius:999px;border:1.5px solid #c9d8f3;background:#fff;color:var(--pa-azul-esc);
  font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;text-align:left;line-height:1.25;transition:background .15s,border-color .15s}
.pa-chip:hover:not(:disabled){background:#eef5ff;border-color:var(--pa-azul)}
.pa-chip:focus-visible{outline:3px solid #62a6ff;outline-offset:1px}
.pa-chip:disabled{opacity:.5;cursor:default}
.pa-chip svg{width:18px;height:18px;flex-shrink:0}
.pa-chip--forte{background:var(--pa-azul);border-color:var(--pa-azul);color:#fff}
.pa-chip--forte:hover:not(:disabled){background:var(--pa-azul-esc);border-color:var(--pa-azul-esc)}
.pa-chips--leve .pa-chip,.pa-chip--leve{border-color:transparent;background:transparent;color:var(--pa-tinta2);text-decoration:underline;text-underline-offset:3px;min-height:36px;padding:6px 8px}
.pa-chips--multi .pa-chip.pa-on{background:#e3eeff;border-color:var(--pa-azul);color:var(--pa-marinho)}
.pa-chips--multi .pa-chip.pa-on::before{content:"✓";font-weight:800}
.pa-continuar{flex-basis:100%;justify-content:center}
.pa-rel{margin:4px 2px 0;font-size:.78rem;color:var(--pa-tinta3);font-weight:600}

.pa-aval{display:flex;align-items:center;gap:4px;font-size:.78rem;color:var(--pa-tinta3);padding:0 4px}
.pa-aval-btn{width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:var(--pa-tinta3);cursor:pointer;display:grid;place-items:center}
.pa-aval-btn:hover{background:#e7eefb;color:var(--pa-azul)}
.pa-aval-btn svg{width:17px;height:17px}

/* ---------- nome ---------- */
.pa-nome{display:flex;gap:6px;flex:1 1 100%}
.pa-nome input{flex:1;min-width:0;min-height:44px;border:1.5px solid #c9d8f3;border-radius:999px;padding:0 16px;font:inherit;font-size:1rem;background:#fff;color:var(--pa-tinta)}
.pa-nome input:focus{outline:0;border-color:var(--pa-azul);box-shadow:0 0 0 3px rgba(11,95,217,.15)}
.pa-nome .pa-chip{width:44px;justify-content:center;padding:0}

/* ---------- formulário de contato ---------- */
.pa-form{background:#fff;border:1px solid var(--pa-linha);border-radius:18px;padding:14px;display:grid;gap:6px;box-shadow:0 1px 2px rgba(12,26,58,.04)}
.pa-form-tit{font-size:1rem}
.pa-form-intro{margin:0 0 4px;font-size:.84rem;color:var(--pa-tinta2)}
.pa-form label{font-size:.8rem;font-weight:700;margin-top:4px}
.pa-form input:not([type=checkbox]),.pa-form textarea{width:100%;min-height:44px;border:1.5px solid #d3dbea;border-radius:12px;padding:10px 12px;font:inherit;font-size:1rem;color:var(--pa-tinta);background:#fff;resize:vertical}
.pa-form input:focus,.pa-form textarea:focus{outline:0;border-color:var(--pa-azul);box-shadow:0 0 0 3px rgba(11,95,217,.14)}
.pa-check{display:flex!important;gap:8px;align-items:flex-start;font-weight:500!important;font-size:.84rem!important;color:var(--pa-tinta2);cursor:pointer;line-height:1.35}
.pa-check input{width:18px;height:18px;margin:1px 0 0;flex-shrink:0;accent-color:var(--pa-azul)}
.pa-check[hidden]{display:none!important}
.pa-isca{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pa-form-erro{margin:2px 0;color:var(--pa-erro);font-weight:600;font-size:.84rem}
.pa-form-enviar{justify-content:center;margin-top:6px}
.pa-form-priv{margin:2px 0 0;font-size:.74rem;color:var(--pa-tinta3);text-align:center}
.pa-form-priv a{color:var(--pa-tinta2)}
.pa-form-whats{justify-content:center;border-color:#25d366;color:#128c4a}
.pa-form-whats:hover:not(:disabled){background:#eafbf1!important;border-color:#1fb85a!important}

/* ---------- entrada ---------- */
.pa-entrada{display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--pa-linha);background:#fff;flex-shrink:0}
.pa-entrada input{flex:1;min-width:0;min-height:46px;border:1.5px solid #d3dbea;border-radius:999px;padding:0 16px;font:inherit;font-size:1rem;color:var(--pa-tinta);background:#fff}
.pa-entrada input:focus{outline:0;border-color:var(--pa-azul);box-shadow:0 0 0 3px rgba(11,95,217,.14)}
.pa-enviar{width:46px;height:46px;border:0;border-radius:50%;background:var(--pa-azul);color:#fff;cursor:pointer;display:grid;place-items:center;flex-shrink:0}
.pa-enviar:hover{background:var(--pa-azul-esc)}
.pa-enviar svg{width:20px;height:20px}

/* ---------- o Pi (avatar) ---------- */
.pa-pi{display:block;overflow:visible}
.pa-pi .pa-pi-olho{transform-box:fill-box;transform-origin:center;animation:pa-piscar 5.2s infinite}
@keyframes pa-piscar{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.08)}}
.pa-pi .pa-pi-ponto{transform-box:fill-box;transform-origin:center;animation:pa-boia 3.6s ease-in-out infinite}
@keyframes pa-boia{50%{transform:translateY(-3px)}}
.pa-pi .pa-pi-corpo{transform-origin:60px 112px;transition:transform .3s}
.pa-pi .pa-pi-pupila{transform:translate(var(--pa-px,0px),var(--pa-py,0px));transition:transform .15s ease-out}
.pa-pi .pa-pi-feliz,.pa-pi .pa-pi-bocao,.pa-pi .pa-pi-onda,.pa-pi .pa-pi-sobr,.pa-pi .pa-pi-mao,.pa-pi .pa-pi-mao2,.pa-pi .pa-pi-pensa,.pa-pi .pa-pi-trist,.pa-pi .pa-pi-lagrima,.pa-pi .pa-pi-sorriso,.pa-pi .pa-pi-brilhos{opacity:0;transition:opacity .2s}
.pa-pi .pa-pi-boca{transition:opacity .2s}
/* pensando (enquanto "digita") */
.pa-pi--pensando .pa-pi-pupila{transform:translate(3px,-3px)}
.pa-pi--pensando .pa-pi-boca{opacity:0}.pa-pi--pensando .pa-pi-bocao,.pa-pi--pensando .pa-pi-pensa{opacity:1}
.pa-pi--pensando .pa-pi-pensa circle{animation:pa-pulo 1s infinite ease-in-out}
.pa-pi--pensando .pa-pi-pensa circle:nth-child(2){animation-delay:.15s}.pa-pi--pensando .pa-pi-pensa circle:nth-child(3){animation-delay:.3s}
.pa-pi--pensando .pa-pi-ponto{animation:pa-brilho 1.2s infinite}
@keyframes pa-brilho{50%{fill:#fff}}
/* feliz */
.pa-pi--feliz .pa-pi-olho{opacity:0}.pa-pi--feliz .pa-pi-feliz{opacity:1}
.pa-pi--feliz .pa-pi-corpo{animation:pa-salto .6s ease 1}
@keyframes pa-salto{30%{transform:translateY(-8px) scale(1.02,.98)}60%{transform:translateY(0) scale(.98,1.02)}}
/* dando oi */
.pa-pi--acenando .pa-pi-mao{opacity:1;transform-box:fill-box;transform-origin:50% 90%;animation:pa-aceno .45s ease-in-out 4 alternate}
@keyframes pa-aceno{from{transform:rotate(-14deg)}to{transform:rotate(16deg)}}
.pa-pi--acenando .pa-pi-corpo{transform:rotate(-3deg)}
/* não entendeu */
.pa-pi--confuso .pa-pi-sobr,.pa-pi--confuso .pa-pi-onda{opacity:1}.pa-pi--confuso .pa-pi-boca{opacity:0}
.pa-pi--confuso .pa-pi-corpo{transform:rotate(4deg)}
/* triste (não achou a resposta / errou) */
.pa-pi--triste .pa-pi-trist,.pa-pi--triste .pa-pi-lagrima{opacity:1}.pa-pi--triste .pa-pi-boca{opacity:0}
.pa-pi--triste .pa-pi-pupila{transform:translate(0,3.5px)}
.pa-pi--triste .pa-pi-olho{transform:scaleY(.86);animation:none}
.pa-pi--triste .pa-pi-corpo{transform:translateY(2px) rotate(-2deg)}
.pa-pi--triste .pa-pi-lagrima{animation:pa-lagrima 1.6s ease-in 2}
@keyframes pa-lagrima{0%{transform:translateY(-4px);opacity:0}25%{opacity:1}100%{transform:translateY(10px);opacity:0}}
/* comemorando (acertou depois de errar) */
.pa-pi--comemorando .pa-pi-olho{opacity:0}.pa-pi--comemorando .pa-pi-feliz,.pa-pi--comemorando .pa-pi-sorriso,.pa-pi--comemorando .pa-pi-brilhos{opacity:1}
.pa-pi--comemorando .pa-pi-boca{opacity:0}
.pa-pi--comemorando .pa-pi-mao,.pa-pi--comemorando .pa-pi-mao2{opacity:1;transform-box:fill-box;transform-origin:50% 100%}
.pa-pi--comemorando .pa-pi-mao{transform:translate(3px,-27px) rotate(-22deg);animation:pa-vivaE .4s ease-in-out 5 alternate}
.pa-pi--comemorando .pa-pi-mao2{transform:translate(-3px,-27px) rotate(22deg);animation:pa-vivaD .4s ease-in-out 5 alternate}
@keyframes pa-vivaE{from{transform:translate(3px,-27px) rotate(-22deg)}to{transform:translate(3px,-31px) rotate(-6deg)}}
@keyframes pa-vivaD{from{transform:translate(-3px,-27px) rotate(22deg)}to{transform:translate(-3px,-31px) rotate(6deg)}}
.pa-pi--comemorando .pa-pi-corpo{animation:pa-salto2 .9s ease 2}
@keyframes pa-salto2{20%{transform:translateY(-9px)}40%{transform:translateY(0) scale(1.03,.97)}60%{transform:translateY(-6px)}80%{transform:translateY(0)}}
.pa-pi--comemorando .pa-pi-brilhos path{transform-box:fill-box;transform-origin:center;animation:pa-brilha .7s ease-in-out infinite alternate}
.pa-pi--comemorando .pa-pi-brilhos path:nth-child(2){animation-delay:.2s}.pa-pi--comemorando .pa-pi-brilhos path:nth-child(3){animation-delay:.35s}.pa-pi--comemorando .pa-pi-brilhos path:nth-child(4){animation-delay:.5s}
@keyframes pa-brilha{from{transform:scale(.55) rotate(0)}to{transform:scale(1.15) rotate(20deg)}}
/* mini Pi ao lado das mensagens: parado, sem distrair */
.pa-pi--mini{width:28px;height:28px;flex-shrink:0;align-self:flex-end}
.pa-pi--mini *{animation:none!important}
.pa-linha.pa-bot{align-items:flex-end;gap:8px}
.pa-linha.pa-seguida{padding-left:36px}
.pa-com-pi .pa-balao,.pa-seguida .pa-balao{max-width:calc(86% - 36px)}
.pa-chips,.pa-aval,.pa-rel,.pa-form{margin-left:36px}
.pa-chips:has(.pa-nome){margin-left:0}
@media (max-width:360px){.pa-pi--mini{display:none}.pa-linha.pa-seguida{padding-left:0}.pa-chips,.pa-aval,.pa-rel,.pa-form{margin-left:0}}
/* rosto do Pi usado em outros lugares da página (data-pi) */
[data-pi] .pa-pi{width:100%;height:100%}
@media (prefers-reduced-motion:reduce){.pa-pi *{animation:none!important;transition:none!important}}
