.password-visibility {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
}
.password-visibility > input {
    width: 100%;
    padding-inline-end: 52px !important;
}
.password-visibility > input::-ms-reveal,
.password-visibility > input::-ms-clear {
    display: none;
}
.password-visibility .password-visibility-button {
    position: absolute;
    inset-inline-end: 3px;
    top: 50%;
    transform: translateY(-50%);
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    max-height: calc(100% - 4px);
    min-height: 0;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #47554e;
    cursor: pointer;
    box-shadow: none;
}
.password-visibility .password-visibility-button:hover {
    background: #eaf0ed;
}
.password-visibility .password-visibility-button:focus-visible {
    outline: 2px solid #176752;
    outline-offset: -2px;
}
.password-visibility-button .password-eye-slash {
    display: none;
}
.password-visibility-button[aria-pressed="true"] .password-eye-slash {
    display: block;
}
