.input-field {
  @include transition(border 150ms ease-in-out, box-shadow 150ms ease-in-out);
  line-height: 34px;
  border-radius: 2px;
  background-color: $white;
  border: solid 1px $accent-medium;
  font-size: 16px;
  padding: $pad-xsmall 12px;
  color: $text-dark;
  font-family: 'Oxygen', sans-serif;
  box-sizing: border-box;
  height: 40px;

  @include placeholder {
    color: $accent-text;
  }

  &:focus {
    outline: none;
    box-shadow: inset 0 0 8px 0 rgba($black, 0.1);
    border-color: $link-light;
    border-bottom-color: $brand;
  }

  &--disabled {
    background-color: #f9f9f9;
  }

  &--error {
    @include transition(background 150ms ease-in-out, color 150ms ease-in-out);
    border-color: $alert;
    background-color: $alert-light;
    color: $white;
    box-shadow: inset 0 -4px 4px 0 rgba($black, 0.1);

    &:focus {
      box-shadow: inset 0 0 8px 0 rgba($black, 0.1);
      border-bottom-color: $alert;
      background-color: $white;
      color: $text-dark;
    }
  }

  &--password {
    letter-spacing: 7px;
  }

  &__textarea {
    min-height: 100px;
    max-width: 100%;
    display: block;
  }

  &__label {
    display: block;
    font-size: $base;
    font-weight: $light;
    color: $text-dark;
    margin-bottom: $pad-xsmall;

    &--error {
      color: $alert;
    }
  }

  &__wrapper {
    margin-bottom: $pad-base;
  }

  &__hint {
    font-size: 14px;
    font-weight: $normal;
    line-height: 1.57;
    letter-spacing: 1px;
    color: $accent-text;

    code {
      color: $brand-light;
      background-color: $accent-light;
      padding: 2px;
      font-family: 'SourceCodePro', $monospace;
    }
  }
}
