.season-report { --report-ink: var(--c-navy); --report-teal: var(--c-blue); }
.report-hero { position: relative; isolation: isolate; overflow: hidden; padding: clamp(1.5rem, 5vw, 3.5rem); color: #fff; background: var(--c-forest); border-radius: 1rem; }
.report-hero::after { content: ''; position: absolute; right: -140px; top: -100px; width: 480px; height: 480px; border-radius: 50%; border: 1px solid #d3f16b35; box-shadow: 0 0 0 26px #153f36, 0 0 0 27px #d3f16b25, 0 0 0 53px #153f36, 0 0 0 54px #d3f16b20; z-index: -1; }
.report-eyebrow { color: var(--c-accent); font-size: .65rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.report-hero h1 { color: #fff; border: 0; margin-bottom: 1rem; font-size: clamp(2rem, 5vw, 3.6rem); }
.report-intro { max-width: 42rem; font-size: 1rem; line-height: 1.8; color: #dce7d9; }
.report-meta { display: flex; flex-wrap: wrap; gap: .4rem 1.4rem; font-size: .7rem; color: #c1d3bd; }
.report-jump { display: inline-block; margin-top: 1.5rem; color: var(--c-accent); font-size: .8rem; font-weight: 700; text-underline-offset: .25rem; }
.report-jump:hover { color: #fff; }
.report-highlights { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin: 1rem 0 2rem; }
.report-highlight { background: #fff; padding: 1.4rem; border: 1px solid var(--c-line); border-radius: .8rem; }
.report-highlight:first-child { background: var(--c-accent); border-color: var(--c-accent); }
.report-highlight p { color: #52674d; font-size: .6rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; margin-bottom: .7rem; }
.report-highlight strong { color: var(--report-ink); font-size: 1.05rem; }
.report-layout { display: grid; grid-template-columns: 225px minmax(0, 1fr); gap: 1.5rem; align-items: start; }
.report-navigation { position: sticky; top: 1rem; background: #fff; border: 1px solid var(--c-line); border-radius: .8rem; }
.report-navigation details { padding: 1rem; }
.report-navigation summary { font-weight: 800; font-size: .8rem; color: var(--report-ink); }
.report-navigation nav { display: grid; gap: .2rem; margin-top: .8rem; max-height: 72vh; overflow-y: auto; }
.report-navigation a { color: #52694f; text-decoration: none; font-size: .72rem; padding: .5rem .6rem; border-radius: .3rem; }
.report-navigation a:hover, .report-navigation a:focus-visible { color: #164d36; background: #eef5e7; }
.report-body { min-width: 0; }
.report-note { padding: 1rem 1.2rem; border-left: 3px solid #91b763; background: #eaf0e1; border-radius: .3rem; font-size: .75rem; line-height: 1.8; }
.report-section { padding: clamp(1rem, 3vw, 1.75rem); margin-bottom: 1.5rem; background: #fff; border: 1px solid var(--c-line); border-radius: .8rem; scroll-margin-top: 1rem; overflow-wrap: anywhere; }
.report-section h2 { color: var(--report-ink); font-size: 1.5rem; margin-bottom: 1.2rem; }
.report-section h3 { color: var(--report-teal); font-size: 1.05rem; margin: 1.8rem 0 1rem; }
.report-section p, .report-section li { font-size: .82rem; line-height: 1.85; }
.report-section li { margin-bottom: .45rem; }
.report-section .table-responsive-wrapper { margin: 1rem 0 1.25rem; border: 1px solid var(--c-line); border-radius: .5rem; }
.report-table { font-size: .75rem; }
.report-table thead th { padding: .8rem; white-space: nowrap; font-size: .6rem; }
.report-table tbody td { padding: .7rem .8rem; min-width: 4rem; }
.report-table tbody td:first-child { min-width: 8rem; }
.report-chart-link { display: block; border: 1px solid var(--c-line); border-radius: .5rem; overflow: hidden; }
.report-chart-link:hover { border-color: var(--report-teal); }
.report-chart { display: block; width: 100%; height: auto; }
.report-back { display: inline-block; color: #52674d; font-size: .7rem; margin-top: .75rem; text-underline-offset: .2rem; }
@media (max-width: 991px) {
    .report-layout { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
    .report-navigation { position: static; }
    .report-navigation nav { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 14rem; }
    .report-highlights { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
    .report-hero { border-radius: .8rem; }
    .report-highlights { gap: .6rem; }
    .report-highlight { padding: .9rem; }
    .report-highlight strong { font-size: .9rem; }
    .report-navigation nav { grid-template-columns: minmax(0, 1fr); }
}
@media print {
    .report-navigation, .report-back, .report-jump { display: none; }
    .report-layout { display: block; }
    .report-hero { background: none; color: #142f2b; padding: 0; }
    .report-hero::after { display: none; }
    .report-hero h1, .report-intro, .report-meta, .report-eyebrow { color: #142f2b; }
    .report-section, .report-highlight { border: 1px solid #ddd; }
    .report-section { break-inside: auto; }
    .report-chart, tr { break-inside: avoid; }
    .report-section .table-responsive-wrapper { overflow: visible; }
}
