@import 'theme/variables.scss';

.ca-main-table-holder {
  .main-table-scroll-viewport {
    min-height: 200px;
  }
  .ca-main-table {
    color: #424242;
    width: 100%;
    border-collapse: collapse;
    background-color: #eeeeee;

    &.transparent {
      background-color: transparent;
    }

    thead {
      &.hidden_thead {
        display: none !important;
      }
      tr {
        th {
          color: #6c6c6c;
          text-transform: uppercase;
          font-size: 11px;

          .th-content-container {
            padding: 4px;
          }
        }
      }

      .table-tr {
        &.text-right {
          text-align: right;
        }

        &.text-center {
          text-align: center;
        }
      }
    }

    tbody {
      &.cdk-drop-list-dragging {
        * {
          -webkit-user-select: none; /* Safari */
          -ms-user-select: none; /* IE 10 and IE 11 */
          user-select: none; /* Standard syntax */
        }
      }

      .table-tr {
        &.selected-row {
          background-color: var(--selected-row-background, #eee);
          td {
            .td-container {
              .td-content-container {
                background-color: $ta-gray-02;
              }
            }
          }
          
        }

        &:nth-child(2):not(.table-preview-row) {
          opacity: var(--opacity-first-row, 1);
        }

        &.table-preview-row ~ .table-tr:not(.cdk-drag-preview) {
          opacity: var(--under-reorder-opacity, 1);
        }

        &.table-preview-row {
          border-top: var(--table-preview-row-border-top);
          height: var(--table-preview-row-height, 'inherit');

          &:not(.cdk-drag-disabled) {
            cursor: grab;
          }

          .td-content-container {
            height: var(--table-preview-row-td-content-container-height, 'inherit');
          }

          .td-container{
            height: var(--table-preview-row-td-container-height, 'inherit');
          }

          &.cdk-drag-placeholder {
            cursor: grabbing;
          }

          td:first-child {
            .td-content-container {
              border-top-left-radius: var(--table-preview-row-top-left-radius, 0);
              padding: var(--table-preview-row-first-td-padding, 0);
            }
          }

          td:last-child {
            .td-content-container {
              border-top-right-radius: var(--table-preview-row-top-right-radius, 0);
            }
          }
        }
      }

      tr {
        td {
          height: var(--td-height, 36px);
          padding: var(--td-padding, 1px 0);

          .td-container {
            position: relative;
            padding: var(--td-container-padding, 4px 0);
            display: flex;
            align-items: center;
            height: var(--td-container-height, 34px);
            background-color: var(--td-container-bg, #fff);

            .td-content-container {
              min-height: var(--td-container-content-min-height, 26px);
              flex: 1;
              padding: var(--td-container-content-padding, 0px 4px);
              display: flex;
              align-items: center;
              background-color: var(--td-content-container-bg, transparent);
              .text {
                font-size: 14px;
                @for $i from 1 through 9 {
                  &.b-#{$i}00 {
                    font-weight: #{$i}00;
                  }
                }
              }

              .dragg-move-end-period {
                display: inline-block;
                padding: 2px 6px;
                background-color: #91919166;
                color: #fff;
                font-size: 11px;
                line-height: 14px;
              }
            }
          }

          &:first-child {
            .td-container {
              border-top-left-radius: 3px;
              border-bottom-left-radius: 3px;
              padding-left: var(--td-cointainer-first-child-padding-left, 4px);

              .td-content-container {
                border-top-left-radius: 3px;
                border-bottom-left-radius: 3px;
              }
            }
          }

          &:last-child {
            .td-container {
              border-top-right-radius: 3px;
              border-bottom-right-radius: 3px;
              padding-right: var(--td-cointainer-last-child-padding-right, 4px);

              .td-content-container {
                border-top-right-radius: 3px;
                border-bottom-right-radius: 3px;
              }
            }
          }

          &.text-right {
            .td-content-container {
              justify-content: flex-end;
            }
          }

          &.text-center {
            .td-content-container {
              justify-content: center;
            }
          }

          &.text-left {
            .td-content-container {
              justify-content: flex-start;
            }
          }
        }

        &:hover {
          td {
            .td-container {
              .td-content-container {
                background-color: #eeeeee;
              }
            }
          }
        }
      }
    }
  }
}

.cdk_th_div {
  display: table-cell;

  th {
    display: block;
  }
}

.drag-placeholder {
  background-color: #fff;
}

.cdk-drag-preview {
  box-sizing: border-box;
  border-radius: 4px;
  box-shadow: var(
    --cdk-drag-preview-box-shadow,
    0 5px 5px -3px rgba(0, 0, 0, 0.2),
    0 8px 10px 1px rgba(0, 0, 0, 0.14),
    0 3px 14px 2px rgba(0, 0, 0, 0.12)
  );

  td {
    background-color: var(
      --cdk-preview-td-bgcolor,
      transparent
    ) !important; /* Fallback to black if not provided */

    .with-padding {
      padding: 0 8px !important;
    }
  }

  .td-container {
    background-color: var(
      --cdk-preview-bgcolor,
      transparent
    ) !important; /* Fallback to black if not provided */

    color: var(--cdk-preview-textColor, '#fff');
  }
}

.cdk-drag-animating {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}

.table-tr:last-child {
  border: none;
}

.table-body-list.cdk-drop-list-dragging .table-tr:not(.cdk-drag-placeholder) {
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
  cursor: grabbing !important;
  * {
    cursor: grabbing !important;
  }
}

.drag-placeholder {
  background: #ccc;
  border: dotted 3px #999;
  min-height: 60px;
  transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
}
.cdk-drag-placeholder {
  opacity: 0;
}

.th-table-body-list {
  .cdk-drag-placeholder {
    opacity: 0;
  }

  .cdk_th_div {
    box-shadow: none !important;
    background-color: transparent !important;
  }
}

.tr-border-left {
  border-left: 1px solid $bw-9 !important;
}

.tr-border-top {
  border-top: 1px solid $bw-9 !important;
}

.tr-border-bottom {
  border-bottom: 1px solid $bw-9 !important;
}