/* borrowed from custom.css lines 4310-4473 */

@media (min-width: 1024px) {
  /* .dataTables_wrapper {
    _height: 102px;
    min-height: 102px;
  } */

  .dataTable.dataTables-sidebar {
    display: -ms-grid;
    display: grid;
    /* 309px width for aside plus margin of 37 (roughly) */
    -ms-grid-columns: 341px 1fr;
    -ms-grid-rows: 50px 1fr;
    grid-template-columns: 341px minmax(0, 1fr);
    grid-template-rows: 50px minmax(0, 1fr);
  }


  .data-table--content {
    overflow: hidden;
  }

  .data-table--content .dataTables-sidebar {
    padding-left: 0;
    padding-right: 0;
  }

  .data-table--content {
    padding-left: 0;
    padding-right: 0;
  }

  .dataTables-content-header {
    grid-row: 1;
    grid-column: 2;
    display: table;
    table-layout: fixed;
    width: 100%;
    /* this needs to be the total of all min-widths below */
    min-width: 850px;
  }

  .dataTables-sidebar .dataTables-content-main {
    grid-row: 2;
    grid-column: 2;
    display: table;
    table-layout: fixed;
    width: 100%;
  }

  .dataTables-content-aside {
    grid-row-start: 1;
    grid-row-end: none;
    grid-column: 1;
  }

  .dataTables-sidebar caption {
    position: relative;
    z-index: 0;
  }
}

/*
  This is a hack to get table headers to match
  TODO: write a js script to do width calculations
*/
.dataTables-sidebar tr {
  display: table;
  width: 100%;
  min-width: 850px;
}

.dataTables-sidebar tr th:nth-of-type(1),
.dataTables-sidebar tr td:nth-of-type(1) {
  width: 60%;
  min-width: 201px;
}

.dataTables-sidebar tr th:nth-of-type(2),
.dataTables-sidebar tr td:nth-of-type(2) {
  width: 20%;
  min-width: 121px;
}

.dataTables-sidebar tr th:nth-of-type(3),
.dataTables-sidebar tr td:nth-of-type(3) {
  width: 20%;
  min-width: 65px;
}

/* IE 11 */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .dataTable.dataTables-sidebar {
    table-layout: fixed;
  }

  .dataTables-content-aside {
    display: -ms-inline-flexbox;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
  }

  .dataTables-content-header {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
    display: table;
    table-layout: auto;
    width: 100%;
  }

  .dataTables-sidebar .dataTables-content-main {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
    display: table;
    table-layout: auto;
    width: 100%;
  }
}

.dataTables-sidebar > .dataTables-content-main tr {
  border-bottom: 1px solid;
  border-left: 1px solid;
  border-color: #c5c5c5;
}

.dataTables-sidebar td,
.dataTables-sidebar td a {
  font-weight: 400;
  font-size: 0.8125rem;
  font-family: "Open Sans", "Source Sans Pro Web", "Helvetica Neue", Helvetica,
    Roboto, Arial, sans-serif;
  color: #444343;
  line-height: 1.6rem;
}

.dataTables-sidebar td {
  padding-right: 0.5rem;
  padding-left: 1rem;
  padding-top: 0.8125rem;
  padding-bottom: 0.5rem;
  border-right: 1px solid;
  border-color: #c5c5c5;
}
