@import "../mixins/mixins";
@import "../mixins/utils";
@import "../config/variables";

@include b(tag) {
  background: rgba($--color-silver, 0.5);
  display: inline-block;
  padding: $--size-base * 2;
  color: $--color-text;
  border-radius: $--border-radius;
  box-sizing: border-box;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  cursor: pointer;
  font-size: 0;
  transition: all .2s ease-in-out;
  @include utils-user-select(none);

  @include e(inner) {
    vertical-align: middle;
    font-size: 11px;
    line-height: 14px;
    width: 100%;
    display: inline-block;
  }

  @include e(close) {
    display: inline-block;
    vertical-align: middle;
    margin-left: $--size-base;
    transition: all .2s ease-in-out;
    &:hover {
      color: $--color-primary;
    }
    &:active {
      color: $--color-focus;
    }
  }

  @include when(closable) {
    padding: $--size-base - 1 $--size-base $--size-base - 1 $--size-base * 2;
    @include e(inner) {
      width: calc(100% - 28px);
    }
  }

  @include when(margin) {
    margin: $--size-base;
  }

  &:hover {
    background: rgba($--color-silver, 0.2);
  }

  &:active {
    background: $--color-silver;
  }

  @include when(mini) {
    padding: 0;
    background: none;
    @include e(inner) {
      font-size: 11px;
      line-height: 24px;
      width: auto;
    }
    @include e(close) {
      margin: 0;
    }
    &:hover {
      @include e(inner) {
        color: rgba($--color-text, 0.5);
      }
    }
    &:active {
      @include e(inner) {
        color: $--color-grey;
      }
    }
    @include when(margin) {
      margin: $--size-base * 2 $--size-base;
    }
  }
}
