@include b(input) {
  position: relative;
  input {
    height: 30px;
  }
  textarea {
    resize: none;
    display: block;
  }
  @include e(text) {
    font-size: $input-size-base;
    color: $text-color;
    line-height: $line-height;
    padding: $padding;
    background-color: $input-background-color;
    border-color: $input-border-color;
    width: 100%;
    border-style: solid;
    border-width: 1px;
    &:hover {
      border-color: mix(#000, $main-color, 30%);
    }

    &:focus {
      border-color: $main-color;
    }

    @include when(disabled) {
      border-color: $input-border-color;
      cursor: not-allowed;
      background-color: transparentize($input-background-color, .7);
    }

    @include when(resize) {
      resize: both;
      max-width: 100%;
    }
    @include when(error) {
      border-color: $warning-color;
    }
  }
  @include e(counter) {
    float: right;
    line-height: 1;
    font-size: 12px;
    padding-top: 8px;
    @include when(over) {
      color: $warning-color;
    }
  }
  @include e((clean, suffix)) {
    font-size: $input-icon-size;
    color: $grey-color;
    position: absolute;
    height: 100%;
    right: 12px;
    top: 0;
    text-align: center;
    line-height: 30px;
    width: 16px;
  }

  @include e(clean) {
    cursor: pointer;
  }
  @at-root .fa-input-icon {
    &:hover {
      color: $black-light-color;
    }
  }
}

@include b(input-tags) {
  display: flex;
  flex-wrap: wrap;
  border-width: 1px;
  border-style: solid;
  border-color: $input-border-color;
  background-color: $input-background-color;
  align-items: baseline;
  align-content: flex-start;
  &:hover {
    border-color: mix(#000, $main-color, 30%);
  }
  & .mc-tag {
    margin: 2px;
  }
  & .mc-input__text {
    flex: 1;
    min-width: 80px;
    border: none;
  }
  @include when(focusing) {
    border-color: $main-color;
  }
}

@include b(input-group) {
  line-height: normal;
  display: inline-table;
  width: 100%;
  border-collapse: separate;

  @include e(prepend) {
    display: table-cell;

    @include e((append, prepend)) {
      background-color: $white-highlight-color;
      //color: $--color-info;
      vertical-align: middle;
      display: table-cell;
      position: relative;
      border-width: 1px;
      border-style: solid;
      border-color: $input-border-color;
      border-radius: 0;
      padding: 0 20px;
      width: 1px;
      white-space: nowrap;

      &:focus {
        outline: none;
      }

      .mc-container {
        padding: 0;
        min-width: 50px;
        margin-left: -1px;
        margin-right: -1px;
      }
      .mc-select,
      .mc-btn {
        display: inline-block;
        margin: -10px -20px;
      }

      button.mc-btn,
      div.mc-select .mc-input__inner,
      div.mc-select:hover .mc-input__inner {
        border-color: transparent;
        background-color: transparent;
        color: inherit;
        border-top: 0;
        border-bottom: 0;
      }

      .mc-btn,
      .mc-input {
        font-size: inherit;
      }
    }

    @include e(prepend) {
      border-right: 0;
    }
    @include e(append) {
      border-left: 0;
    }
  }
}