.password-visibility { position: relative; display: block; min-inline-size: 0; }
.password-visibility > input { width: 100%; box-sizing: border-box; padding-inline-end: 3.5rem !important; font-size: 16px; }
.password-visibility > input::-ms-reveal { display: none; }
.password-visibility > .password-visibility-button {
  position: absolute; inset-inline-end: .3rem; inset-block-start: 50%; transform: translateY(-50%);
  display: grid; place-items: center; padding: 0; margin: 0; min-width: 44px; min-height: 44px;
  color: #43533f; background: transparent; border: 0; border-radius: .5rem; cursor: pointer;
}
.password-visibility-button:focus-visible { outline: 2px solid #627b58; outline-offset: -2px; }
.password-visibility-button[aria-pressed="true"] .password-slash { display: none; }
