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);
}

div.dtfc-top-blocker,
div.dtfc-top-blocker {
    border-bottom: 0px solid #ddd !important;
}

table.dataTable {
    border-collapse: separate;
}
table.dataTable.table-bordered {
    border-left-width: 0;
    border-right-width: 0;
}
table.dataTable.table-bordered th,
table.dataTable.table-bordered td {
    border-right-width: 0;
    border-top-width: 0;
}
table.dataTable.table-bordered th:last-child,
table.dataTable.table-bordered td:last-child {
    border-right: 1px solid #dee2e6;
}
table.dataTable.table-bordered tr:last-child th,
table.dataTable.table-bordered tr:last-child td {
    border-bottom-width: 0;
}

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 {
    background-color:white;
}
table.dataTable tbody tr > .dtfc-fixed-start,
table.dataTable tbody tr > .dtfc-fixed-end {
    background-color: white;
}

div.dtfc-top-blocker,
div.dtfc-bottom-blocker {
    background-color: var(--bs-body-bg);
}

div.dt-scroll-body {
    border-left-color: var(--bs-table-color) !important;
}

div.dt-scroll-headInner table.table-bordered tr th:first-child,
div.dt-scroll-footInner table.table-bordered tr th:first-child {
    border-left-color: var(--bs-border-color) !important;
}
