table.dataTable thead tr > .dtfc-fixed-start,
table.dataTable thead tr > .dtfc-fixed-end,
table.dataTable tfoot tr > .dtfc-fixed-start,
table.dataTable tfoot tr > .dtfc-fixed-end {
  top: 0;
  bottom: 0;
  z-index: 3;
  background-color: white;
}
table.dataTable tbody tr > .dtfc-fixed-start,
table.dataTable tbody tr > .dtfc-fixed-end {
  z-index: 1;
  background-color: white;
}
table.dataTable tr > .dtfc-fixed-left::after,
table.dataTable tr > .dtfc-fixed-right::after {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 10px;
  transition: box-shadow 0.3s;
  content: "";
  pointer-events: none;
}
table.dataTable tr > .dtfc-fixed-left::after {
  right: 0;
  transform: translateX(100%);
}
table.dataTable tr > .dtfc-fixed-right::after {
  left: 0;
  transform: translateX(-80%);
}
table.dataTable.dtfc-scrolling-left tr > .dtfc-fixed-left::after {
  box-shadow: inset 10px 0 8px -8px rgba(0, 0, 0, 0.2);
}
table.dataTable.dtfc-scrolling-right tr > .dtfc-fixed-right::after {
  box-shadow: inset -10px 0 8px -8px rgba(0, 0, 0, 0.2);
}
table.dataTable.dtfc-scrolling-right tr > .dtfc-fixed-right + .dtfc-fixed-right::after {
  box-shadow: none;
}

div.dt-scroll,
div.dtfh-floatingparent {
  position: relative;
}
div.dt-scroll div.dtfc-top-blocker,
div.dt-scroll div.dtfc-bottom-blocker,
div.dtfh-floatingparent div.dtfc-top-blocker,
div.dtfh-floatingparent div.dtfc-bottom-blocker {
  position: absolute;
  background-color: white;
}

html.dark table.dataTable thead tr > .dtfc-fixed-start,
html.dark table.dataTable thead tr > .dtfc-fixed-end,
html.dark table.dataTable tfoot tr > .dtfc-fixed-start,
html.dark table.dataTable tfoot tr > .dtfc-fixed-end {
  background-color: var(--dt-html-background);
}
html.dark table.dataTable tbody tr > .dtfc-fixed-start,
html.dark table.dataTable tbody tr > .dtfc-fixed-end {
  background-color: var(--dt-html-background);
}
html.dark table.dataTable.dtfc-scrolling-left tbody > tr > .dtfc-fixed-left::after {
  box-shadow: inset 10px 0 8px -8px rgba(0, 0, 0, 0.3);
}
html.dark table.dataTable.dtfc-scrolling-right tbody > tr > .dtfc-fixed-right::after {
  box-shadow: inset -10px 0 8px -8px rgba(0, 0, 0, 0.3);
}
html.dark table.dataTable.dtfc-scrolling-right tbody > tr > .dtfc-fixed-right + .dtfc-fixed-right::after {
  box-shadow: none;
}
html.dark div.dtfc-top-blocker,
html.dark div.dtfc-bottom-blocker {
  background-color: var(--dt-html-background);
}

table.dataTable {
  border-collapse: separate;
}
table.dataTable.table-bordered {
  border-left-width: 0;
  border-bottom-width: 0;
}
table.dataTable.table-bordered th, table.dataTable.table-bordered td {
  border-right-width: 0;
  border-top-width: 0;
}

div.dtfc-top-blocker {
  border-bottom: none !important;
}

tr.dt-rowReorder-moving td.dtfc-fixed-start,
tr.dt-rowReorder-moving td.dtfc-fixed-end {
  border-top: 2px solid #888 !important;
  border-bottom: 2px solid #888 !important;
}
tr.dt-rowReorder-moving td.dtfc-fixed-start:first-child {
  border-left: 2px solid #888 !important;
}
tr.dt-rowReorder-moving td.dtfc-fixed-end:last-child {
  border-right: 2px solid #888 !important;
}
