.password-control{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

.password-control input{
  box-sizing:border-box!important;
  width:100%!important;
  padding-right:7.4rem!important;
}

.password-toggle{
  position:absolute!important;
  right:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:5.35rem!important;
  max-width:calc(100% - 28px)!important;
  height:2rem!important;
  min-height:2rem!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:#eef7f2!important;
  color:#007c4a!important;
  font:800 .68rem/1 'DM Sans',Arial,sans-serif!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  padding:0 .78rem!important;
  cursor:pointer!important;
  box-shadow:0 0 0 1px rgba(0,175,105,.08)!important;
  white-space:nowrap!important;
  z-index:2!important;
}

.password-toggle:hover,
.password-toggle:focus-visible{
  background:#00af69!important;
  color:#062e1d!important;
  text-decoration:none!important;
}

.password-toggle:focus-visible{
  outline:2px solid #00af69!important;
  outline-offset:2px!important;
}

.field-feedback{
  display:block;
  min-height:1.15rem;
  margin-top:.35rem;
  color:#b3261e;
  font:600 .78rem/1.35 Arial,sans-serif;
}

.form input.is-invalid,
.form textarea.is-invalid,
.form select.is-invalid,
.auth input.is-invalid{
  border-color:#b3261e!important;
  box-shadow:0 0 0 2px rgba(179,38,30,.12)!important;
}

.form button[aria-busy="true"],
.auth button[aria-busy="true"]{
  cursor:wait;
  opacity:.72;
}

.form input:focus-visible,
.form textarea:focus-visible,
.form select:focus-visible,
.auth input:focus-visible{
  outline:3px solid rgba(0,175,105,.28);
  outline-offset:1px;
}

.auth .password-control input,
.signup-auth .password-control input{
  padding-right:7.25rem!important;
}

.auth .password-toggle,
.signup-auth .password-toggle{
  right:16px!important;
  min-width:5.9rem!important;
  height:2.75rem!important;
  min-height:2.75rem!important;
  padding-inline:.78rem!important;
}

@media(max-width:480px){
  .auth .password-control input,
  .signup-auth .password-control input{
    padding-right:6.65rem!important;
  }

  .auth .password-toggle,
  .signup-auth .password-toggle{
    right:12px!important;
    min-width:5.25rem!important;
    height:2.75rem!important;
    min-height:2.75rem!important;
    font-size:.64rem!important;
    letter-spacing:.055em!important;
  }
}
