.base-table {
  width: 100%;
  color: color(_others, 'dark');
  border-spacing: 0 5px;
  border-collapse: collapse;

  thead {
    width: 100vw;

    tr {
      height: 50px;
      max-height: 50px;
      border-radius: 5px 5px 0 0;

      th {
        padding: 0 0 0 .625rem;
        font-size: .875rem;
        color: color(_others, 'light');

        &:first-child {
          border-radius: 5px 0 0;
        }

        &:last-child {
          border-radius: 0 5px 0 0;
        }

        > ugl-select {
          .field {
            &.combo {
              margin-top: 2px !important;

              i {
                z-index: 0 !important;
              }
            }
          }

          input[type=checkbox] {
            + label {
              font-weight: bold !important;
            }
          }
        }
      }
    }
  }

  tbody {
    > tr {
      line-height: normal;
      border-top: 5px solid color(_others, 'body');

      &:first-of-type {
        border: 0;
      }
    }

    td {
      height: 47px;
      padding: 0 0 0 .625rem;
      font-size: .75rem;
      background-color: color(_others, 'light');

      > ugl-select {
        .field {
          &.combo {
            margin-top: 2px !important;

            i {
              z-index: 0 !important;
            }
          }
        }

        input[type=checkbox] {
          + label {
            font-size: .75rem !important;
            font-weight: 600 !important;
          }
        }
      }
    }
  }

  &.central {
    width: 1024px;
    margin: 0 auto;

    &.has-filter {
      margin-left: 0;

      @media only screen and (max-width: 1024px) {
        width: 1019px;
      }

      @media only screen and (min-width: 1025px) {
        width: calc(100% - 310px);
      }
    }
  }

  &.fixed {
    width: 100%;

    thead {
      width: 100%;
      table-layout: fixed;

      tr {
        display: table;
        width: 1024px;
        margin: 0 auto;
        table-layout: fixed;
      }
    }

    tbody {
      display: block;
      width: 100vw;
      min-height: calc(100vh - 180px);
      max-height: calc(100vh - 180px);
      padding-left: 13.8px;
      overflow-y: scroll;

      tr {
        display: table;
        width: 1024px;
        margin: 0 auto;
        table-layout: fixed;
        border-top: 5px solid color(_others, 'body');

        &:first-of-type {
          border-top: 0;
        }
      }
    }

    &.full {
      thead {
        tr {
          width: calc(100% - 1rem);
          margin: 0;
        }
      }

      tbody {
        padding-left: 0;

        tr {
          width: calc(100% - .1rem);
          margin: 0;
        }
      }
    }
  }
}
