@import "mixins/mixins";
@import "common/var";
@import "common/transition";

@include b(collapse) {
  border-top: $--border-base;
  border-bottom: $--border-base;
  @include when(trigger){
    .el-collapse-item__header{
      cursor: initial;
    }
    .el-collapse-item__icon{
      cursor: pointer;
    }
  }
  @include when(card){
    border: none;
    .el-collapse-item + .el-collapse-item{
      margin-top: 10px;
    }
    @include b(collapse-item){
      padding: 0 10px;
      border: $--border-base;
      box-shadow: $--box-shadow-dark;
      border-radius: $--border-radius-large;
      @include when(active){
        @include e(header) {
          border-bottom: $--border-base;
        }
      }
    }
    @include e(header) {
      border-bottom: none;
    }
    @include e(wrap) {
      border-bottom: none;
    }
    @include e(content) {
      padding: 10px 0;
    }
  }
}
@include b(collapse-item) {
  @include when(disabled) {
    .el-collapse-item__header {
      color: $--color-text-disabled;
      cursor: not-allowed;
      &:hover{
        .el-collapse-item__icon{
          color: $--color-text-disabled;
        }
      }
    }
    .el-collapse-item__icon{
      color: $--color-text-primary;
      cursor: not-allowed;
      &:hover{
        color: $--color-text-primary;
      }
    }
  }
  @include e(header) {
    position: relative;
    display: flex;
    align-items: center;
    min-height: $--collapse-header-height;
    line-height: $--collapse-header-height;
    background-color: $--collapse-header-background-color;
    color: $--collapse-header-font-color;
    cursor: pointer;
    border-bottom: $--border-base;
    font-size: $--collapse-header-font-size;
    font-weight: $--font-weight-strengthen;
    transition: border-bottom-color .3s;
    outline: none;
    @include e(title) {
      font-style: normal;
      display: inline-block;
      width: calc(100% - 80px);
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    @include e(icon) {
      position: absolute;
      top: 50%;
      right: 8px;
      line-height: normal;
      margin-top: -8px;
      transition: color .3s;
      font-style: normal;
      font-weight: $--font-weight-primary;
    }
    @include e(arrow) {
      margin-left: 5px;
      transition: transform .3s;
      font-weight: $--font-weight-primary;
      font-size: 10px;
      position: relative;
      top: -2px;
      @include when(active) {
        transform: rotate(90deg);
      }
    }
    &.focusing:focus:not(:hover){
      color: $--color-primary;
    }
    &:hover{
      .el-collapse-item__icon{
        color: $--color-primary;
      }
    }
    @include when(active) {
      border-bottom-color: transparent;
    }
  }

  @include e(wrap) {
    will-change: height;
    background-color: $--collapse-content-background-color;
    overflow: hidden;
    box-sizing: border-box;
    border-bottom: $--border-base;
  }

  @include e(content) {
    padding-bottom: 25px;
    font-size: $--collapse-content-font-size;
    color: $--collapse-content-font-color;
    line-height: 22px;
  }

  &:last-child {
    margin-bottom: -1px;
  }
}
