
/* Password field: the shared .field with a show / hide button on its right edge */

.cc_JsHSjQyQmG_FzGTm0KoQH .password-input, .cc_JsHSjQyQmG_TxgLNBoUYG .password-input, .cc_JsHSjQyQmG_register .password-input {
  position: relative;
  display: block;
}

/* Room for the button so long passwords do not run under it */
.cc_JsHSjQyQmG_FzGTm0KoQH .password-input__field, .cc_JsHSjQyQmG_TxgLNBoUYG .password-input__field, .cc_JsHSjQyQmG_register .password-input__field {
  padding-right: calc(var(--tap-size) + var(--space-lg));
}

.cc_JsHSjQyQmG_FzGTm0KoQH .password-input__toggle, .cc_JsHSjQyQmG_TxgLNBoUYG .password-input__toggle, .cc_JsHSjQyQmG_register .password-input__toggle {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  min-width: var(--tap-size);
  padding: 0 var(--space-sm);
  border: none;
  background: none;
  font-family: var(--font-body);
  font-size: var(--text-label);
  font-weight: var(--weight-medium);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
  color: var(--color-text-secondary);
  cursor: pointer;
  transition: color var(--duration-fast) var(--ease);
}

.cc_JsHSjQyQmG_FzGTm0KoQH .password-input__toggle:hover:not(:disabled), .cc_JsHSjQyQmG_TxgLNBoUYG .password-input__toggle:hover:not(:disabled), .cc_JsHSjQyQmG_register .password-input__toggle:hover:not(:disabled) {
  color: var(--color-text-primary);
}

.cc_JsHSjQyQmG_FzGTm0KoQH .password-input__toggle:focus-visible, .cc_JsHSjQyQmG_TxgLNBoUYG .password-input__toggle:focus-visible, .cc_JsHSjQyQmG_register .password-input__toggle:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: -4px;
}

.cc_JsHSjQyQmG_FzGTm0KoQH .password-input__toggle:disabled, .cc_JsHSjQyQmG_TxgLNBoUYG .password-input__toggle:disabled, .cc_JsHSjQyQmG_register .password-input__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

@media (prefers-reduced-motion: reduce) {
  .cc_JsHSjQyQmG_FzGTm0KoQH .password-input__toggle, .cc_JsHSjQyQmG_TxgLNBoUYG .password-input__toggle, .cc_JsHSjQyQmG_register .password-input__toggle { transition: none; }
}
