@include b(input) {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 44px;
  padding: 10px 15px;
  box-sizing: border-box;
  line-height: 44px;
  background: $white;
  color: $primary-text-color;
  font-size: $size-17;
  white-space: nowrap;

  /** 相连输入框分割线 **/
  & + & {
    @include border($top: 0);
  }
  &:first-of-type {
    @include border($top: 0, $left: 0);
  }
  &:last-of-type {
    @include border($position: after, $bottom: 0, $left: 0);
  }

  /** label **/
  &-label {
    overflow: hidden;
    display: inline-block;
    flex: 1;
    height: 32px;
    margin-right: 5px;
    box-sizing: border-box;
    line-height: 32px;
    background-color: #fff;
    text-overflow: clip;
  }

  @each $i in 4, 5, 6 {
    &-label-#{$i} {
      width: $size-17 * $i;
      min-width: $size-17 * $i;
    }
  }

  /** 输入框 **/
  &-inner {
    width: inherit;
    height: 24px;
    border: none;
    box-sizing: border-box;
    line-height: 24px;
    color: $primary-text-color;
    caret-color: $primary-color;
    &:focus {
      border-color: darken(#dcdfe6,5%);
    }
    &::first-line {
      //color: $primary-text-color;
    }
    &:disabled {
      background-color: transparent;
    }
    &::placeholder {
      color: $placeholder-text-color;
    }
  }

  /** 数字键盘-模拟输入框 **/
  &-number-input {
    position: relative;
    width: inherit;
    height: 24px;
    line-height: 24px;
    color: $primary-text-color;
    &:focus,
    &:active {
      border: none;
      box-shadow: none;
      outline: none;
    }
    &.empty {
      color: $placeholder-text-color;
      &.focus::after {
        width: 0;
      }
      &.focus::before {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        width: 1px;
        animation: blink 1s infinite steps(1,start);
      }
    }
    &.focus::after {
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      width: 1px;
      animation: blink 1s infinite steps(1,start);
    }

    @keyframes blink {
      0%,
      100% {
        background-color: $primary-color;
      }
      50% {
        background-color: transparent;
      }
    }
  }

  /** 文本框 **/
  &-textarea {
    overflow: hidden;
    width: 100%;
    height: auto;
    padding: 0;
    box-sizing: border-box;
    background-color: $white;
    .#{$namespace}-input-inner {
      width: 100%;
      height: auto;
      min-height: 44px;
      padding: 10px 14px;
      border: none;
      box-sizing: border-box;
      line-height: 20px;
    }
  }

  /** align **/
  @each $i in left, right {
    &-align-#{$i} { text-align: $i; }
  }

  /** 后置图标 **/
  &-suffix {
    height: 32px;
    padding-left: 4px;
    line-height: 32px;
    text-align: right;
    font-size: $size-18;
    .iconfont {
      color: $placeholder-text-color;
      cursor: pointer;
    }
  }

  /** 前置图标 **/
  &-prefix {
    padding-right: 4px;
    font-size: $size-18;
    .iconfont {
      color: $primary-text-color;
    }
  }
  &-clear-icon {
    padding-left: 4px;
    color: $placeholder-text-color;
    font-size: $size-18;
  }

  /** 错误图标 **/
  &-error {
    margin-left: 5px;
    color: $primary-color;
    font-size: $size-18;
  }

  /** 禁用 **/
  &-disabled {
    cursor: not-allowed;
  }
  &-disabled &-label {
    color: $disabled-background-color;
  }
  &-disabled &-inner::placeholder {
    color: $disabled-background-color;
  }
  input::-webkit-outer-spin-button,
  input::-webkit-inner-spin-button {
    -webkit-appearance: none;
  }

  /** 只读 **/
  &-readonly &-inner::placeholder {
    color: $disabled-background-color;
  }
}
