.password-field {
  display:flex;
  align-items:stretch;
  gap:8px;
  min-width:0;
  width:100%;
}
.password-field > input {
  min-width:0;
  width:100%;
  flex:1 1 0;
}
.password-field > .password-visibility {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex:0 0 auto;
  margin:0;
  min-width:44px;
  min-height:48px;
  padding:8px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--paper);
  color:var(--ink);
  font:inherit;
  cursor:pointer;
}
.password-field > .password-visibility[aria-pressed="true"] {
  background:var(--tint);
  border-color:var(--action);
}
.password-field > .password-visibility:disabled {
  opacity:.6;
  cursor:default;
}
.password-field > .password-visibility:focus-visible {
  outline:3px solid var(--action);
  outline-offset:3px;
}
