.#{$ns}TextareaControl {
  position: relative;

  >textarea {
    @include input-border();
    border: 1px solid var(--Form-input-borderColor);
    border-radius: 4px;
    background: var(--Form-input-bg);
    padding: var(--Form-input-paddingY) var(--Form-input-paddingX);
    font-size: var(--Form-input-fontSize);
    display: block;
    width: 100%;
    line-height: var(--Form-input-lineHeight);
    outline: none;
    resize: none;

    @media screen and (min-width:1280px) and (max-width:1440px) {
      font-size: 0.75rem;
      border-radius: 0px;
    }

    @media screen and (min-width:1441px) and (max-width:1680px) {
      border-radius: 0px;
    }

    @include input-placeholder();

    // yunshe4.0
    &:hover {
      border-color: var(--Form-input-onHover-borderColor);
    }
  }

  &>textarea:focus,
  &.is-focused>textarea {
    border-color: var(--Form-input-onFocused-borderColor);
    box-shadow: var(--Form-input-boxShadow);

    // yunshe4.0
    &:hover {
      border-color: var(--Form-input-onFocused-borderColor);
    }
  }

  &.is-disabled>textarea,
  &>textarea[disabled] {
    background: $gray200;
    color: var(--text--muted-color);
  }

  &.is-error {
    >textarea {
      border-color: var(--Form-input-onError-borderColor);
    }
  }

  &-counter {
    position: absolute;
    right: var(--Form-input-paddingX);
    bottom: var(--Form-input-paddingY);
    font-size: var(--fontSizeSm);
    padding: 0 5px;
    border-radius: 3px;
    color: #fff;
    background: rgba(0, 0, 0, 0.6);

    &.is-empty {
      color: #666;
      background: rgba(0, 0, 0, 0.4);
    }
  }

  .has-error--maxLength &-counter {
    background: var(--danger);
  }

  &.is-focused.#{$ns}TextareaControl-borderNone,
  &-borderNone {
    >textarea {
      border-color: transparent;

      &:focus,
      &:hover {
        border-color: transparent;
        box-shadow: none;
      }
    }
  }
}


/** 
  * Aug -- 组件大小
 */
@mixin formatSize($fontSize, $lineHeight, $paddingY) {
  &>textarea {
    padding-top: $paddingY;
    padding-bottom: $paddingY;
    line-height: $lineHeight;
    font-size: $fontSize;
  }
}

.#{$ns}TextareaControl {
  &.format-xs {
    @include formatSize(var(--fontSizeSm), var(--Form-input-lineHeight-sm), var(--Form-input-paddingY-sm))
  }

  &.format-sm {
    @include formatSize(var(--fontSizeSm), var(--Form-input-lineHeight-xs), var(--Form-input-paddingY-xs))
  }
}
