/* Acesso dos portais de fora (portal_auth.js): entrar, esqueci a senha e alterar a senha.
   A identidade vem do portal (variáveis --pa-*). Sem gradientes nem efeitos: painel institucional discreto ao lado do
   formulário no computador; no celular só o formulário, com a logo no topo. */
.pa-login{display:grid;gap:24px;width:100%;max-width:1040px;margin:0 auto;padding:48px 24px;min-height:100vh;align-content:center}
.pa-hero{display:none}
.pa-card{background:#fff;border:1px solid var(--pa-linha,#DCE4EC);border-radius:var(--pa-raio,12px);box-shadow:0 2px 8px rgba(24,43,66,.05);padding:32px;display:flex;flex-direction:column;width:100%;max-width:440px;margin:0 auto}
.pa-card-topo{margin:0 0 24px}
.pa-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pa-card-logo{display:block;height:44px;width:auto;margin:0 0 12px}
.pa-desc{margin:0;color:var(--pa-muted,#526174);font-size:15px}
.pa-card h2{font:600 24px/1.3 var(--pa-fonte,system-ui);margin:0 0 4px;color:var(--pa-texto,#182B42)}
.pa-muted{margin:0 0 20px;color:var(--pa-muted,#526174);font-size:15px}
.pa-campo{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.pa-campo>span:first-child{font-size:14px;font-weight:600;color:var(--pa-texto,#182B42)}
.pa-campo input{width:100%;min-height:44px;border:1px solid var(--pa-linha,#DCE4EC);background:#fff;border-radius:8px;padding:0 12px;font-size:16px;color:var(--pa-texto,#182B42)}
.pa-campo input:focus{outline:2px solid var(--pa-acento,#087F8C);outline-offset:1px;border-color:var(--pa-acento,#087F8C)}
.pa-senha{position:relative;display:block}
.pa-senha input{padding-right:92px}
.pa-ver{position:absolute;right:4px;top:50%;transform:translateY(-50%);min-height:36px;background:none;border:0;padding:0 10px;border-radius:6px;color:var(--pa-acento-escuro,#066873);font-weight:600;font-size:14px;cursor:pointer}
.pa-ver:hover{background:var(--pa-acento-bg,#E8F5F6)}
.pa-aviso{border-radius:8px;padding:12px;font-size:15px;margin:0 0 16px;background:var(--pa-acento-bg,#E8F5F6);color:var(--pa-texto,#182B42)}
.pa-erro{border-radius:8px;padding:12px;font-size:15px;margin:0 0 16px;background:#FEE2E2;color:#B91C1C}
.pa-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:8px;border:0;padding:0 20px;font:600 16px var(--pa-fonte,system-ui);cursor:pointer;width:100%;background:var(--pa-acento,#087F8C);color:#fff}
.pa-btn:hover{background:var(--pa-acento-escuro,#066873)}
.pa-btn[disabled]{opacity:.7;cursor:progress}
.pa-link{background:none;border:0;min-height:44px;padding:0 8px;color:var(--pa-acento-escuro,#066873);font:600 15px var(--pa-fonte,system-ui);cursor:pointer;align-self:center;border-radius:8px}
.pa-link:hover{text-decoration:underline}
.pa-card :focus-visible,.pa-modal :focus-visible{outline:2px solid var(--pa-acento,#087F8C);outline-offset:3px}
.pa-spin{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;display:inline-block;animation:pa-gira .8s linear infinite}
@keyframes pa-gira{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.pa-spin{animation-duration:2s}}
@media (min-width:880px){
  .pa-login{grid-template-columns:1fr 440px;align-items:stretch;gap:32px}
  .pa-hero{display:flex;flex-direction:column;justify-content:center;background:var(--pa-escuro,#182B42);color:#fff;border-radius:var(--pa-raio,12px);padding:48px}
  .pa-hero-logo{display:block;height:56px;width:auto;margin:0 0 32px;align-self:flex-start}
  .pa-selo{display:inline-block;font:600 13px var(--pa-fonte,system-ui);color:#B9E9EC;margin-bottom:24px}
  .pa-hero h1{font:600 28px/1.25 var(--pa-fonte,system-ui);margin:0 0 12px}
  .pa-hero p{color:#D6DEE7;margin:0;max-width:460px;font-size:16px}
  .pa-itens{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:12px}
  .pa-itens li{display:flex;gap:12px;align-items:flex-start;color:#E6ECF2;font-size:15px}
  .pa-itens li::before{content:"";flex:none;width:8px;height:8px;margin-top:8px;border-radius:999px;background:var(--marca-turquesa,#2BC4CF)}
  .pa-card{margin:0;max-width:none;justify-content:center}
  .pa-card-topo{display:none}
}
@media (max-width:480px){.pa-login{padding:24px 16px}.pa-card{padding:24px 20px}}
/* janela de alterar a senha */
.pa-fundo{position:fixed;inset:0;background:rgba(24,43,66,.45);z-index:110;display:flex;align-items:flex-end;justify-content:center}
@media(min-width:700px){.pa-fundo{align-items:center;padding:24px}}
.pa-modal{background:#fff;width:100%;max-width:460px;max-height:92vh;overflow:auto;border-radius:12px 12px 0 0;box-shadow:0 8px 24px rgba(24,43,66,.12)}
@media(min-width:700px){.pa-modal{border-radius:12px}}
.pa-modal-h{display:flex;justify-content:space-between;align-items:center;padding:12px 12px 12px 24px;border-bottom:1px solid var(--pa-linha,#DCE4EC)}
.pa-modal-h h2{margin:0;font:600 18px var(--pa-fonte,system-ui)}
.pa-modal-h button{border:0;background:transparent;font-size:24px;cursor:pointer;line-height:1;width:44px;height:44px;border-radius:8px;color:var(--pa-muted,#526174)}
.pa-modal-h button:hover{background:#EEF3F7}
.pa-modal-b{padding:24px}
