/* Bogam Table Styles */

/* Table wrapper for responsive overflow */
.topic-article .table-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: var(--space-xl) 0;
}

/* Base table styling */
.topic-article table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--border);
}

.topic-article table.custom-width {
  width: auto;
  max-width: none;
}

/* Table cells */
.topic-article th,
.topic-article td {
  padding: var(--space-sm) var(--space-md);
  border: 1px solid var(--border);
}

/* Table headers */
.topic-article th {
  background-color: rgba(var(--muted-rgb), var(--opacity-medium));
  font-weight: 600;
}

/* Table row striping - only when no bgcolor is set */
.topic-article tbody tr:nth-child(even):not(.custom-colors) td:not(.custom-colors) {
  background-color: rgba(var(--muted-rgb), var(--opacity-faint));
}


/* Custom color support - Light mode */
.topic-article table.custom-colors {
  background-color: var(--table-bg);
  color: var(--table-color);
  border-color: var(--table-border);
}

.topic-article table.custom-colors th,
.topic-article table.custom-colors td {
  border-color: var(--table-border);
}

.topic-article table.custom-colors tr.custom-colors {
  background-color: var(--row-bg);
}

.topic-article table.custom-colors tr.custom-colors td {
  color: var(--row-color);
}

.topic-article table.custom-colors td.custom-colors {
  background-color: var(--cell-bg);
  color: var(--cell-color);
}

/* Dark mode support for custom colors */
.dark .topic-article table.custom-colors {
  background-color: var(--table-bg-dark, var(--table-bg));
  color: var(--table-color-dark, var(--table-color));
  border-color: var(--table-border-dark, var(--table-border));
}

.dark .topic-article table.custom-colors th,
.dark .topic-article table.custom-colors td {
  border-color: var(--table-border-dark, var(--table-border));
}

.dark .topic-article table.custom-colors tr.custom-colors {
  background-color: var(--row-bg-dark, var(--row-bg));
}

.dark .topic-article table.custom-colors tr.custom-colors td {
  color: var(--row-color-dark, var(--row-color));
}

.dark .topic-article table.custom-colors td.custom-colors {
  background-color: var(--cell-bg-dark, var(--cell-bg));
  color: var(--cell-color-dark, var(--cell-color));
}

/* Dark mode adjustments for default tables */
.dark .topic-article th:not(.custom-colors) {
  background-color: rgba(var(--muted-rgb), var(--opacity-light));
}

.dark .topic-article tbody tr:nth-child(even):not(.custom-colors) td:not(.custom-colors) {
  background-color: rgba(var(--muted-rgb), var(--opacity-subtle));
}

/* No padding tables */
.topic-article .table-nopad th,
.topic-article .table-nopad td {
  padding: 0;
}

.topic-article .table-keepall th,
.topic-article .table-keepall td,
.topic-article tr.keepall th,
.topic-article tr.keepall td,
.topic-article th.keepall,
.topic-article td.keepall {
  white-space: nowrap;
}

/* Lists inside table cells */
.topic-article td ul,
.topic-article td ol {
  margin: 0;
  padding-left: var(--table-cell-padding);
}

.topic-article td li {
  margin: var(--table-cell-margin) 0;
}

.topic-article td ul:first-child,
.topic-article td ol:first-child {
  margin-top: 0;
}

.topic-article td ul:last-child,
.topic-article td ol:last-child {
  margin-bottom: 0;
}