.password-visibility { position:relative; }
.auth-password-field { display:grid; gap:var(--space-2); }
.auth-password-field > span:empty { display:none; }
.password-visibility input { padding-right:calc(var(--control-height) + var(--space-3)); }
.password-visibility__toggle,
.auth-card .password-visibility__toggle {
  position:absolute;
  right:0;
  top:0;
  width:var(--control-height);
  min-height:var(--control-height);
  height:100%;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  border-radius:var(--control-radius);
  background:transparent;
  color:var(--navy-2);
  cursor:pointer;
}
.password-visibility__toggle:hover,
.auth-card .password-visibility__toggle:hover { background:var(--surface-subtle); }
.password-visibility__toggle:focus-visible { outline:2px solid var(--focus-color); outline-offset:2px; }
.password-visibility__toggle svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.6; }
.password-visibility__slash { display:none; }
.password-visibility__toggle[aria-pressed="true"] .password-visibility__slash { display:block; }
.password-visibility__toggle[hidden] { display:none; }
