.password-input-group .form-control {
    border-right: 0 !important;
}

.password-input-group .form-control.is-valid,
.password-input-group .form-control.is-invalid {
    background-image: none;
    padding-right: .75rem;
}

.password-feedback-icon {
    min-width: 48px;
    justify-content: center;
    background: #fff;
    border-left: 0 !important;
    border-right: 0 !important;
}

.password-feedback-icon i {
    font-size: 1.15rem;
}

.password-visibility-toggle {
    min-width: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-left: 0 !important;
}

.password-visibility-toggle i {
    pointer-events: none;
}

.password-strength-status {
    display: inline-block;
    margin-top: .35rem;
}

.password-requirements {
    display: grid;
    gap: .35rem;
    margin: .75rem 0 0;
}

.password-requirement {
    display: flex;
    align-items: center;
    gap: .45rem;
    font-size: .92rem;
    line-height: 1.25;
}

.password-requirement.is-ok {
    color: #2ecc71;
}

.password-requirement.is-missing {
    color: #ff6b6b;
}

.password-requirement i {
    flex: 0 0 auto;
}
