.mf-password-field {
    position: relative;
    display: block;
    max-width: 100%;
    box-sizing: border-box;
}

.mf-password-field--input-icon {
    display: block;
}

td .mf-password-field,
.form-group .mf-password-field,
.text-field-box .mf-password-field {
    width: 100%;
}

.mf-password-field > input[type="password"],
.mf-password-field > input[type="text"] {
    box-sizing: border-box;
    padding-right: 2.75rem !important;
    width: 100%;
}

.mf-password-field--input-icon > input[type="password"],
.mf-password-field--input-icon > input[type="text"] {
    width: 100%;
}

.mf-password-toggle {
    position: absolute;
    top: 50%;
    right: 0.55rem;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #64748b;
    cursor: pointer;
    z-index: 2;
    line-height: 1;
}

.mf-password-toggle:hover,
.mf-password-toggle:focus {
    color: #334155;
    background: rgba(15, 23, 42, 0.06);
    outline: none;
}

.mf-password-toggle:focus-visible {
    box-shadow: 0 0 0 2px rgba(218, 111, 33, 0.35);
}

.mf-password-toggle svg {
    display: block;
    width: 1.1rem;
    height: 1.1rem;
    pointer-events: none;
}

.mf-password-toggle-icon--hide {
    display: none;
}

.mf-password-toggle.is-visible .mf-password-toggle-icon--show {
    display: none;
}

.mf-password-toggle.is-visible .mf-password-toggle-icon--hide {
    display: block;
}

.mf-password-field--input-icon .mf-password-toggle {
    right: 0.65rem;
}
