/* password_manager plugin styles */

.forgot-password-link-container a {
    color: var(--primary-color, var(--color-main, #37beff));
    transition: color 0.15s;
}

.forgot-password-link-container a:hover {
    color: var(--primary-hover, var(--color-main-hover, #0088cc));
}

.password-requirements-box {
    margin-top: 1rem;
    padding: 1rem;
    background: #FBFBFA;
    border: 1px solid #E6E7E3;
    border-radius: 8px;
    pointer-events: none !important;
}

.password-requirements-box * {
    pointer-events: none !important;
}

.password-requirements-box h4 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-size: 0.85rem;
    font-weight: 700;
    color: #5C6050;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.password-requirements-box ul {
    margin: 0;
    padding-left: 1.25rem;
    font-size: 0.85rem;
    color: #8A8D80;
}

.password-requirements-box li {
    margin-bottom: 0.25rem;
    transition: color 0.15s;
}

.password-requirements-box li.met {
    color: #10B981;
    text-decoration: line-through;
}

.password-requirements-box li::marker {
    font-size: 0.75rem;
}

#confirm-password-match {
    font-size: 0.8rem;
    margin-top: 0.25rem;
}

/* Universal text and button cursor hit-test fix for password_manager */
.password-manager-card label,
.password-manager-card label *,
.password-manager-card p,
.password-manager-card p *,
.password-manager-card h2,
.password-manager-card h2 * {
    pointer-events: none !important;
    user-select: none !important;
}

.password-manager-card button *,
.password-manager-card a *,
.password-manager-card .btn * {
    pointer-events: none !important;
}

.password-manager-card a,
.password-manager-card button,
.password-manager-card .btn {
    cursor: pointer !important;
    pointer-events: auto !important;
}

.password-manager-card input,
.password-manager-card .form-control {
    cursor: text !important;
    pointer-events: auto !important;
    user-select: text !important;
    -webkit-user-select: text !important;
}
