.dt-processing {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 10px;
    width: auto;
    text-align: center;
    white-space: nowrap;
    z-index: 10;
}

div.dt-container,
.dataTables_wrapper,
.kt-scrollable-x-auto {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}

div.dt-container .dt-layout-row {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 1rem;
}

div.dt-container .dt-layout-row:has(table),
div.dt-container .dt-layout-cell.dt-layout-full,
div.dt-container .dt-layout-table {
    width: 100% !important;
    flex: 1 1 100% !important;
    display: block !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}

.kt-scrollable-x-auto,
.dataTables_scrollBody {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}

table.dataTable,
table.kt-table,
.kt-card-content table {
    width: 100% !important;
    min-width: 100% !important;
    display: table !important;
    border-collapse: collapse;
    table-layout: auto !important;
}

@media (max-width: 768px) {
    table.dataTable,
    table.kt-table,
    .kt-card-content table {
        min-width: 750px !important;
    }
}

table.dataTable th,
table.kt-table th {
    white-space: nowrap !important;
    vertical-align: middle;
    vertical-align: middle !important;
    padding: 0.75rem 1.25rem 0.75rem 0.85rem !important;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.025em;
}

table.dataTable td,
table.kt-table td {
    vertical-align: middle;
    vertical-align: middle !important;
    padding: 0.75rem 0.85rem !important;
    white-space: normal;
    word-break: break-word;
    overflow-wrap: break-word;
    white-space: nowrap !important;
}

table.dataTable th:first-child,
table.dataTable td:first-child,
table.kt-table th:first-child,
table.kt-table td:first-child {
    width: 60px !important;
    min-width: 60px !important;
    text-align: center !important;
}

table.dataTable th:last-child,
table.dataTable td:last-child,
table.kt-table th:last-child,
table.kt-table td:last-child {
    width: 70px !important;
    min-width: 70px !important;
    text-align: center !important;
}

table.dataTable td .flex,
table.kt-table td .flex {
    min-width: 140px;

    table.kt-table td .flex,
    table.dataTable td .inline-flex,
    table.kt-table td .inline-flex {
        min-width: max-content !important;
        width: max-content !important;
    }

    table.dataTable td .kt-badge,
    table.dataTable td .badge,
    table.dataTable td button,
    table.dataTable td a.kt-btn,
    table.dataTable td .kt-menu,
    table.kt-badge,
    .badge {
        white-space: nowrap !important;
    }

    table.dataTable th.text-center,
    table.dataTable td.text-center,
    table.kt-table th.text-center,
    table.kt-table td.text-center {
        text-align: center !important;
    }

    table.dataTable>tbody>tr.odd>td.dt-empty,
    table.dataTable>tbody>tr.even>td.dt-empty,
    table.dataTable>tbody>tr>td.dataTables_empty,
    table.dataTable>tbody>tr>td.dt-empty {
        text-align: center !important;
        font-weight: 500;
        padding: 2.5rem 1rem !important;
        white-space: normal !important;
    }
}
