// scss-lint:disable SelectorDepth QualifyingElement NestingDepth
// Data table

.dataTables_scrollBody {
  .column-grip {
    display: none !important;
  }
}

.table.dataTable {
  table-layout: initial;
  text-overflow: initial;
  width: 100%;
  word-break: initial;

  &.table--reorderable-columns {
    thead tr th:not(:first-child) {
      padding-left: 24px;

      .column-grip {
        color: $color-volcano;
        cursor: grabbing;
        display: block;
        left: 0;
        opacity: 0;
        position: absolute;
        top: 6px;
      }

      &:hover .column-grip {
        opacity: 1;
      }
    }
  }

  thead {
    tr {
      th {
        background-color: $color-concrete;
        border-bottom: 2px solid $color-white;
        border-left: 2px solid $color-white;
        font-weight: bold;
        overflow: hidden;
        white-space: nowrap;
        cursor: pointer;

        .modal-tooltiptext {
          margin-left: -10px;
          margin-top: 10px;
        }

        &::after {
          color: $color-silver-chalice;
          font-weight: normal;
          opacity: 1;
        }

        &.sorting:hover {
          background-color: $color-alto;
        }

        &:first-child {
          border-left: 0;
          border-top-left-radius: $border-radius-default;
        }

        &:last-child {
          border-top-right-radius: $border-radius-default;
        }
      }

      th,
      td {
        padding: 8px 6px;
      }
    }
  }

  tbody {
    tr {
      &.selected,
      .selected {
        background-color: $color-concrete;
      }
    }

    td {
      padding-left: 10px;

      .nowrap {
        white-space: nowrap;
      }
    }

    .dt-body-center {
      padding-left: 8px;
    }
  }

  .sorting_desc,
  .sorting_asc {
    background-color: $color-alto;

    &::after {
      color: $color-volcano;
    }
  }
}


.dataTables_paginate {
  .paginate_button {
    background-color: transparent;
    display: inline-block;
    line-height: 36px;
    margin-left: 4px;
    min-width: 36px;
    position: relative;
    text-align: center;

    a {
      align-items: center;
      background-color: inherit;
      border: 1px solid transparent;
      border-radius: $border-radius-default;
      color: inherit;
      display: flex;
      justify-content: center;
      min-height: 36px;
      min-width: 36px;
      outline: 0;

      &:hover,
      &:focus {
        background-color: inherit;
        border: 1px solid transparent;
        outline: 0;
      }
    }

    &:focus {
      outline: 0;
    }

    &.active {
      min-height: 36px;
      a {
        min-width: 36px;
        min-height: 36px;
        background-color: inherit;
        border: 1px solid $brand-primary;
        color: inherit;

        &:hover,
        &:focus {
          background-color: inherit;
          color: inherit;
        }
      }
    }

    &.previous {
      align-items: center;
      display: inline-flex;

      &::before {
        @include font-sn-icon;
        content: $sn-icon-left;
      }

      a {
        min-height: unset;
        padding-left: .25rem;
      }
    }

    &.next {
      align-items: center;
      display: inline-flex;

      &::after {
        @include font-sn-icon;
        content: $sn-icon-right;
      }

      a {
        min-height: unset;
        padding-right: .25rem;
      }
    }
  }
}
