.reports-page { --ticker-offset: 0px; }
.reports-page .site-sidebar { top: 0; max-height: 100vh; }
.reports-header { padding: 34px 32px 0; border-bottom: var(--rule); }
.reports-kicker { color: var(--heat); font: 700 12px var(--font-mono); letter-spacing: .1em; }
.reports-header h1 { font-size: clamp(24px, 3vw, 36px); line-height: 1.3; margin: 14px 0 12px; overflow-wrap: anywhere; }
.reports-intro { opacity: .72; max-width: 750px; line-height: 1.8; }
.reports-periods { display: flex; gap: 30px; margin-top: 24px; }
.reports-periods a { padding: 10px 0 14px; border-bottom: 3px solid transparent; font-weight: 700; }
.reports-periods a[aria-current] { border-bottom-color: var(--heat); color: var(--heat); }
.reports-library, .report-detail { padding: 28px 32px; }
.reports-library-title, .report-card-top, .report-card-bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.reports-library-title { margin-bottom: 22px; }
.reports-library-title h2 { font-size: 21px; }
.report-issue-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.report-issue-card { border: var(--rule-thin); padding: 22px; display: flex; flex-direction: column; min-width: 0; }
.report-card-top, .report-card-bottom { font: 12px var(--font-mono); flex-wrap: wrap; line-height: 1.6; }
.report-status { font-size: 12px; padding: 3px 8px; border: 1px solid currentColor; white-space: nowrap; }
.report-status.is-open { color: var(--heat); }
.report-issue-card h3 { font-size: 22px; margin-top: 20px; overflow-wrap: anywhere; }
.report-count { margin-top: 8px; opacity: .75; }
.report-headlines { padding-left: 18px; margin: 20px 0 28px; line-height: 1.7; flex: 1; }
.report-headlines li + li { margin-top: 7px; }
.report-card-bottom { border-top: 1px solid currentColor; padding-top: 14px; }
.report-card-bottom a, .report-back, .report-evidence a { font-weight: 700; }
.report-back { display: inline-block; margin-bottom: 22px; }
.report-edition-bar { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 24px; border-bottom: var(--rule-thin); padding-bottom: 18px; font-size: 13px; }
.report-note { font-size: 13px; opacity: .75; line-height: 1.8; padding: 15px 0; }
.report-category-counts { display: flex; gap: 12px; flex-wrap: wrap; margin: 8px 0 16px; }
.report-category-counts span { background: var(--paper-dim); padding: 6px 10px; font-size: 12px; }
.report-category-counts b { margin-left: 8px; }
.report-events { list-style: none; }
.report-event { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 20px; padding: 28px 0; border-bottom: 1px solid currentColor; }
.report-event-number { font: 700 26px var(--font-mono); color: var(--heat); }
.report-event-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 12px; opacity: .72; }
.report-event h2 { font-size: 23px; line-height: 1.5; margin: 10px 0; overflow-wrap: anywhere; }
.report-summary, .report-reason { font: 400 15px/1.8 var(--font-display), sans-serif; margin-bottom: 12px; overflow-wrap: anywhere; }
.report-reason .why-label { display: block; margin-bottom: 4px; color: var(--muted, rgba(var(--ink-rgb), .7)); font-size: 13px; }
.report-evidence { display: flex; gap: 10px 22px; flex-wrap: wrap; font-size: 12px; }
.report-evidence a { text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.report-method { padding: 22px 0; font-size: 13px; line-height: 1.8; }
.report-method summary { cursor: pointer; font-weight: 700; margin-bottom: 10px; }
.reports-empty { border: var(--rule-thin); padding: 40px 28px; }
.reports-empty h2 { font-size: 20px; margin-bottom: 12px; }
.reports-empty p { max-width: 640px; opacity: .75; line-height: 1.8; }
.reports-pagination { display: flex; gap: 26px; justify-content: center; align-items: center; margin-top: 30px; }
.reports-footer { margin: auto 32px 0; padding: 20px 0 28px; font-size: 12px; opacity: .65; line-height: 1.8; }
.reports-page a:hover { color: var(--heat); }
.reports-page a:focus-visible, .reports-page summary:focus-visible { outline: 2px solid var(--heat); outline-offset: 4px; }
@media (max-width: 1100px) { .report-issue-grid { grid-template-columns: 1fr; } }
@media (max-width: 600px) {
  .reports-header { padding: 24px 18px 0; }
  .reports-library, .report-detail { padding: 22px 18px; }
  .report-event { grid-template-columns: 28px minmax(0, 1fr); gap: 12px; }
  .report-event-number { font-size: 20px; }
  .report-event h2 { font-size: 20px; }
  .report-issue-card { padding: 18px; }
  .reports-footer { margin-left: 18px; margin-right: 18px; }
  .report-edition-bar { gap: 10px 14px; }
}
