.table {
    width:100% !important;
    background-color: #19191b!important;
    font-size: 14px;
}

.table th, .table td {
    vertical-align: middle;
}

.table th {
    border-top:3px solid #28282c!important;
}

.table td {
    border-bottom:1px solid #28282c!important;
    border-top:none!important;
    cursor: default;
}

.table th.content-center, .table td.content-center {
    text-align: center;
}

.table tr:hover {
    background-color: #171719!important;
}

/* Style for the checkbox container */
.checkbox-container, 
.column-checkbox-container {
    position: relative;
    padding-left: 20px; /* Space for the custom checkbox */
    cursor: pointer;
    user-select: none;
}

/* Hide the actual checkbox input */
.checkbox-container input[type="checkbox"], 
.column-checkbox-container input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    height: 0;
    width: 0;
    padding:0;
    margin:0;
}

/* Create a custom box for the checkbox */
.checkbox-container .checkmark,
.column-checkbox-container .checkmark {
    position: absolute;
    top: -4px;
    left: 0;
    height: 16px;
    width: 16px;
    background-color: #28282c;
    border-radius: 2px;
    transition: background-color 0.25s ease;
}

/* Create the custom checkmark indicator */
.checkbox-container input[type="checkbox"]:checked ~ .checkmark:after,
.column-checkbox-container input[type="checkbox"]:checked ~ .checkmark:after {
    content: "";
    position: absolute;
    left: 5px;
    top: 1px;
    width: 6px;
    height: 12px;
    border: solid #f6f6f6;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

/* Optional: Add some hover effect */
.checkbox-container:hover input[type="checkbox"]:not(:disabled) ~ .checkmark,
.column-checkbox-container:hover input[type="checkbox"]:not(:disabled) ~ .checkmark {
    background-color: #2c2c2f;
}

.dataTables_filter {
    padding-bottom:1em;
    font-size:16px;
}

.dataTables_filter label input {
    margin-left:2em!important;
}

.header-filter, .date-range-filter {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    padding: 5px;
    border-radius: 4px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

/* Show filter on hover over the header cell */
th:hover .header-filter, th:hover .date-range-filter {
    display: block;
}

td button {
    padding-left:0;
    margin-left:0;
}

.column-filter {
    max-height: 0;
    overflow: hidden;
    transition: all 0.6s ease;
    display: flex;
    padding-top: 0.5em;
    margin-top: -0.5em;
}

.column-filter.show  {
    margin-top: 0;
    max-height: none;
}

.filter-toggle i {
    transition: transform 0.4s ease-in-out;
}
.filter-toggle.show i {
    transform: rotate(180deg);
}

.column-filter input {
    font-size:10px;
    padding:0.5em;
    background-color: #28282c;
    color:#f6f6f6;
    outline: none;
    box-shadow: none;
    border: none;
    cursor:default;
    border-radius:2px;
}

.column-filter .text-filter {
    width:90%;
    cursor:auto;
}

.column-filter .date-filter {
    width:8em;
}

.pika-single.is-bound {
    font-family: sofia-pro, sans-serif;
    margin-top:0.25em;
    background-color: #171719;
    color:#f6f6f6;
    border: 1px solid #28282c;
}

.pika-label, .pika-table {
    background-color: #171719 !important;
    color: #f6f6f6 !important;
}

.pika-table th, .pika-table td {
    color: #f6f6f6 !important;
}

.pika-button.pika-day {
    text-align: center;
    font-size:14px;
    background-color: transparent !important;
    color: #f6f6f6 !important;
    outline: none;
    box-shadow: none;
    border: none;
}

.is-selected .pika-button.pika-day {
    background-color: #28282c !important;
    outline: none;
    box-shadow: none;
    border: none;
}

.pika-button.pika-day:hover {
    background-color: #545455 !important;
}

.pika-prev {
    background-image: url("/static/img/pika-prev.ded52f8e6e54.png") !important;
}

.pika-next {
    background-image: url("/static/img/pika-next.b402c5d38783.png") !important;
}

.reset-filter {
    margin-left:0.25em;
}

.reset-filter i, .reset-filters i {
    color: #5f2e2e;
}

.reset-filter i:hover, .reset-filters i:hover {
    color: #684242;
}

.pika-select, .pika-select option {
    background-color: #171719;
    color: #f6f6f6;
}

.table-button-row {
    padding-bottom:2em;
}

.dataTables_filter {
    display:none;
}

.dataTables_scrollHead {
    overflow: visible !important;
}

.dataTables_scrollHeadInner {
    width: 100% !important;
}

.dataTables_wrapper ::-webkit-scrollbar-track {
    background: #19191b; /* Color of the track (background) */
}

.dataTables_scrollBody thead .column-dropdown-menu {
    display:none;
}

.dtfh-floatingparent.dtfh-floatingparenthead {
    display:none;
}

.dataTables_scrollBody tbody td {
    white-space: normal !important;
}

td button {
    text-align: left;
}