@mixin rds-base-table() {
  $cellWidth: 100px;
  table,
  th,
  td {
    box-sizing: border-box;
  }
  .mat-table {
    background: transparent;
    border-collapse: collapse;
    &.resizeable-columns {
      table-layout: fixed;
      th.mat-header-cell {
        &.resizing {
          border-width: 1px;
          border-style: solid;
        }
        .drag-handle {
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          cursor: col-resize;
          width: 4px;
          z-index: 10;
        }
      }
    }
    th.mat-header-cell,
    td.mat-cell {
      overflow: hidden;
      padding: 0 12px;
      text-overflow: ellipsis;
      vertical-align: middle;
      white-space: nowrap;
      &:last-of-type {
        padding-right: 48px;
      }
    }
    td.mat-cell.numeric {
      text-align: right;
    }
    &.ghost {
      th,
      td {
        position: relative;
        min-width: $cellWidth;
        &::after {
          content: '';
          position: absolute;
          left: 12px;
          right: 12px;
          height: 16px;
          border-radius: 18px;
          background-repeat: no-repeat;
        }
      }
      th::after {
        top: 56px/2 - 8px;
      }
      td::after {
        top: 48px/2 - 8px;
      }
    }
  }
}
