.password-visibility-field { position: relative; display: block; width: 100%; }
.password-visibility-field input { box-sizing: border-box; width: 100%; padding-right: 54px !important; }
.password-visibility-field .password-visibility-toggle {
  position: absolute; right: 5px; top: 50%; transform: translateY(-50%);
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; min-width: 44px; margin: 0; padding: 10px;
  border: 0; border-radius: 10px; background: transparent; color: #516477;
  box-shadow: none; cursor: pointer;
}
.password-visibility-toggle svg { display: block; width: 24px; height: 24px; pointer-events: none; }
.password-visibility-toggle:focus-visible { outline: 2px solid #1687d9; outline-offset: -2px; }
.password-visibility-toggle:hover { background: rgba(120,140,160,.15); }
[data-theme="dark"] .password-visibility-toggle { color: #c5d5e7; }
