/* Responsive 2.x measures a cloned table inside a one-pixel, hidden container.
   Let that clone shrink to its content instead of inheriting desktop widths. */
.dataTables_wrapper div[style*="width: 1px"][style*="overflow: hidden"] > table.dataTable {
  width: auto !important;
  min-width: 0 !important;
  table-layout: auto !important;
}

.dataTables_wrapper table.dataTable th.swapp-table-actions,
.dataTables_wrapper table.dataTable td.swapp-table-actions {
  width: 1% !important;
  white-space: nowrap;
}

/* Keep real buttons keyboard-accessible; Responsive owns column visibility. */
table[data-responsive-fold].dataTable > tbody > tr > td.control::before { display: none !important; }
table[data-responsive-fold].dataTable > tbody > tr > td.control,
table[data-responsive-fold].dataTable > thead > tr > th.control { width: 40px !important; min-width: 40px; padding: 8px !important; text-align: center; }
.swapp-table-toggle { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; padding: 0; border: 1px solid #6571c7; border-radius: 50%; background: #fff; color: #3949ab; font-size: 20px; line-height: 1; cursor: pointer; }
.swapp-table-toggle:focus-visible { outline: 3px solid #3949ab; outline-offset: 2px; }
table[data-responsive-fold].dataTable { width: 100%; }
table[data-responsive-fold].dataTable td.child { white-space: normal; overflow-wrap: anywhere; }
table[data-responsive-fold].dataTable td.child ul.dtr-details { display: block; width: 100%; }
table[data-responsive-fold].dataTable td.child ul.dtr-details > li { display: grid; grid-template-columns: minmax(90px, 35%) minmax(0, 1fr); gap: 12px; white-space: normal; }
table[data-responsive-fold].dataTable td.child .dtr-title { min-width: 0; white-space: normal; }
table[data-responsive-fold].dataTable td.child .dtr-data { min-width: 0; white-space: normal; overflow-wrap: anywhere; }
