.dataTables_wrapper {
    display: grid;
    grid-template-areas:
        "dtFilter dtFilter dtFilter"
        "dtTable dtTable dtTable"
        "dtInfo dtPaginate dtPaginate";
}

.dataTables_wrapper .dataTables_length {
    display: none !important;
}

.dataTables_wrapper .dataTables_filter {
    grid-area: dtFilter;
}

.dataTables_wrapper .dataTables_filter label {
    display: flex;
    align-items: center;
    width: 100%;
}

.dataTables_wrapper .dataTables_filter label input {
    flex-grow: 1;
}

.dataTables_wrapper table {
    grid-area: dtTable;
}

.dataTables_wrapper .dataTables_info {
    grid-area: dtInfo;
}

.dataTables_wrapper .dataTables_paginate {
    grid-area: dtPaginate;
    margin-top: 10px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    backgrounc-color: #e8e8e8;
    border: none !important;
    margin-left: 0;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.previous {
    border-left: 2px solid #ddd !important;
    border-right: 1px solid #ddd !important;
    border-top: 2px solid #ddd !important;
    border-bottom: 2px solid #ddd !important;

    border-radius: 3px 0px 0px 3px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.next {
    border-right: 2px solid #ddd !important;
    border-left: 1px solid #ddd !important;
    border-top: 2px solid #ddd !important;
    border-bottom: 2px solid #ddd !important;

    border-radius: 0px 3px 3px 0px;
}

.dataTables_wrapper .dataTables_paginate span .paginate_button,
.dataTables_wrapper .dataTables_paginate .ellipsis {
    border-top: 2px solid #ddd !important;
    border-bottom: 2px solid #ddd !important;
    border-right: 1px solid #ddd !important;

    border-radius: 0px;
}

.dataTables_wrapper .dataTables_paginate .ellipsis {
    display: inline-block;
    min-height: 21.6px;
    padding: .5em 1em;
}

.dataTables_wrapper .dataTables_paginate span .paginate_button:last-of-type {
    border-right: none !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current {
    color: #fff !important;
    background-color: #f34e4e;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    color: #eee !important;
    background: #ae4b4b !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
    color: #777 !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
    color: #777 !important;
    background: transparent !important;
}

.dataTable thead {
    /*background-color: #d2d2d2;*/
}

.dataTable thead th,
.dataTable thead td {
    color: #495057;
    font-weight: normal !important;
}

table.dataTable thead > tr > th.sorting:before,
table.dataTable thead > tr > th.sorting:after {
    opacity: .3;
    color: #444 !important;
}

table.dataTable thead > tr > th.sorting_asc:before,
table.dataTable thead > tr > th.sorting_desc:after,
table.dataTable thead > tr > td.sorting_asc:before,
table.dataTable thead > tr > td.sorting_desc:after {
    opacity: 1;
}
