@import './token.less';
// @import './mixin.less';

@btn-prefix-cls: ~'@{prefix}-SubTable';

.@{btn-prefix-cls} {
  display: flex;
  flex-direction: column;
  min-width: 0;
  max-width: 100%;

  &-table {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    border-radius: 2px;
    border: 1px solid var(--color-border-2);
    overflow: hidden;
  }

  &-header {
    min-width: 0;
    overflow-x: hidden;
    overflow-y: hidden;
    box-sizing: border-box;
    background-color: var(--color-fill-2);

    .@{btn-prefix-cls}-row {
      height: 28px;
      background-color: var(--color-fill-2);
    }

    .@{btn-prefix-cls}-row-col > span {
      padding-left: 8px;
    }
  }

  &-row {
    width: 100%;
    display: flex;

    &.is-hover {
      &:hover {
        background-color: var(--color-fill-1);
      }
    }

    &:not(:last-child) {
      border-bottom: 1px solid var(--color-border-1);
    }

    &.is-diff-add {
      position: relative;
      background: @diff-bg-add !important;

      td[data-fixed='right'],
      td[data-fixed='left'] {
        background: @diff-bg-add !important;
      }
    }
    &.is-diff-edit {
      position: relative;
      background: @diff-bg-edit !important;

      td[data-fixed='right'],
      td[data-fixed='left'] {
        background: @diff-bg-edit !important;
      }
    }
    &.is-diff-del {
      position: relative;
      background: @diff-bg-del !important;

      td[data-fixed='right'],
      td[data-fixed='left'] {
        background: @diff-bg-del !important;
      }
    }

    &-col {
      position: relative;
      display: flex;
      align-items: center;
      flex-shrink: 0;
      flex-grow: 0;
      overflow: hidden;
      box-sizing: border-box;
      &:not(:last-child) {
        border-right: 1px solid var(--color-border-1);
      }

      &.center {
        display: flex;
        align-items: center;
        justify-content: center;
      }

      &.del {
        cursor: pointer;

        &:hover {
          color: var(--danger-6);
        }
      }

      .is-quick-static.is-quick-static-table {
        padding-left: 8px !important;
      }
    }

    &.no-data {
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--color-text-3);
    }
  }

  &-resize-handle {
    position: absolute;
    top: 0;
    right: 0;
    width: 4px;
    height: 100%;
    cursor: col-resize;
    z-index: 1;
    transition: background-color 0.2s;

    &:hover {
      background-color: var(--primary);
    }
  }

  &-add {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 25px;
    color: var(--color-text-3);
    transition: all 0.3s;
    user-select: none;

    span {
      margin-left: 3px;
    }

    &:hover {
      color: var(--primary);
      background-color: var(--color-fill-1);
    }
  }

  &-body {
    width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    .scrollbar();
  }

  &-tips {
    width: 100%;
    height: 0px;
    display: flex;
    align-items: center;
    gap: 10px;
    opacity: 0;
    transition: all 0.3s;
    transform: translateX(50px);
    .tips-text {
      flex: 1;
    }

    &.show {
      height: 50px;
      opacity: 1;
      transform: translateX(0px);
    }
  }

  &-action {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding-bottom: 6px;

    &--left {
      display: flex;
      align-items: flex-end;
      gap: 8px;
    }

    &--right {
      display: flex;
      white-space: nowrap;
      gap: 8px;
    }
  }
}
