/* Compare pages (/compare/) — external so CSP style-src-elem allows it */
.cmp-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 24px 0 8px;
  border: 1px solid var(--ink-200);
  border-radius: 12px;
  background: var(--paper);
}
.cmp-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: var(--fs-small);
}
.cmp-table th,
.cmp-table td {
  padding: 14px 16px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--ink-200);
}
.cmp-table thead th {
  background: var(--ink-900);
  color: var(--paper);
  font-weight: 600;
}
.cmp-table tbody th {
  font-weight: 600;
  color: var(--ink-900);
  width: 22%;
  background: rgba(10, 27, 42, 0.03);
}
.cmp-table tbody tr:last-child th,
.cmp-table tbody tr:last-child td {
  border-bottom: 0;
}
.cmp-table td {
  color: var(--ink-700);
  line-height: 1.45;
}
.cmp-note {
  font-size: var(--fs-small);
  color: var(--ink-500);
  margin-top: 10px;
}
.cmp-sources {
  font-size: var(--fs-small);
  color: var(--ink-600);
}
.cmp-sources a {
  color: var(--brand-700);
}
.cmp-other {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
/* Hub card helpers (moved from inline where useful for consistency) */
.cmp-hub-meta {
  margin-top: 14px;
  font-size: var(--fs-small);
  color: var(--ink-500);
}
.cmp-hub-card-title {
  font-size: 22px;
}
.cmp-hub-card-sub {
  margin-bottom: 12px;
}
.cmp-hub-card-link {
  color: var(--brand-700);
  font-weight: 500;
  font-size: var(--fs-small);
}
.cmp-hub-footnote {
  margin-top: 28px;
  max-width: 720px;
  color: var(--ink-600);
  font-size: var(--fs-small);
}
.cmp-hub-footnote a {
  color: var(--brand-700);
}
.cmp-section-gap {
  margin-top: 28px;
}
.cmp-faq-list {
  display: grid;
  gap: 12px;
  max-width: 820px;
}
.cmp-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}
.cmp-hero-meta {
  margin-top: 14px;
  font-size: var(--fs-small);
  color: var(--ink-500);
}
.cmp-heading-tight {
  margin-top: 12px;
}
