/* Publication structure only; the shared SkuPeek shell and tokens are unchanged. */
.sp-research-hub { padding-bottom: var(--skupeek-space-16); }
.sp-research-hub .sp-article-header { max-width: var(--skupeek-reading-width); margin-inline: 0; padding-bottom: var(--skupeek-space-4); }
.sp-research-section { margin-top: var(--skupeek-space-8); }
.sp-research-section:first-child { margin-top: 0; }
.sp-section-title { margin-bottom: var(--skupeek-space-6); color: var(--skupeek-text); font-size: 20px; font-weight: 700; line-height: 28px; }
.sp-featured-report { min-width: 0; padding-block: var(--skupeek-space-8); border-block: 1px solid var(--skupeek-border); }
.sp-report-context { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--skupeek-space-2) var(--skupeek-space-3); color: var(--skupeek-text-muted); font-size: 12px; font-weight: 600; line-height: 20px; text-transform: uppercase; overflow-wrap: anywhere; }
.sp-report-context > * + * { padding-left: var(--skupeek-space-3); border-left: 1px solid var(--skupeek-border); }
.sp-featured-report h3 { max-width: var(--skupeek-reading-width); margin-top: var(--skupeek-space-4); color: var(--skupeek-text); font-size: 30px; font-weight: 700; line-height: 36px; overflow-wrap: anywhere; }
.sp-report-summary { max-width: var(--skupeek-reading-width); margin-top: var(--skupeek-space-4); color: var(--skupeek-text-muted); font-size: 16px; line-height: 28px; overflow-wrap: anywhere; }
.sp-sample-summary { display: flex; flex-wrap: wrap; gap: var(--skupeek-space-2) var(--skupeek-space-5); margin-top: var(--skupeek-space-5); padding: 0; color: var(--skupeek-text-control); font-size: 14px; line-height: 24px; font-variant-numeric: tabular-nums; list-style: none; }
.sp-sample-summary > * { min-width: 0; overflow-wrap: anywhere; }
.sp-sample-summary strong { color: var(--skupeek-text); font-weight: 600; }
.skupeek-site :is(.sp-featured-report, .sp-report-card, .sp-series-entry) :is(h2, h3) a { border-radius: var(--skupeek-radius-sm); }
.skupeek-site :is(.sp-featured-report, .sp-report-card, .sp-series-entry) :is(h2, h3) a:hover { color: var(--skupeek-primary-hover); }
.sp-report-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--skupeek-space-8) var(--skupeek-space-12); }
.sp-report-card { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; padding-bottom: var(--skupeek-space-8); border-bottom: 1px solid var(--skupeek-border); }
.sp-report-card h3 { margin-top: var(--skupeek-space-3); color: var(--skupeek-text); font-size: 22px; font-weight: 700; line-height: 28px; overflow-wrap: anywhere; }
.sp-report-card .sp-report-summary { margin-top: var(--skupeek-space-3); }
.sp-report-card .sp-sample-summary { margin-top: var(--skupeek-space-4); }
.sp-report-card .sp-read-more { margin-top: var(--skupeek-space-5); }
.sp-research-series-list { display: grid; gap: 0; }
.sp-series-entry { display: grid; min-width: 0; gap: var(--skupeek-space-4); padding-block: var(--skupeek-space-6); border-bottom: 1px solid var(--skupeek-border); }
.sp-series-entry:first-child { padding-top: 0; }
.sp-series-entry h3 { color: var(--skupeek-text); font-size: 20px; font-weight: 600; line-height: 28px; overflow-wrap: anywhere; }
.sp-series-entry .sp-report-summary { margin-top: var(--skupeek-space-2); }
.sp-series-facts { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--skupeek-space-2) var(--skupeek-space-5); color: var(--skupeek-text-muted); font-size: 14px; line-height: 24px; font-variant-numeric: tabular-nums; }
.sp-series-entry .sp-read-more { margin-top: 0; }
.sp-series-header .sp-series-facts { margin-top: var(--skupeek-space-4); }
.sp-series-header { padding-bottom: var(--skupeek-space-6); }
.sp-series-header .sp-report-context { margin-top: var(--skupeek-space-4); }
.sp-series-list--compact { margin-top: 0; }
.sp-series-list > h2 { margin-bottom: var(--skupeek-space-3); }
.sp-series-list > .sp-series-facts { margin-bottom: var(--skupeek-space-5); }
.sp-research-about { padding-top: var(--skupeek-space-8); border-top: 1px solid var(--skupeek-border); }
.sp-research-about-links { display: flex; flex-wrap: wrap; gap: var(--skupeek-space-4) var(--skupeek-space-8); margin: 0; padding: 0; list-style: none; }
.sp-research-about .sp-read-more { margin-top: 0; }
.sp-report-meta { display: flex; flex-wrap: wrap; gap: var(--skupeek-space-2) var(--skupeek-space-5); margin-top: var(--skupeek-space-6); color: var(--skupeek-text-muted); font-size: 14px; line-height: 24px; }
.sp-report-meta > * { min-width: 0; overflow-wrap: anywhere; }
.skupeek-site .sp-report-meta a[rel~="author"] { color: var(--skupeek-primary); text-decoration: underline; text-underline-offset: 3px; }
.skupeek-site .sp-report-meta a[rel~="author"]:hover { color: var(--skupeek-primary-hover); }
.sp-dataset { margin-bottom: var(--skupeek-space-8); }
.sp-dataset h2 { margin: 0 0 var(--skupeek-space-4); color: var(--skupeek-text); font-size: 18px; font-weight: 600; line-height: 28px; }
.sp-dataset-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; border-block: 1px solid var(--skupeek-border); }
.sp-dataset-grid > div { display: flex; min-width: 0; flex-direction: column; gap: var(--skupeek-space-2); padding: var(--skupeek-space-5) var(--skupeek-space-4); background: var(--skupeek-surface); }
.sp-dataset-grid > div:nth-child(even) { border-left: 1px solid var(--skupeek-border); }
.sp-dataset-grid > div:nth-child(n + 3) { border-top: 1px solid var(--skupeek-border); }
.sp-dataset-grid > div:only-child { grid-column: 1 / -1; }
.sp-dataset-grid dt { color: var(--skupeek-text-muted); font-size: 14px; font-weight: 400; line-height: 20px; overflow-wrap: anywhere; }
.sp-dataset-grid dd { order: -1; margin: 0; color: var(--skupeek-text); font-size: 26px; font-weight: 600; line-height: 32px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.sp-research-toc { margin-block: var(--skupeek-space-8); padding-block: var(--skupeek-space-5); border-block: 1px solid var(--skupeek-border); }
.sp-research-toc h2 { margin: 0 0 var(--skupeek-space-3); color: var(--skupeek-text); font-size: 16px; font-weight: 600; line-height: 24px; }
.sp-research-toc :is(ol, ul) { display: grid; gap: var(--skupeek-space-2); margin: 0; padding: 0; list-style: none; }
.sp-research-toc li { margin: 0; color: var(--skupeek-text-muted); font-size: 14px; line-height: 24px; }
.skupeek-site .sp-research-toc a { border-radius: var(--skupeek-radius-sm); color: var(--skupeek-text-muted); text-decoration: none; }
.skupeek-site .sp-research-toc a:hover { color: var(--skupeek-primary-hover); text-decoration: underline; text-underline-offset: 3px; }
.sp-research :is(h2, h3)[id] { scroll-margin-top: calc(65px + var(--skupeek-space-6)); }
.sp-research-empty { max-width: var(--skupeek-reading-width); color: var(--skupeek-text-muted); font-size: 16px; line-height: 28px; }

@media (min-width: 768px) {
  .sp-report-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sp-series-entry { grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--skupeek-space-6) var(--skupeek-space-8); }
  .sp-series-entry .sp-read-more { justify-self: end; }
  .sp-dataset-grid { grid-template-columns: repeat(auto-fit, minmax(144px, 1fr)); }
  .sp-dataset-grid > div + div { border-left: 1px solid var(--skupeek-border); }
  .sp-dataset-grid > div:nth-child(n + 3) { border-top: 0; }
}

@media (max-width: 389px) {
  .sp-dataset-grid { grid-template-columns: minmax(0, 1fr); }
  .sp-dataset-grid > div:nth-child(even) { border-left: 0; }
  .sp-dataset-grid > div + div { border-top: 1px solid var(--skupeek-border); }
}
