
.invalid {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ff0000;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.invalid::-ms-expand {
  background-color: transparent;
  border: 0;
}

.invalid:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 0, 0, 0.25);
}

.invalid::-webkit-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.invalid::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}

.invalid:-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.invalid::-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.invalid::placeholder {
  color: #6c757d;
  opacity: 1;
}

.invalid:disabled, .invalid[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

select.invalid:not([size]):not([multiple]) {
  height: calc(2.25rem + 2px);
}

select.invalid:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.invalid-file,
.invalid-range {
  display: block;
  width: 100%;
}

