.fv-sr-only {
  display: none;
}

.fv-plugins-framework input::-ms-clear,
.fv-plugins-framework textarea::-ms-clear {
  display: none;
  height: 0;
  width: 0;
}

.fv-plugins-message-container--enabled {
  display: block;
}

.fv-plugins-message-container--disabled {
  display: none;
}

.fv-plugins-bootstrap5 {
  /* Support floating label */
  /* For horizontal form */
  /* Stacked form */
  /* Inline form */
}

.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-invalid .fv-plugins-icon {
  color: #dc3545;
}

.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-valid .fv-plugins-icon {
  color: #198754;
}

.fv-plugins-bootstrap5 .fv-plugins-icon {
  align-items: center;
  display: flex;
  justify-content: center;
  height: 38px;
  width: 38px;
}

.fv-plugins-bootstrap5 .input-group ~ .fv-plugins-icon {
  z-index: 3;
}

.fv-plugins-bootstrap5 .fv-plugins-icon-input-group {
  right: -38px;
}

.fv-plugins-bootstrap5 .form-floating .fv-plugins-icon {
  height: 58px;
}

.fv-plugins-bootstrap5 .row .fv-plugins-icon {
  right: 12px;
}

.fv-plugins-bootstrap5 .row .fv-plugins-icon-check {
  top: -7px; /* labelHeight/2 - iconHeight/2 */
}

.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label ~ .fv-plugins-icon {
  top: 32px;
}

.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label ~ .fv-plugins-icon-check {
  top: 25px;
}

.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label.sr-only ~ .fv-plugins-icon-check {
  top: -7px;
}

.fv-plugins-bootstrap5.fv-plugins-bootstrap5-form-inline .fv-plugins-icon {
  right: calc(var(--bs-gutter-x, 1.5rem) / 2);
}

.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-valid,
.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-invalid,
.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-valid,
.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-invalid {
  background-image: none;
}
