/* Fit calculator columns to laptop space instead of enforcing desktop widths. */
.app-shell { grid-template-columns: 240px minmax(0, 1fr); }
.main, .page { min-width: 0; }
@media (min-width: 961px) {
  .calc-table { width: 100%; min-width: 0; table-layout: fixed; }
  .calc-table :is(th, td):nth-child(n) {
    min-width: 0; max-width: none; padding: .4rem .3rem;
  }
  .calc-table :is(th, td):nth-child(1) { width: 3%; }
  .calc-table :is(th, td):nth-child(2) { width: 14%; }
  .calc-table :is(th, td):nth-child(3) { width: 22%; }
  .calc-table :is(th, td):nth-child(4),
  .calc-table :is(th, td):nth-child(5) { width: 6%; }
  .calc-table :is(th, td):nth-child(6) { width: 8%; }
  .calc-table :is(th, td):nth-child(7) { width: 9%; }
  .calc-table :is(th, td):nth-child(8) { width: 5%; }
  .calc-table :is(th, td):nth-child(9) { width: 15%; }
  .calc-table :is(th, td):nth-child(10) { width: 12%; }
  .calc-table th { white-space: normal; overflow-wrap: anywhere; }
  .calc-table .col-bahan .searchable-select,
  .calc-table td:nth-child(3) .searchable-select {
    min-width: 0; width: 100%; max-width: 100%;
  }
  .calc-table td:nth-child(n) .editable-cell {
    min-width: 0; max-width: 100%; padding: .4rem .25rem;
  }
  .calc-table .row-actions { flex-wrap: wrap; gap: .25rem; }
  .calc-table .row-actions .btn { max-width: 100%; white-space: normal; }
  .calc-table .computed-cell { overflow-wrap: anywhere; }
  .calc-table .subtotal-cell { white-space: normal; }
}
@media (min-width: 961px) and (max-width: 1439px) {
  .app-shell { grid-template-columns: 192px minmax(0, 1fr); }
  .sidebar { padding: 1rem .65rem; }
  .brand-logo-img.brand-logo-sidebar { max-width: 100%; }
  .main { padding: 1rem .75rem 2rem; }
  .calc-table { font-size: .8rem; }
  .calc-table td:nth-child(n) .editable-cell { font-size: .8rem; }
  .calc-table .row-actions .btn { padding: .25rem .4rem; font-size: .75rem; }
}
@media (max-width: 960px) {
  .app-shell { grid-template-columns: minmax(0, 1fr); }
}
