.bootstrap4-multi-input {
  margin: auto;
}

.form-group {
  display: flex;
  input {
    line-height: normal;
  }
}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance:textfield;
}
.help-block {
  font-size: 80%;
  color: $gray;
}

form label.col-form-label {
  padding-top: 4px;
  text-align: right;
  font-weight: 500;

  .optional {
    font-weight: 300;
    color: $gray;
  }
}
form .form-control:disabled, .form-control[readonly] {
  background-color: $gray-lightest !important;
}
.labelless-password-input-form {
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;

  .form-group {
    flex-direction: column;
  }

  input.password_strength, input.password_confirmation {
    height: 100%;
    display: block;
    width: 100%;
    flex-grow: 1;
  }
}
.password-input-form, .labelless-password-input-form {
  p.text-muted {
    font-size: 80%;
    padding-top: 2px;
    padding: 0;
    color: #636c72;
  }

  .password-progress {
    margin-top: 0 !important;

    .password-progress-bar {
      height: 4px;
      margin-bottom: 0 !important;
    }
  }
}
.password_strength_info {
  margin-bottom: 0;
}
.password_strength_info.hidden {
  display: none;
  display: block;
  visibility: hidden;
}
.progress-bar-warning {
  background-color: $brand-warning;
}
.progress-bar-danger {
  background-color: $brand-danger;
}
.header {
  background-color: $brand-primary;
}
table .radio, table .checkbox {
  margin-top: -8px;
}
.radio, .checkbox {
  position: relative;
  padding: 4px 0 4px 36px;

  label {
    cursor: pointer;
    &:before,
    &:after {
      content: '';
      position: absolute;
    }
    &:before {
      left: 0;
      width: 24px;
      height: 24px;
      background: $offwhite;
      box-shadow: 0 0 1px $gray-500;
    }
    &:after {
      left: 4px;
      width: 16px;
      height: 16px;
      margin: 4px 0px 0;
      opacity: 0;
      background: $brand-success;
    }
  }
  input {
    position: absolute;
    top: 0;
    left: -9999px;
    visibility: hidden;

    &:checked + label {
      &:before {
      }
      &:after {
        opacity: 1;
      }
    }
  }
}
.radio {
  input {
    + label:before, + label:after {
        border-radius: 50% !important;
    }
  }
}
