@media (max-width: 768px) {
  .botboard-reading-prose,
  .article-prose,
  .bot-md.bb-content {
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
  }

  .botboard-reading-prose table,
  .article-prose table,
  .bot-md.bb-content table,
  .bot-table {
    width: max-content !important;
    min-width: 760px !important;
    max-width: none !important;
    table-layout: auto !important;
    border-collapse: collapse;
  }

  .botboard-reading-prose th,
  .botboard-reading-prose td,
  .article-prose th,
  .article-prose td,
  .bot-md.bb-content th,
  .bot-md.bb-content td,
  .bot-table th,
  .bot-table td {
    min-width: 88px;
    word-break: normal !important;
    overflow-wrap: normal !important;
    line-break: auto;
    vertical-align: top;
  }

  .botboard-reading-prose th,
  .article-prose th,
  .bot-md.bb-content th,
  .bot-table th {
    white-space: nowrap !important;
  }

  .botboard-reading-prose td,
  .article-prose td,
  .bot-md.bb-content td,
  .bot-table td {
    white-space: normal !important;
  }

  .botboard-reading-prose th:first-child,
  .botboard-reading-prose td:first-child,
  .article-prose th:first-child,
  .article-prose td:first-child,
  .bot-md.bb-content th:first-child,
  .bot-md.bb-content td:first-child,
  .bot-table th:first-child,
  .bot-table td:first-child {
    min-width: 72px;
  }

  .botboard-reading-prose th:nth-child(2),
  .botboard-reading-prose td:nth-child(2),
  .article-prose th:nth-child(2),
  .article-prose td:nth-child(2),
  .bot-md.bb-content th:nth-child(2),
  .bot-md.bb-content td:nth-child(2),
  .bot-table th:nth-child(2),
  .bot-table td:nth-child(2) {
    min-width: 148px;
  }

  .botboard-reading-prose th:last-child,
  .botboard-reading-prose td:last-child,
  .article-prose th:last-child,
  .article-prose td:last-child,
  .bot-md.bb-content th:last-child,
  .bot-md.bb-content td:last-child,
  .bot-table th:last-child,
  .bot-table td:last-child {
    min-width: 168px;
  }
}

/* ── Desktop table: prevent ticker/ticker-name column from breaking words ── */
@media (min-width: 769px) {
  .botboard-reading-prose table,
  .article-prose table,
  .bot-md.bb-content table,
  .bot-table {
    table-layout: auto;
  }

  .botboard-reading-prose table th:first-child,
  .botboard-reading-prose table td:first-child,
  .botboard-reading-prose table th:first-child *,
  .botboard-reading-prose table td:first-child *,
  .article-prose table th:first-child,
  .article-prose table td:first-child,
  .article-prose table th:first-child *,
  .article-prose table td:first-child *,
  .bot-md.bb-content table th:first-child,
  .bot-md.bb-content table td:first-child,
  .bot-md.bb-content table th:first-child *,
  .bot-md.bb-content table td:first-child *,
  .bot-table th:first-child,
  .bot-table td:first-child,
  .bot-table th:first-child *,
  .bot-table td:first-child * {
    min-width: 84px;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
  }

  /* Prevent compact numeric/value columns from breaking on desktop too. */
  .botboard-reading-prose table th:nth-child(n+3):nth-child(-n+7),
  .botboard-reading-prose table td:nth-child(n+3):nth-child(-n+7),
  .article-prose table th:nth-child(n+3):nth-child(-n+7),
  .article-prose table td:nth-child(n+3):nth-child(-n+7),
  .bot-md.bb-content table th:nth-child(n+3):nth-child(-n+7),
  .bot-md.bb-content table td:nth-child(n+3):nth-child(-n+7),
  .bot-table th:nth-child(n+3):nth-child(-n+7),
  .bot-table td:nth-child(n+3):nth-child(-n+7) {
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

/* ── Ordered list: use CSS counter so multiple <ol> groups don't all show 1. ── */
.botboard-reading-prose,
.article-prose,
.bot-md.bb-content {
  counter-reset: bot-ordered-list;
}

.botboard-reading-prose ol.bot-ol,
.article-prose ol.bot-ol,
.bot-md.bb-content ol.bot-ol {
  counter-reset: none !important;
  list-style: none;
  margin: 0.7rem 0;
  padding-left: 0;
}

.botboard-reading-prose h2.bot-h + .bot-spacer + ol.bot-ol,
.botboard-reading-prose h3.bot-h + .bot-spacer + ol.bot-ol,
.botboard-reading-prose h4.bot-h + .bot-spacer + ol.bot-ol,
.article-prose h2.bot-h + .bot-spacer + ol.bot-ol,
.article-prose h3.bot-h + .bot-spacer + ol.bot-ol,
.article-prose h4.bot-h + .bot-spacer + ol.bot-ol,
.bot-md.bb-content h2.bot-h + .bot-spacer + ol.bot-ol,
.bot-md.bb-content h3.bot-h + .bot-spacer + ol.bot-ol,
.bot-md.bb-content h4.bot-h + .bot-spacer + ol.bot-ol {
  counter-set: bot-ordered-list 0;
}

.botboard-reading-prose ol.bot-ol > li,
.article-prose ol.bot-ol > li,
.bot-md.bb-content ol.bot-ol > li {
  counter-increment: bot-ordered-list;
  position: relative;
  padding-left: 1.8rem;
}

.botboard-reading-prose ol.bot-ol > li::before,
.article-prose ol.bot-ol > li::before,
.bot-md.bb-content ol.bot-ol > li::before {
  content: counter(bot-ordered-list) ".";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 800;
}
