.table {
  width: 100%;
  border-collapse: collapse;
}

.table th {
  text-align: left;
  padding: var(--space-sm) var(--space-md);
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  border-bottom: 1.5px solid var(--color-border);
}

.table td {
  padding: var(--space-sm) var(--space-md);
  font-size: 0.9375rem;
  border-bottom: 1px solid var(--color-border-subtle);
  vertical-align: middle;
}

.table tbody tr {
  transition: background-color var(--transition-fast);
}

.table tbody tr:hover {
  background-color: var(--color-surface-alt);
}

.table tbody tr:last-child td {
  border-bottom: none;
}

.table--selectable th:first-child,
.table--selectable td:first-child {
  width: 44px;
  text-align: center;
}

/* Checkbox styling */
.table input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: var(--color-primary);
  cursor: pointer;
  border-radius: var(--radius-sm);
}

/* Channel/playlist name cell */
.table__name {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}

.table__thumbnail {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.table__meta {
  color: var(--color-text-muted);
  font-size: 0.875rem;
}

/* Status cells */
.table__status {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  font-weight: 600;
  font-size: 0.875rem;
}

.table__status--success {
  color: var(--color-success);
}

.table__status--error {
  color: var(--color-error);
}

.table__status--warning {
  color: var(--color-warning);
}

.table__detail {
  color: var(--color-text-muted);
  font-size: 0.8125rem;
}

.table__status--muted {
  color: var(--color-text-muted);
}

/* Inline badges */
.badge {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: var(--radius-pill);
  vertical-align: middle;
  margin-left: var(--space-xs);
}

.badge--success {
  background-color: var(--color-success-bg);
  color: var(--color-success);
}

.badge--muted {
  background-color: var(--color-surface-alt);
  color: var(--color-text-muted);
}
