.recuperacao-icon{vertical-align:middle;flex-shrink:0;width:1.2em;height:1.2em;display:inline-block}.redefinir-senha-page{color:#0f172a;background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;padding:38px 18px;display:flex;position:relative;overflow:hidden}.redefinir-senha-page *{box-sizing:border-box}.redefinir-senha-shell{z-index:2;width:100%;max-width:520px;position:relative}.redefinir-senha-brand{-webkit-backdrop-filter:blur(18px);background:#ffffffeb;border:1px solid #cbd5e1c7;border-radius:999px;align-items:center;gap:12px;width:-moz-fit-content;width:fit-content;margin:0 auto 18px;padding:10px 14px;display:flex;box-shadow:0 18px 40px #0f172a14,inset 0 1px #fffffff2}.redefinir-senha-brand-icon{color:#0f766e;background:linear-gradient(135deg,#ecfeff 0%,#eff6ff 100%);border:1px solid #cbd5e1db;border-radius:14px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 10px 22px #0f172a14,inset 0 1px #fffffff2}.redefinir-senha-brand-icon-svg{padding:0;overflow:hidden}.redefinir-senha-brand-icon-svg img{object-fit:contain;width:100%;height:100%;display:block}.redefinir-senha-logo-fallback{color:currentColor;justify-content:center;align-items:center;width:100%;height:100%;font-size:1.25rem;line-height:1;display:inline-flex}.redefinir-senha-brand-text strong{color:#0b1730;letter-spacing:-.01em;font-size:.96rem;line-height:1.15;display:block}.redefinir-senha-brand-text span{color:#64748b;margin-top:2px;font-size:.75rem;font-weight:650;display:block}.redefinir-senha-card{color:#0f172a;background:linear-gradient(#fffffffa,#f8fafcf7);border:1px solid #cbd5e1db;border-radius:30px;padding:34px;position:relative;overflow:hidden;box-shadow:0 30px 80px #0f172a29,0 10px 28px #0f172a14,inset 0 1px #fffffffa}.redefinir-senha-card:before{content:"";filter:blur(2px);pointer-events:none;background:#14b8a612;border-radius:999px;width:160px;height:160px;position:absolute;top:34px;bottom:auto;left:-70px;right:auto}.redefinir-senha-card:after{content:"";filter:blur(2px);pointer-events:none;background:#2563eb0f;border-radius:999px;width:180px;height:180px;position:absolute;top:auto;bottom:46px;left:auto;right:-80px}.redefinir-senha-card-topline{background:linear-gradient(90deg,#22c55e,#14b8a6,#2563eb);height:6px;position:absolute;top:0;bottom:auto;left:0;right:0}.redefinir-senha-header,.redefinir-senha-form,.redefinir-senha-loading-card{z-index:1;position:relative}.redefinir-senha-header{text-align:center;margin-bottom:26px}.redefinir-senha-main-icon{color:#0f766e;background:radial-gradient(circle at 30% 20%,#fffffff2,#0000 32%),linear-gradient(135deg,#dcfce7,#dbeafe);border:1px solid #94a3b847;border-radius:24px;place-items:center;width:68px;height:68px;margin:0 auto 16px;display:grid;box-shadow:0 18px 32px #0f172a1c,inset 0 1px #fffffff5}.redefinir-senha-main-icon svg{font-size:2rem}.redefinir-senha-kicker{letter-spacing:.12em;text-transform:uppercase;color:#0f766e;margin:0 0 8px;font-size:.76rem;font-weight:900}.redefinir-senha-header h1{color:#0b1730;letter-spacing:-.055em;margin:0;font-size:clamp(1.85rem,4.6vw,2.45rem);font-weight:950;line-height:1.04}.redefinir-senha-subtitle{color:#475569;max-width:380px;margin:12px auto 0;font-size:.98rem;line-height:1.62}.redefinir-senha-loading-card{background:#f8fafceb;border:1px solid #e2e8f0;border-radius:22px;align-items:center;gap:16px;padding:18px;display:flex;box-shadow:0 14px 28px #0f172a0d,inset 0 1px #fffffff5}.redefinir-senha-loading-card strong{color:#0f172a;font-size:.98rem;display:block}.redefinir-senha-loading-card p{color:#64748b;margin:4px 0 0;font-size:.9rem;line-height:1.45}.redefinir-senha-spinner,.redefinir-senha-button-spinner{border:3px solid #0f172a1f;border-top-color:#0f766e;border-radius:999px;animation:.8s linear infinite redefinirSenhaSpin;display:inline-block}.redefinir-senha-spinner{flex:0 0 34px;width:34px;height:34px}.redefinir-senha-button-spinner{border-width:2px;border-color:#fff #ffffff52 #ffffff52;width:17px;height:17px}.redefinir-senha-form{flex-direction:column;gap:15px;display:flex}.redefinir-senha-alert{border:1px solid #0000;border-radius:18px;align-items:flex-start;gap:10px;padding:13px 14px;font-size:.9rem;line-height:1.45;display:flex}.redefinir-senha-alert svg{flex:none;margin-top:1px;font-size:1.18rem;line-height:1}.redefinir-senha-alert p{margin:0}.redefinir-senha-alert-info{color:#075985;background:#e0f2fe;border-color:#bae6fd}.redefinir-senha-alert-sucesso{color:#166534;background:#dcfce7;border-color:#bbf7d0}.redefinir-senha-alert-erro{color:#991b1b;background:#fee2e2;border-color:#fecaca}.redefinir-senha-field{flex-direction:column;gap:8px;display:flex}.redefinir-senha-field>span{color:#1e293b;font-size:.88rem;font-weight:850}.redefinir-senha-input-wrap{background:#fffffff5;border:1px solid #dbe3ef;border-radius:18px;align-items:center;min-height:54px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;box-shadow:0 10px 24px #0f172a0f,inset 0 1px #fffffff5}.redefinir-senha-input-wrap:focus-within{border-color:#14b8a6;transform:translateY(-1px);box-shadow:0 0 0 4px #14b8a624,0 14px 28px #0f172a14}.redefinir-senha-input-wrap input{color:#0f172a;background:0 0;border:0;outline:0;width:100%;min-width:0;min-height:52px;padding:0 14px 0 16px;font-size:.98rem;font-weight:650}.redefinir-senha-input-wrap input::placeholder{color:#94a3b8;font-weight:500}.redefinir-senha-input-wrap input:disabled{cursor:not-allowed;color:#94a3b8}.redefinir-senha-eye-btn{color:#334155;cursor:pointer;background:#f1f5f9;border:0;border-radius:13px;flex:none;align-items:center;gap:6px;margin-right:8px;padding:9px 11px;font-size:.76rem;font-weight:850;transition:transform .16s,background .16s,color .16s;display:inline-flex}.redefinir-senha-eye-btn svg{font-size:1rem}.redefinir-senha-eye-btn:hover:not(:disabled){color:#0f172a;background:#e2e8f0;transform:translateY(-1px)}.redefinir-senha-eye-btn:disabled{cursor:not-allowed;opacity:.55}.redefinir-senha-strength{padding:2px 1px 0}.redefinir-senha-strength-head{color:#64748b;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.78rem;font-weight:800;display:flex}.redefinir-senha-strength-text{color:#64748b}.redefinir-senha-strength-text.fraca{color:#b91c1c}.redefinir-senha-strength-text.boa{color:#b45309}.redefinir-senha-strength-text.forte{color:#15803d}.redefinir-senha-strength-bar{background:#e2e8f0;border-radius:999px;height:8px;position:relative;overflow:hidden}.redefinir-senha-strength-bar span{border-radius:inherit;width:0%;transition:width .2s,background .2s;position:absolute;top:0;bottom:0;left:0;right:auto}.redefinir-senha-strength-bar.nivel-1 span{background:#ef4444;width:34%}.redefinir-senha-strength-bar.nivel-2 span{background:#f59e0b;width:68%}.redefinir-senha-strength-bar.nivel-3 span{background:linear-gradient(90deg,#22c55e,#14b8a6);width:100%}.redefinir-senha-checklist{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:2px;display:grid}.redefinir-senha-checklist div{color:#64748b;background:#f8fafce6;border:1px solid #e2e8f0;border-radius:14px;align-items:center;gap:7px;min-height:36px;padding:8px 10px;font-size:.78rem;font-weight:750;transition:background .18s,border-color .18s,color .18s;display:flex}.redefinir-senha-checklist div svg{color:#94a3b8;flex:none;font-size:1.05rem}.redefinir-senha-checklist div.ok{color:#166534;background:#ecfdf5;border-color:#bbf7d0}.redefinir-senha-checklist div.ok svg{color:#16a34a}.redefinir-senha-submit{color:#fff;letter-spacing:.01em;cursor:pointer;background:linear-gradient(135deg,#0b1730 0%,#10213f 42%,#0f766e 100%);border:0;border-radius:18px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:56px;margin-top:4px;font-size:.98rem;font-weight:950;transition:transform .16s,box-shadow .16s,opacity .16s,filter .16s;display:inline-flex;box-shadow:0 18px 34px #0f172a38,0 8px 16px #0f766e2e}.redefinir-senha-submit svg{font-size:1.1rem}.redefinir-senha-submit:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-2px);box-shadow:0 22px 42px #0f172a42,0 10px 20px #0f766e33}.redefinir-senha-submit:active:not(:disabled){transform:translateY(0)}.redefinir-senha-submit:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}.redefinir-senha-footer-note{color:#64748b;text-align:center;background:#f8fafceb;border:1px solid #e2e8f0;border-radius:16px;margin:0;padding:12px 14px;font-size:.82rem;line-height:1.5}@keyframes redefinirSenhaSpin{to{transform:rotate(360deg)}}@media (max-width:560px){.redefinir-senha-page{align-items:flex-start;padding:22px 12px}.redefinir-senha-brand{margin-bottom:14px}.redefinir-senha-card{border-radius:26px;padding:28px 18px 20px}.redefinir-senha-header{margin-bottom:22px}.redefinir-senha-main-icon{border-radius:22px;width:60px;height:60px}.redefinir-senha-main-icon svg{font-size:1.8rem}.redefinir-senha-subtitle{font-size:.92rem}.redefinir-senha-checklist{grid-template-columns:1fr}.redefinir-senha-input-wrap{min-height:52px}.redefinir-senha-input-wrap input{min-height:50px;font-size:.92rem}.redefinir-senha-eye-btn{padding:8px 9px;font-size:.72rem}.redefinir-senha-eye-btn span{display:none}.redefinir-senha-submit{min-height:54px}}.redefinir-senha-validate{color:#0f766e;cursor:pointer;background:linear-gradient(135deg,#ecfeff 0%,#ecfdf5 100%);border:1px solid #0d948847;border-radius:18px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:54px;font-size:.95rem;font-weight:900;transition:transform .16s,box-shadow .16s,opacity .16s;display:inline-flex;box-shadow:0 12px 24px #0f766e14}.redefinir-senha-validate:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 28px #0f766e21}.redefinir-senha-validate:disabled{cursor:not-allowed;opacity:.58}.redefinir-senha-validate .redefinir-senha-button-spinner{border-color:#0f766e #0f766e38 #0f766e38}.redefinir-senha-preconfirm{flex-direction:column;gap:14px;display:flex}.redefinir-senha-validate-primary{isolation:isolate;color:#fff;letter-spacing:.035em;text-transform:uppercase;background:linear-gradient(135deg,#0b1730 0%,#10213f 48%,#0f766e 100%);border:2px solid #0b1730;border-radius:20px;min-height:76px;padding:18px 22px;font-size:clamp(.95rem,2.8vw,1.08rem);font-weight:950;line-height:1.28;animation:2.4s ease-in-out infinite redefinirSenhaCtaPulse;position:relative;overflow:hidden;box-shadow:0 20px 42px #0b17303d,0 10px 20px #0f766e2e,inset 0 1px #ffffff29}.redefinir-senha-validate-primary:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff3d,#0000);width:24%;animation:3.8s ease-in-out infinite redefinirSenhaCtaSweep;position:absolute;top:-45%;bottom:-45%;left:-34%;transform:rotate(16deg)}.redefinir-senha-validate-primary svg{flex:none;font-size:1.3rem}.redefinir-senha-validate-primary:hover:not(:disabled){transform:translateY(-2px)scale(1.005);box-shadow:0 24px 48px #0b173047,0 12px 24px #0f766e33}.redefinir-senha-validate-primary:focus-visible{outline-offset:4px;outline:4px solid #14b8a63d}.redefinir-senha-validate-primary:disabled{color:#fff;opacity:.74;animation:none}.redefinir-senha-validate-primary:disabled:after{animation:none}.redefinir-senha-validate-primary .redefinir-senha-button-spinner{border-color:#fff #ffffff57 #ffffff57}.redefinir-senha-cross-device-note,.redefinir-senha-confirmed-banner{border-radius:18px;align-items:flex-start;gap:12px;padding:15px 16px;display:flex}.redefinir-senha-cross-device-note{color:#334155;background:#f8fafcf0;border:1px solid #dbe3ef}.redefinir-senha-cross-device-note>svg,.redefinir-senha-confirmed-banner>svg{flex:none;margin-top:1px;font-size:1.3rem}.redefinir-senha-cross-device-note>svg{color:#0f766e}.redefinir-senha-cross-device-note div,.redefinir-senha-confirmed-banner div{min-width:0}.redefinir-senha-cross-device-note strong,.redefinir-senha-confirmed-banner strong{font-size:.88rem;font-weight:900;line-height:1.35;display:block}.redefinir-senha-cross-device-note span,.redefinir-senha-confirmed-banner span{margin-top:4px;font-size:.8rem;line-height:1.5;display:block}.redefinir-senha-confirmed-banner{color:#166534;background:#ecfdf5;border:1px solid #bbf7d0}.redefinir-senha-confirmed-banner>svg{color:#16a34a}@keyframes redefinirSenhaCtaPulse{0%,to{box-shadow:0 20px 42px #0b17303d,0 10px 20px #0f766e2e,0 0 #14b8a62e}50%{box-shadow:0 22px 46px #0b173045,0 12px 24px #0f766e33,0 0 0 7px #14b8a60d}}@keyframes redefinirSenhaCtaSweep{0%,58%{opacity:0;left:-34%}64%{opacity:1}82%{opacity:.8;left:112%}to{opacity:0;left:112%}}@media (max-width:560px){.redefinir-senha-validate-primary{border-radius:18px;min-height:72px;padding:17px 16px;font-size:.94rem}.redefinir-senha-cross-device-note,.redefinir-senha-confirmed-banner{padding:13px 14px}}@media (prefers-reduced-motion:reduce){.redefinir-senha-validate-primary,.redefinir-senha-validate-primary:after{animation:none}}.acesso-temporario-card{padding:clamp(20px,4vw,36px)}.acesso-temporario-card .redefinir-senha-field>input{box-sizing:border-box;color:#183e30;width:100%;min-height:43px;font:inherit;background:#fff;border:1px solid #adc8bc;border-radius:9px;padding:10px 13px}.acesso-temporario-footer{text-align:center;margin:22px 0 0}.acesso-temporario-footer a{color:#175b46;text-decoration:underline}.error-boundary{border:1px solid color-mix(in srgb, #dc2626 28%, var(--border));background:color-mix(in srgb, #dc2626 6%, var(--bg-card));width:min(760px,100% - 32px);color:var(--text-main);border-radius:22px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:18px;margin:28px auto;padding:24px;display:grid;box-shadow:0 18px 48px #0f172a1a}.error-boundary-icon{color:#dc2626;background:#dc26261f;border-radius:16px;place-items:center;width:50px;height:50px;font-size:1.65rem;display:grid}.error-boundary-content h2,.error-boundary-content p{margin:0}.error-boundary-kicker{color:#b91c1c;letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:900;margin-bottom:6px!important}.error-boundary-content>p:not(.error-boundary-kicker){color:var(--text-sec);margin-top:8px;line-height:1.55}.error-boundary-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.error-boundary-actions button{border:1px solid var(--accent);background:var(--accent);color:#fff;font:inherit;cursor:pointer;border-radius:12px;padding:10px 14px;font-weight:850}.error-boundary-actions button.secundario{border-color:var(--border);background:var(--bg-card);color:var(--text-main)}@media (max-width:620px){.error-boundary{grid-template-columns:1fr}.error-boundary-actions button{width:100%}}
