/* Article table treatments (new long-form articles only).
   main_new.css on this branch is served with a 1-year immutable cache —
   never edit it for new pages; this new file is fetched fresh. */

.sn-table-scroll {
  position: relative;
  max-width: 100%;
  margin-bottom: var(--space-4);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.sn-table-scroll:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

.sn-table-scroll > .sn-content-table {
  margin-bottom: 0;
  min-width: 480px;
}

/* Comparison tables: wider floor + sticky first column while scrolling. */
.sn-table-scroll--compare > .sn-content-table {
  min-width: 820px;
  border-collapse: separate;
  border-spacing: 0;
}

.sn-table-scroll--compare > .sn-content-table td,
.sn-table-scroll--compare > .sn-content-table th {
  border-width: 0 2px 2px 0;
  border-style: solid;
  border-color: var(--color-text-main);
}

.sn-table-scroll--compare > .sn-content-table tr > td:first-child,
.sn-table-scroll--compare > .sn-content-table tr > th:first-child {
  border-left-width: 2px;
  position: sticky;
  left: 0;
  z-index: 1;
  background-color: var(--color-bg-page);
}

.sn-table-scroll--compare > .sn-content-table tr:first-child > td,
.sn-table-scroll--compare > .sn-content-table tr:first-child > th {
  border-top-width: 2px;
}
