.input-icon-field {
  margin-top: 22px;
  position: relative;
  width: 100%;

  &__icon {
    position: absolute;
    right: 6px;
    top: 28px;
    font-size: 18px;
    color: $accent-text;

    &--active {
      color: $brand;
    }

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

  &__input {
    border: 2px;
    border-bottom: 2px solid $brand;
    padding: 0 30px 8px 0;
    font-size: 20px;
    text-indent: 1px;
    position: relative;
    width: 100%;
    box-sizing: border-box;
    color: $text-dark;
    font-weight: $light;

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

    &:focus {
      outline: none;
    }

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

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

  &__label {
    color: $brand;
    font-size: $small;
    text-transform: lowercase;

    &--hidden {
      visibility: hidden;
    }
  }

  &__errors {
    color: $alert;
    font-size: $small;
    text-transform: lowercase;
  }

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

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