:root{--azul:#074a84;--azul-escuro:#063866;--verde:#079967;--texto:#173650;--cinza:#60758a;--borda:#ceddea;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--texto)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% 15%,#f8fbfd 0,#eaf2f8 48%,#dde9f3 100%)}button,input{font:inherit}.pagina-login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px}.cartao-login{width:min(980px,100%);min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;background:#fff;border:1px solid #d9e4ed;border-radius:26px;box-shadow:0 28px 75px #173d5d24}.identidade{display:flex;flex-direction:column;align-items:center;padding:38px 45px;background:linear-gradient(145deg,#fbfdff,#edf4fa);border-right:1px solid #dce7ef}.identidade h1{margin:0;color:var(--azul-escuro);font-size:28px;font-weight:500;text-align:center}.identidade img{width:min(350px,88%);height:370px;margin:auto;object-fit:contain;mix-blend-mode:multiply}.identidade-texto{display:grid;gap:5px;text-align:center;color:var(--azul-escuro)}.identidade-texto strong{font-size:17px;text-transform:uppercase;letter-spacing:1.5px}.identidade-texto span{font-size:13px;letter-spacing:1px;text-transform:uppercase}.acesso{position:relative;display:flex;flex-direction:column;justify-content:center;padding:48px}.acessibilidade{position:absolute;right:48px;top:48px;display:flex;gap:5px;padding:6px;border:1px solid var(--borda);border-radius:13px;background:#fff;box-shadow:0 10px 25px #17446912}.acessibilidade button{width:39px;height:40px;border:1px solid var(--borda);border-radius:9px;background:#f8fbfe;color:var(--azul);font-weight:800;cursor:pointer}.acessibilidade button:hover{background:#eaf5f2;color:var(--verde)}.acesso header{margin:55px 0 22px}.acesso h2{margin:0 0 7px;color:var(--azul-escuro);font-size:31px;font-weight:500}.acesso header p{max-width:370px;margin:0;color:var(--cinza);font-size:15px;line-height:1.25}.campo{margin-top:17px}.campo label,.linha-label{font-size:14px;color:var(--azul-escuro)}.linha-label{display:flex;justify-content:space-between;align-items:center}.linha-label a{color:var(--azul);font-size:12px;text-decoration:none}.controle{height:45px;margin-top:7px;display:flex;align-items:center;border:1px solid var(--borda);border-radius:15px;background:#f9fbfd;transition:.2s}.controle:focus-within{border-color:#2583c0;box-shadow:0 0 0 3px #2583c01c;background:#fff}.controle>span{padding-left:14px;color:#7790a5}.controle input{min-width:0;flex:1;height:100%;border:0;outline:0;background:transparent;padding:0 11px;color:var(--texto)}.mostrar-senha{height:100%;width:45px;border:0;background:transparent;color:#657f95;cursor:pointer}.erro{display:block;min-height:14px;margin-top:3px;color:#b52d2d;font-size:11px}.campo.invalido .controle{border-color:#c83d3d}.lembrar{display:flex;align-items:center;gap:8px;margin:7px 0 16px;color:#36546f;font-size:13px}.lembrar input{width:16px;height:16px;accent-color:var(--verde)}.aviso{padding:10px;margin-bottom:13px;border-radius:9px;background:#fff3cd;color:#765a06;font-size:12px}.acoes{display:grid;grid-template-columns:1.45fr 1fr;gap:11px}.entrar,.voltar{height:44px;display:flex;align-items:center;justify-content:center;border-radius:10px;text-decoration:none;font-size:14px;cursor:pointer}.entrar{border:0;background:linear-gradient(90deg,#0b9e6d,#07875e);color:#fff;font-weight:800;box-shadow:0 9px 20px #0799672b}.entrar:hover{filter:brightness(1.05)}.entrar:disabled{opacity:.7;cursor:wait}.voltar{background:#edf4fb;color:var(--azul);font-weight:600}.acesso footer{margin-top:20px;padding:14px 16px;border-radius:12px;background:#f1f6fa;color:#5c7185;font-size:12px;line-height:1.35}.direitos{margin:22px 0 0;color:#71869a;font-size:12px;text-align:center}.modal-recuperacao{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:20px;background:#0b2944a8;backdrop-filter:blur(4px)}.modal-recuperacao[hidden]{display:none}.janela-recuperacao{width:min(520px,100%);overflow:hidden;border:1px solid #fff;border-radius:18px;background:#fff;box-shadow:0 28px 75px #0a29465c}.janela-recuperacao>header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:linear-gradient(100deg,#064a83,#07996b);color:#fff}.janela-recuperacao>header>div{display:flex;align-items:center;gap:12px}.janela-recuperacao header h2{margin:0;font-size:22px}.janela-recuperacao header p{margin:4px 0 0;font-size:12px}.janela-recuperacao header button{width:38px;height:38px;border:1px solid #ffffff55;border-radius:9px;background:#ffffff1c;color:#fff;font-size:20px;cursor:pointer}.janela-recuperacao form{display:grid;gap:15px;padding:22px}.janela-recuperacao form[hidden]{display:none}.janela-recuperacao label{display:grid;gap:7px;color:var(--azul-escuro);font-size:13px;font-weight:700}.janela-recuperacao input{height:45px;border:1px solid var(--borda);border-radius:10px;padding:0 13px;outline:0}.janela-recuperacao input:focus{border-color:#2785bf;box-shadow:0 0 0 3px #2785bf1a}.mensagem-recuperacao{padding:10px;border-radius:9px;background:#fff0c9;color:#795900;font-size:12px}.mensagem-recuperacao.sucesso{background:#e2f6ed;color:#087b58}.acoes-recuperacao{display:grid;grid-template-columns:1.3fr 1fr;gap:10px}.acoes-recuperacao button{height:43px;border-radius:9px;cursor:pointer}.confirmar-recuperacao{border:0;background:var(--verde);color:#fff;font-weight:800}.cancelar-recuperacao{border:1px solid var(--borda);background:#f3f7fa;color:var(--azul)}body.alto-contraste{filter:contrast(1.35);background:#fff}@media(max-width:820px){.pagina-login{padding:20px 14px}.cartao-login{grid-template-columns:1fr;min-height:0}.identidade{padding:22px;border-right:0;border-bottom:1px solid #dce7ef}.identidade h1{font-size:23px}.identidade img{width:150px;height:150px;margin:15px auto 8px}.identidade-texto{display:none}.acesso{padding:90px 28px 30px}.acessibilidade{top:25px;right:28px}.acesso header{margin:0 0 18px}}@media(max-width:480px){.acesso{padding:85px 20px 24px}.acesso h2{font-size:27px}.acoes,.acoes-recuperacao{grid-template-columns:1fr}.identidade img{width:125px;height:125px}.identidade h1{font-size:20px}}
