/* Custom DataTables Responsive Styling - Global */
table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before {
    background-color: #6c757d !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    color: white !important;
    font-size: 12px !important;
    line-height: 16px !important;
    width: 20px !important;
    height: 20px !important;
    text-align: center !important;
    font-weight: bold !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
    transition: all 0.2s ease !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    margin: 0 !important;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:hover:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:hover:before {
    background-color: #495057 !important;
    transform: scale(1.1) !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before {
    content: "+" !important;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.dtr-expanded > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr.dtr-expanded > th:first-child:before {
    content: "-" !important;
    background-color: #dc3545 !important;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.dtr-expanded > td:first-child:hover:before,
table.dataTable.dtr-inline.collapsed > tbody > tr.dtr-expanded > th:first-child:hover:before {
    background-color: #c82333 !important;
}

/* Ensure proper spacing for the control */
table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child {
    position: relative !important;
    padding-left: 35px !important;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before {
    position: absolute !important;
    left: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

/* Responsive table adjustments */
@media (max-width: 768px) {
    .table-responsive {
        border: none !important;
    }

    table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child,
    table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child {
        padding-left: 45px !important;
    }

    table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:before,
    table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before {
        left: 15px !important;
        width: 24px !important;
        height: 24px !important;
        font-size: 14px !important;
        line-height: 20px !important;
    }
}
