/**
 * 비밀번호 찾기 / 비밀번호 변경 — login-v2 레이아웃 위 카드 전용 보조 스타일
 */
.login-v2-card-kicker {
    margin: 0 0 8px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.login-v2-card-title {
    margin: 0 0 10px;
    font-size: clamp(1.5rem, 2vw, 1.75rem);
    font-weight: 800;
    letter-spacing: var(--letter-tight);
    line-height: 1.3;
    color: var(--text-heading);
}

.login-v2-card-desc {
    margin: 0 0 22px;
    font-size: var(--font-body);
    font-weight: 500;
    line-height: var(--leading-normal);
    color: var(--text-secondary);
    text-align: left;
}

.login-v2-callout {
    margin-bottom: 18px;
    padding: 12px 14px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
    color: #92400e;
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
    border: 1px solid #fde68a;
}

.login-v2-hint {
    margin-top: 8px;
    font-size: 12px;
    font-weight: 500;
    color: #64748b;
    line-height: 1.45;
}

.login-v2-pw-strength {
    margin-top: 8px;
    height: 4px;
    border-radius: 999px;
    background: #f1f5f9;
    overflow: hidden;
}

.login-v2-pw-strength-bar {
    height: 100%;
    width: 0;
    border-radius: 999px;
    transition: width 0.25s ease, background 0.2s ease;
}

.login-v2-pw-strength-bar.strength-weak {
    width: 33%;
    background: #ef4444;
}

.login-v2-pw-strength-bar.strength-medium {
    width: 66%;
    background: #f59e0b;
}

.login-v2-pw-strength-bar.strength-strong {
    width: 100%;
    background: linear-gradient(90deg, var(--primary-purple-deep), var(--primary-purple));
}

.login-v2-req-list {
    margin-top: 10px;
    font-size: 12px;
    font-weight: 500;
    color: #64748b;
}

.login-v2-req {
    margin: 3px 0;
}

.login-v2-req.valid {
    color: #047857;
}

.login-v2-req.invalid {
    color: #b91c1c;
}
