/* Card records and casino reviews keep one readable flow on small screens. */
.ccc-card-reference {
  max-width: 800px;
  min-width: 0;
  margin-inline: auto;
}
.ccc-card-reference > .legal-box:first-child { margin-top: 0; }
.ccc-cardpage .ccc-pagehero h1,
.ccc-card-reference a,
.ccc-review .rev-hero__id > div { overflow-wrap: anywhere; }
.ccc-review .rev-hero__id > div { min-width: 0; }

/* A two-column facts table needs no horizontal scrolling, unlike comparisons. */
.ccc-card-reference .table-scroll table[data-ccc-record-table] {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}
.ccc-card-reference table[data-ccc-record-table] caption {
  text-align: left;
  padding: 12px 16px;
  color: var(--ink-soft);
  font-size: .9rem;
  line-height: 1.5;
}
.ccc-card-reference table[data-ccc-record-table] th,
.ccc-card-reference table[data-ccc-record-table] td {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  vertical-align: top;
}
.ccc-card-reference table[data-ccc-record-table] th:first-child { width: 42%; }

/* One native disclosure places navigation before the review, including without JS. */
.ccc-review-toc {
  margin: 0 0 26px;
  border: 1px solid var(--line);
  border-radius: var(--r);
  background: var(--paper);
}
.ccc-review-toc > summary {
  min-height: 48px;
  padding: 12px 18px;
  cursor: pointer;
  font-family: var(--sans);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}
.ccc-review-toc[open] > summary { border-bottom: 1px solid var(--line-soft); }
.ccc-review-toc > nav { padding: 0 18px 10px; }
.ccc-review-toc .learn-toc a {
  min-height: 44px;
  align-items: baseline;
  padding: 11px 0;
  overflow-wrap: anywhere;
}
.ccc-review .rev-side .side-dl dt,
.ccc-review .rev-side .side-dl dd { min-width: 0; overflow-wrap: anywhere; }

/* The evidence card's next step must remain visibly actionable at every width. */
.ccc-review .ccc-evidence-action {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  min-height: 48px;
  margin-top: 16px;
  padding: 12px 14px;
  border-color: var(--felt);
  border-radius: var(--r);
  background: var(--felt-tint);
  color: var(--felt-deep);
  white-space: normal;
  text-align: center;
  text-decoration: none;
}
.ccc-review .ccc-evidence-action > span:first-child { min-width: 0; }
.ccc-review .ccc-evidence-action .arr { flex: none; }
.ccc-review .ccc-evidence-action:hover { background: var(--paper); }
.ccc-review .ccc-evidence-action:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }

/* Evidence descriptions need their own line in a narrow desktop sidebar too. */
@media (min-width: 641px) {
  .ccc-review .rev-side .side-dl > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 4px;
    align-items: start;
  }
  .ccc-review .rev-side .side-dl dd { text-align: left; }
}

@media (max-width: 640px) {
  .ccc-card-reference .legal-box { padding: 20px; gap: 12px; }
  .ccc-card-reference .legal-box__icon { width: 42px; height: 42px; }
  .ccc-card-reference table[data-ccc-record-table] th,
  .ccc-card-reference table[data-ccc-record-table] td { padding: 12px 10px; font-size: .9rem; }
  .ccc-card-reference table[data-ccc-record-table] thead th {
    font-family: var(--sans);
    font-size: .85rem;
    letter-spacing: 0;
    text-transform: none;
  }
  .ccc-review .rev-hero__id { align-items: flex-start; }
  .ccc-review .rev-side .side-dl > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 4px;
    align-items: start;
  }
  .ccc-review .rev-side .side-dl dd { text-align: left; }
  .ccc-review-toc > summary { padding-inline: 16px; }
  .ccc-review-toc > nav { padding-inline: 16px; }
}

@media (max-width: 640px) {
  .ccc-review > .section--tight,
  .ccc-cardpage > .section--tight { padding: 28px 0; }
  .ccc-review > .section--tight:last-child .ccc-related { margin-top: 0; padding-top: 0; border-top: 0; }
}
