.otp-field {
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (min-width: 576px) {
  .otp-field {
    max-width: 336px;
  }
}

.otp-field input {
  width: 15%;
  height: 75px;
  text-align: center;
  font-size: 2em;
  margin: 20px 5px 10px;
  border: none;
  border-bottom: 2px solid #b3b0b2;
  color: #222222;
  outline: none;
  transition: all 0.1s;
  padding-top: 25px;
  font-family: "Roboto", sans-serif;
}

.otp-field input:focus {
  border: none;
  border-bottom: 2px solid #222222;
}

.text-bold {
  font-family: "Roboto Medium", sans-serif;
}

#kc-form-buttons.card__button-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  margin-top: 1rem;
}

.otp-submit {
  width: 100%;
  max-width: 336px;
  min-height: 39px;
}

.btn-primary-disabled {
  background-color: #e0e0e0;
  color: #9e9e9e;
  border: none;
  cursor: not-allowed;
}

.btn-primary-hover:hover {
  text-decoration: none;
  background-color: #da262c;
}

.otp-resend-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 336px;
  min-height: 39px;
  padding: 0.5em;
  box-sizing: border-box;
  background: transparent;
  border: 1px solid #ef3829;
  border-radius: 6px;
  color: #ef3829;
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  transition: color 0.25s, border-color 0.25s;
}

.otp-resend-btn:hover {
  text-decoration: none;
  color: #da262c;
  border-color: #da262c;
}

#reset-login.action-link {
  transition: color 0.25s;
}

#reset-login.action-link:hover {
  text-decoration: none;
  color: #da262c;
}
