/*====================
Blok 1 — Card Mobile Supplier: mengatur tabel supplier menjadi kartu di HP, termasuk nama, kode, kontak, status, email, alamat, tombol aksi, dan empty state.
======================*/
@media (max-width:768px) {
  #supplierTableBody {
    display:flex;
    flex-direction:column;
    gap:10px;
  }

  .table-container:has(#supplierTableBody) {
    overflow:visible;
    background:transparent;
    border:none;
    box-shadow:none;
  }

  .table-container:has(#supplierTableBody) .data-table {
    display:block;
    width:100%;
  }

  .table-container:has(#supplierTableBody) .data-table thead {
    display:none;
  }

  .table-container:has(#supplierTableBody) .data-table tbody {
    display:flex;
    flex-direction:column;
    gap:10px;
  }

  .supplier-table-row {
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "name action"
      "code action"
      "contact status"
      "email email"
      "address address";
    gap:5px 12px;
    width:100%;
    padding:15px 16px 15px 18px;
    background:var(--bg-card,#ffffff);
    border:1px solid var(--border-color,#e2e8f0);
    border-radius:14px;
    box-shadow:0 1px 3px rgba(15,23,42,.04);
    overflow:hidden;
  }

  .supplier-table-row:hover {
    background:var(--bg-card,#ffffff);
  }

  .supplier-table-row::before {
    content:"";
    position:absolute;
    left:0;
    top:14px;
    bottom:14px;
    width:3px;
    background:var(--primary,#2563eb);
    border-radius:0 4px 4px 0;
  }

  .supplier-col-no {
    display:none;
  }

  .supplier-col-name {
    grid-area:name;
    min-width:0;
    padding:0 !important;
    border:none;
  }

  .supplier-col-name strong {
    display:block;
    min-width:0;
    font-size:13px;
    font-weight:600;
    line-height:1.35;
    color:var(--text-main,#1e293b);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .supplier-col-code {
    grid-area:code;
    min-width:0;
    padding:0 !important;
    border:none;
    font-size:10px;
    line-height:1.3;
    color:var(--text-muted,#64748b);
  }

  .supplier-col-code::before {
    content:"Kode";
    margin-right:6px;
    color:var(--text-muted,#64748b);
  }

  .supplier-col-code code {
    padding:0;
    background:transparent;
    font-family:inherit;
    font-size:inherit;
    color:var(--text-main,#1e293b);
  }

  .supplier-col-contact {
    grid-area:contact;
    min-width:0;
    padding:5px 0 0 !important;
    border:none;
    font-size:10px;
    line-height:1.3;
    color:var(--text-main,#1e293b);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .supplier-col-contact::before {
    content:"Kontak";
    margin-right:6px;
    color:var(--text-muted,#64748b);
  }

  .supplier-col-status {
    grid-area:status;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    padding:5px 0 0 !important;
    border:none;
  }

  .supplier-col-status .badge {
    padding:4px 8px;
    font-size:9px;
    line-height:1;
    white-space:nowrap;
  }

  .supplier-col-email {
    grid-area:email;
    min-width:0;
    padding:5px 0 0 !important;
    border:none;
    font-size:10px;
    line-height:1.3;
    color:var(--text-muted,#64748b);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .supplier-col-email::before {
    content:"Email";
    margin-right:6px;
    color:var(--text-muted,#64748b);
  }

  .supplier-col-address {
  grid-area:address;
  min-width:0;
  padding:5px 0 0 !important;
  border:none;
  font-size:10px;
  line-height:1.45;
  color:var(--text-muted,#64748b);
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:anywhere;
}

.supplier-col-address::before {
  content:"Alamat";
  margin-right:6px;
  color:var(--text-muted,#64748b);
}

  .supplier-col-action {
    grid-area:action;
    display:flex;
    align-items:flex-start;
    justify-content:flex-end;
    gap:4px;
    padding:0 !important;
    border:none;
  }

  .supplier-col-action .btn-action {
    width:36px;
    height:36px;
    flex-shrink:0;
    border-radius:9px;
  }

  .supplier-col-action .btn-action svg {
    width:17px;
    height:17px;
  }

  .table-container:has(#supplierTableBody) .data-table tbody td {
    border-bottom:none;
  }

  #supplierTableBody tr:not(.supplier-table-row) {
    display:block;
    background:transparent;
    border:none;
    box-shadow:none;
  }

  #supplierTableBody tr:not(.supplier-table-row) td {
    display:block;
    padding:2rem 1rem;
    border:none;
  }
}