/* ==========================================================================
   ABM components - Tables
   ========================================================================== */

.abm-table-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid var(--abm-border-subtle);
  border-radius: var(--abm-radius-lg);
  background: var(--abm-color-surface);
  box-shadow: var(--abm-shadow-sm);
  -webkit-overflow-scrolling: touch;
}

.abm-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.abm-table th,
.abm-table td {
  padding: 13px 14px;
  border-bottom: 1px solid var(--abm-border-subtle);
  text-align: left;
  vertical-align: middle;
}

.abm-table th {
  background: var(--abm-color-bg-soft);
  color: var(--abm-color-muted);
  font-size: 0.74rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.abm-table td {
  color: var(--abm-color-text-soft);
  font-size: 0.9rem;
}

.abm-table tr:last-child td {
  border-bottom: 0;
}

.abm-table--compact th,
.abm-table--compact td {
  padding: 10px 12px;
}

.abm-table-cell-truncate {
  max-width: 240px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.abm-table-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.abm-table-empty {
  padding: 24px;
  color: var(--abm-color-muted);
  text-align: center;
}
