body:has(.recovery-page) .site-top,
body:has(.recovery-page) .top-header { display: none; }
.recovery-page {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100svh;
    padding: 28px 24px;
    background: radial-gradient(ellipse at center, var(--azul-suave), #f6fbff 70%);
}
.recovery-page .auth-wrapper {
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
    padding: 0;
    border: 1px solid var(--borda-cinza);
    border-radius: 20px;
    overflow: hidden;
    background: var(--branco);
    box-shadow: 0 12px 36px rgba(0, 61, 117, .06);
}
.recovery-page .auth-card { border: 0; border-radius: 0; box-shadow: none; padding-top: 20px; }
.recovery-page .auth-icon-circle { color: var(--action-primary); background: var(--azul-suave); }
.recovery-page .auth-icon-circle svg { width: 28px; height: 28px; }
.recovery-page .auth-card-header h2 { color: var(--texto-escuro); }
.recovery-page .form-input:focus { border-color: var(--action-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--action-primary) 10%, transparent); }
.recovery-page .info-callout-box { background: var(--azul-suave); border-color: color-mix(in srgb, var(--action-primary) 20%, var(--branco)); border-left-color: var(--action-primary); }
.recovery-page .info-callout-box svg { color: var(--action-primary); width: 20px; height: 20px; flex-shrink: 0; }
.recovery-page .info-callout-box p { color: var(--texto-cinza); }
.recovery-page .btn-voltar-login { color: var(--action-primary); }
.recovery-page .btn-voltar-login:hover { color: var(--action-primary-hover); }
@media (max-width: 600px) {
    .recovery-page { padding: 20px 16px; }
    .recovery-page .auth-wrapper { border-radius: 16px; }
}
