/* Recuperação / redefinição de palavra-passe — extensão de login.css */

.auth-icon-top {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #FDE68A;
    border: 1px solid #FACC15;
}

.auth-icon-top--envelope::before {
    content: '\2709';
    font-size: 30px;
    line-height: 1;
    color: #92400E;
}

.auth-icon-top--shield {
    background: linear-gradient(180deg, #FFFBEB 0%, #FDE68A 100%);
}

.auth-icon-top--shield::before {
    content: '';
    width: 24px;
    height: 28px;
    background: #92400E;
    clip-path: polygon(50% 0%, 100% 18%, 100% 62%, 50% 100%, 0% 62%, 0% 18%);
    display: block;
}

.auth-back-link-wrap {
    text-align: center;
    margin-top: 20px;
}

.auth-full-btn {
    display: flex;
    text-decoration: none;
    margin-top: 16px;
}

.auth-form-hint {
    margin-top: 6px;
    font-size: 13px;
    color: #6B7280;
}

/* Bloco de força da senha (adaptado do modal de Configurações) */
.senha-strength-block {
    margin-bottom: 20px;
}

.senha-strength-title {
    margin: 0 0 8px;
    font-size: 13px;
    font-weight: 600;
    color: #374151;
}

.senha-strength {
    height: 8px;
    background: #E5E7EB;
    border-radius: 999px;
    overflow: hidden;
    margin-bottom: 8px;
}

.senha-strength-bar {
    height: 100%;
    width: 0;
    border-radius: 999px;
    background: #EF4444;
    transition: width 0.2s ease, background 0.2s ease;
}

.senha-strength-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.senha-strength-label,
.senha-strength-value {
    margin: 0;
    font-size: 12px;
    color: #6B7280;
}

.senha-checklist {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 6px;
}

.senha-checklist li {
    font-size: 13px;
    color: #6B7280;
    padding-left: 22px;
    position: relative;
}

.senha-checklist li::before {
    content: '○';
    position: absolute;
    left: 0;
    color: #9CA3AF;
}

.senha-checklist li.ok {
    color: #065F46;
}

.senha-checklist li.ok::before {
    content: '✓';
    color: #16A34A;
    font-weight: 700;
}

.senha-match-text {
    margin: 6px 0 0;
    font-size: 13px;
}

.senha-match-text:empty {
    display: none;
    margin: 0;
}

.senha-match-text.ok {
    color: #065F46;
}

.senha-match-text.erro {
    color: #B91C1C;
}

#redefinirCard.senha-level-weak .senha-strength-label {
    color: #B91C1C;
}

#redefinirCard.senha-level-medium .senha-strength-label {
    color: #A16207;
}

#redefinirCard.senha-level-strong .senha-strength-label {
    color: #065F46;
}

.btn-primary:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

/* Painel de sucesso — recuperação de palavra-passe */
.auth-success-panel .welcome-title {
    margin-bottom: 8px;
}

.auth-success-lead {
    margin: 0 0 8px;
    font-size: 16px;
    font-weight: 500;
    color: #4B5563;
    text-align: center;
    line-height: 1.45;
}

.auth-success-email-box {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 50px;
    padding: 12px 15px;
    margin-bottom: 24px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background-color: #FAFAFA;
}

.auth-success-email-icon {
    flex-shrink: 0;
}

.auth-success-email {
    flex: 1;
    min-width: 0;
    font-size: 14px;
    font-weight: 600;
    color: #111827;
    word-break: break-word;
    line-height: 1.35;
}

.auth-success-tips {
    margin: 0;
    padding: 12px 14px 12px 32px;
    list-style: disc;
    background: #FFFBEB;
    border: 1px solid #FDE68A;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.5;
    color: #92400E;
}

.auth-success-tips li + li {
    margin-top: 6px;
}

.auth-success-actions {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid #F3F4F6;
}

.auth-resend-hint {
    margin: 0 0 12px;
    text-align: center;
    font-size: 13px;
    color: #6B7280;
}

.auth-resend-feedback {
    margin: 0 0 16px;
    text-align: center;
    font-size: 14px;
    line-height: 1.45;
    font-weight: 600;
    color: #065F46;
    transition: opacity 0.3s ease;
}

.auth-resend-feedback.is-hiding {
    opacity: 0;
}

.auth-resend-feedback.is-error {
    color: #B91C1C;
}

.auth-resend-btn {
    margin-top: 0;
}

.auth-resend-btn:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

.auth-success-back {
    margin-top: 20px;
    margin-bottom: 0;
}
