.hz-password-control {
  display: block;
  position: relative;
  width: 100%;
  min-width: 0;
}
.hz-password-control > input {
  box-sizing: border-box;
  width: 100%;
}
.hz-password-toggle {
  position: absolute;
  inset-inline-end: 6px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 64px;
  min-height: 44px;
  padding: 4px 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--color-primary, #103f65);
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  touch-action: manipulation;
}
.hz-password-toggle:hover:not(:disabled) { background: var(--color-primary-soft, #edf4f8); }
.hz-password-toggle:focus-visible { outline: 2px solid var(--color-primary, #103f65); outline-offset: -2px; }
.hz-password-toggle:disabled { opacity: .5; cursor: default; }
