/* Gestx · autenticação pública alinhada ao site institucional e ao produto. */
.corpo-autenticacao{min-height:100vh;background:#f4f8fa;color:var(--cor-texto)}
.painel-autenticacao{display:grid;min-height:100vh;grid-template-columns:minmax(520px,1.06fr) minmax(460px,.94fr);background:#fff}

/* Painel de marca */
.marca-autenticacao{position:relative;display:flex;min-height:100vh;padding:34px clamp(36px,5vw,76px);flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(145deg,#0058b8 0%,#0066cc 52%,#075ba8 100%);overflow:hidden;isolation:isolate}
.marca-autenticacao::before{position:absolute;z-index:-1;top:-210px;right:-150px;width:620px;height:620px;content:"";background:radial-gradient(circle,rgba(255,255,255,.16),rgba(255,255,255,0) 65%);border-radius:50%}
.marca-autenticacao::after{position:absolute;z-index:-1;right:-90px;bottom:-180px;width:520px;height:520px;content:"";background:radial-gradient(circle,rgba(255,85,0,.20),rgba(255,85,0,0) 68%);border-radius:50%}
.marca-autenticacao-topo{display:flex;align-items:center;justify-content:space-between;gap:20px}
.marca-autenticacao .marca{font-size:21px}.marca-autenticacao .marca-simbolo{width:38px;height:38px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);box-shadow:none}
.voltar-site{display:inline-flex;min-height:40px;padding:8px 11px;align-items:center;gap:7px;color:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.13);border-radius:10px;font-size:12px;font-weight:600;transition:background .2s ease,color .2s ease,border-color .2s ease}.voltar-site:hover{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22)}
.marca-autenticacao-conteudo{max-width:650px;margin:40px 0}
.autenticacao-selo{display:inline-flex;padding:7px 10px;align-items:center;gap:7px;color:#eaf5ff;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.025em}
.marca-autenticacao h1{max-width:660px;margin:20px 0 20px;color:#fff;font-size:clamp(43px,4.8vw,68px);font-weight:600;letter-spacing:-.06em;line-height:1.01}
.marca-autenticacao-conteudo>p{max-width:580px;margin:0;color:rgba(255,255,255,.78);font-size:17px;line-height:1.72}
.autenticacao-beneficios{display:grid;max-width:590px;margin-top:34px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.autenticacao-beneficios>div{display:grid;min-height:118px;padding:15px;align-content:start;gap:12px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.12);border-radius:15px;backdrop-filter:blur(7px)}
.autenticacao-beneficios span{display:grid;width:34px;height:34px;place-items:center;color:#fff;background:rgba(255,255,255,.12);border-radius:9px;font-size:16px}.autenticacao-beneficios strong{color:#fff;font-size:12px;font-weight:600;line-height:1.45}
.rodape-marca{display:flex;align-items:center;justify-content:space-between;gap:16px;color:rgba(255,255,255,.60);font-size:11px}.rodape-marca span{display:inline-flex;align-items:center;gap:6px}

/* Coluna do formulário */
.formulario-autenticacao{position:relative;display:grid;min-height:100vh;padding:54px clamp(34px,5vw,74px) 32px;align-content:center;justify-items:center;background:linear-gradient(180deg,#fff 0%,#fbfdfe 100%)}
.formulario-autenticacao::before{position:absolute;top:0;right:0;left:0;height:4px;background:linear-gradient(90deg,var(--cor-primaria-700),var(--cor-laranja));content:"";opacity:.9}
.cartao-autenticacao{width:min(510px,100%);padding:0;background:transparent;border:0;box-shadow:none}
.cartao-autenticacao>header{margin-bottom:26px}.autenticacao-passo{display:block;margin-bottom:7px;color:var(--cor-primaria-700);font-size:11px;font-weight:600;letter-spacing:.10em;text-transform:uppercase}.cartao-autenticacao h2{margin:0;color:#10233d;font-size:clamp(30px,3vw,38px);font-weight:600;letter-spacing:-.05em;line-height:1.06}.cartao-autenticacao header>p{max-width:470px;margin:10px 0 0;color:var(--cor-texto-suave);font-size:14px;line-height:1.62}
.cartao-autenticacao .formulario{gap:16px}.cartao-autenticacao .grupo-campo{gap:7px}.cartao-autenticacao .grupo-campo label{font-size:12px}.cartao-autenticacao .campo{min-height:50px;border-radius:11px}
.campo-com-icone{position:relative}.campo-com-icone>i{position:absolute;z-index:2;top:50%;left:15px;width:18px;color:#8a9aaa;font-size:15px;line-height:1;text-align:center;transform:translateY(-50%);pointer-events:none}.cartao-autenticacao .campo-com-icone>input.campo{padding-left:46px!important}.cartao-autenticacao .campo-com-acao>input.campo{padding-right:52px!important}.campo-com-acao>button{position:absolute;z-index:3;top:50%;right:7px;display:grid;width:36px;height:36px;padding:0;place-items:center;color:#7a8e9f;background:transparent;border:0;border-radius:9px;cursor:pointer;transform:translateY(-50%)}.campo-com-acao>button:hover{color:var(--cor-primaria-700);background:var(--cor-primaria-50)}
.linha-label{display:flex;align-items:center;justify-content:space-between;gap:12px}.linha-label a{font-size:11px;font-weight:600}
.cartao-autenticacao .botao-largo{min-height:50px;border-radius:11px}.cartao-autenticacao .botao-primario{margin-top:2px}
.mensagem-formulario{display:flex;margin-bottom:18px;align-items:flex-start;gap:9px;font-size:12px;font-weight:500;line-height:1.55}.mensagem-formulario>i{margin-top:1px;font-size:15px}.mensagem-formulario span{display:block}.lista-erros{margin-bottom:0}
.autenticacao-rodape-formulario{display:flex;width:min(510px,100%);margin:26px 0 0;align-items:flex-start;justify-content:center;gap:7px;color:#8a9aaa;font-size:10px;line-height:1.5;text-align:center}.autenticacao-rodape-formulario i{margin-top:1px;color:#6e8496}
.autenticacao-topo-mobile{display:none}
.opcoes-autenticacao{display:flex;margin:0;align-items:center;justify-content:center;gap:6px;color:var(--cor-texto-suave);font-size:12px}.opcoes-autenticacao a{font-weight:600}
.separador-autenticacao{height:1px;margin:22px 0;background:var(--cor-linha)}

/* Google */
.botao-google{display:flex;min-height:51px!important;align-items:center;justify-content:center;gap:10px;color:#25384b!important;background:#fff!important;border:1px solid #d8e3e7!important;box-shadow:0 5px 16px rgba(17,35,61,.045)!important}.botao-google:hover{background:#f8fbfc!important;border-color:#b9cbd2!important;box-shadow:0 10px 22px rgba(17,35,61,.075)!important}.google-marca{display:grid;width:25px;height:25px;place-items:center;color:#4285f4;background:#fff;border:1px solid #e1e7eb;border-radius:50%;font-size:13px;font-weight:600}.ajuda-google-login{max-width:460px;margin:8px auto 0;color:#8494a2;font-size:10.5px;line-height:1.5;text-align:center}.separador-google-login{display:flex;margin:19px 0;align-items:center;gap:12px;color:#91a0ac;font-size:10px}.separador-google-login::before,.separador-google-login::after{height:1px;flex:1;background:#e5edef;content:""}.separador-google-login span{text-align:center}

/* Senha */
.requisitos-senha{display:grid;margin:2px 0 0;padding:11px 12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;color:#80919f;background:#f7fafb;border:1px solid #e7eef0;border-radius:11px;font-size:10.5px;list-style:none}.requisitos-senha li{display:flex;align-items:center;gap:6px}.requisitos-senha i{font-size:10px}.requisitos-senha li.ok{color:#087a45}.requisitos-senha li.ok i{color:#087a45}
.cadastro-concluido{display:grid;padding:22px;place-items:center;background:#f5fbf8;border:1px solid #d5ebe0;border-radius:16px;text-align:center}.cadastro-concluido>span{display:grid;width:52px;height:52px;place-items:center;color:#087a45;background:#e5f7ee;border-radius:15px;font-size:23px}.cadastro-concluido h3{margin:14px 0 5px;font-size:18px}.cadastro-concluido p{max-width:390px;margin:0 0 17px;color:var(--cor-texto-suave);font-size:12px;line-height:1.6}

@media(max-width:1040px){
    .painel-autenticacao{grid-template-columns:minmax(360px,.82fr) minmax(440px,1fr)}.marca-autenticacao{padding:30px 32px}.autenticacao-beneficios{grid-template-columns:1fr}.autenticacao-beneficios>div{display:flex;min-height:0;align-items:center}.marca-autenticacao h1{font-size:43px}.marca-autenticacao-conteudo>p{font-size:15px}
}
@media(max-width:820px){
    .painel-autenticacao{display:block;min-height:100vh}.marca-autenticacao{display:none}.formulario-autenticacao{min-height:100vh;padding:88px 22px 28px;align-content:start}.formulario-autenticacao::before{height:3px}.autenticacao-topo-mobile{position:absolute;top:22px;right:22px;left:22px;display:flex;align-items:center;justify-content:space-between}.autenticacao-topo-mobile>a:last-child{display:grid;width:38px;height:38px;place-items:center;color:#708397;background:#f5f8fa;border:1px solid #e4ecee;border-radius:10px}.cartao-autenticacao{margin-top:26px}.autenticacao-rodape-formulario{margin-top:22px}
}
@media(max-width:540px){
    .formulario-autenticacao{padding:80px 18px 24px}.autenticacao-topo-mobile{top:18px;right:18px;left:18px}.cartao-autenticacao{margin-top:18px}.cartao-autenticacao h2{font-size:31px}.requisitos-senha{grid-template-columns:1fr}.opcoes-autenticacao{flex-wrap:wrap}.autenticacao-rodape-formulario{font-size:9.5px}
}
@media(prefers-reduced-motion:reduce){.marca-autenticacao *,.cartao-autenticacao *{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Hotfix 17.70 · Etapa 30 — contexto do ecossistema na área não autenticada. */
.autenticacao-ecossistema{display:flex;max-width:610px;margin-top:18px;flex-wrap:wrap;gap:6px}
.autenticacao-ecossistema span{display:inline-flex;min-height:29px;padding:5px 9px;align-items:center;gap:6px;color:rgba(255,255,255,.78);background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.11);border-radius:999px;font-size:9.5px;font-weight:600;letter-spacing:.01em}
.autenticacao-ecossistema i{color:#fff;font-size:11px}
@media(max-width:1040px){.autenticacao-ecossistema{display:none}}
