input[type="email"],
input[type="number"],
input[type="date"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
  padding: 0.4rem 0.6rem;
  background-color: var(--form-background-color);
  border: var(--form-border);
  border-radius: var(--border-radius);
  box-shadow: none;
  -webkit-transition: border 0.2s;
  -moz-transition: border 0.2s;
  -ms-transition: border 0.2s;
  -o-transition: border 0.2s;
  transition: border 0.2s;
}

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
select:not([size]),
textarea:not([rows]) {
  height: 2.5rem;
}


/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="date"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="button"],
input[type="submit"],
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

textarea {
  min-height: 4rem;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
  resize: vertical;
}

input[type="email"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: var(--form-border-enter);
  outline: 0;
}

.has-error,
.has-error:focus {
  border: var(--form-border-enter-error) !important;
  outline: 0;
}

.has-success,
.has-success:focus {
  border: var(--form-border-enter-success) !important;
  outline: 0;
}

label,
legend {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}

fieldset {
  padding: 0;
  border-width: 0;
}

input[type="checkbox"],
input[type="radio"] {
  display: inline;
}

label > .label-body {
  display: inline-block;
  margin-left: 0.5rem;
  font-weight: normal;
}
