.password-control { position: relative; display: block; width: 100%; min-width: 0; }
.password-control > input { width: 100%; padding-right: 54px; }
.password-control > .password-visibility-toggle {
  position: absolute; right: 3px; top: 50%; transform: translateY(-50%);
  display: grid; place-items: center; width: 44px; height: 44px;
  padding: 0; border: 0; border-radius: 6px;
  background: transparent; color: var(--muted); cursor: pointer;
}
.password-control > .password-visibility-toggle:hover,
.password-control > .password-visibility-toggle[aria-pressed="true"] { color: var(--gold); }
.password-control > .password-visibility-toggle:focus-visible { outline: 2px solid var(--gold); outline-offset: -3px; }
.password-control > .password-visibility-toggle:disabled { opacity: .5; cursor: default; }
.password-visibility-toggle svg { width: 21px; height: 21px; pointer-events: none; }
