.report-lead{font-size:18px!important;line-height:1.8!important;color:var(--text)!important}
.report-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:6px 10px;border-radius:999px;background:#dbeafe;color:#1e40af;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:28px 0}
.report-stat{padding:18px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(145deg,var(--surface),var(--border-light))}
.report-stat strong{display:block;font-size:25px;line-height:1.1;letter-spacing:-.03em;color:var(--text)}
.report-stat span{display:block;margin-top:7px;color:var(--muted);font-size:12px;line-height:1.4}
.report-note{margin:24px 0;padding:18px 20px;border-left:4px solid #f59e0b;border-radius:0 12px 12px 0;background:#fffbeb;color:#78350f;font-size:14px;line-height:1.7}
.report-note strong{color:#78350f}
.report-note--blue{border-left-color:#2563eb;background:#eff6ff;color:#1e3a8a}
.report-note--blue strong{color:#1e3a8a}
.report-toc{margin:26px 0;padding:20px 22px;border:1px solid var(--border);border-radius:14px;background:var(--border-light)}
.report-toc strong{display:block;margin-bottom:8px}
.report-toc ol{columns:2;margin-bottom:0!important;padding-left:20px}
.report-toc li{break-inside:avoid;margin-bottom:5px!important}
.report-toc a{font-size:14px}
.stat-chart-card{position:relative;margin:26px 0 14px;padding:20px 18px 14px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-sm)}
.stat-chart-card h3{margin:0 0 3px!important;font-size:18px!important}
.stat-chart-card .chart-subtitle{margin:0 0 14px!important;color:var(--muted)!important;font-size:13px!important;line-height:1.5!important}
.stat-chart{position:relative;min-height:330px;width:100%;overflow:visible}
.stat-chart svg{display:block;width:100%;height:auto;overflow:visible}
.chart-grid{stroke:var(--border);stroke-width:1}
.chart-axis-label{fill:var(--muted);font-size:11px;font-family:inherit}
.chart-line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.chart-point{stroke:var(--surface);stroke-width:3;cursor:pointer;transition:r .15s,opacity .15s}
.chart-point:hover,.chart-point:focus{r:7;outline:none}
.chart-bar{cursor:pointer;transition:opacity .15s}
.chart-bar:hover,.chart-bar:focus{opacity:.78;outline:none}
.chart-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:7px 6px 0;color:var(--muted);font-size:12px}
.chart-legend span{display:inline-flex;align-items:center;gap:6px}
.chart-legend i{display:inline-block;width:10px;height:10px;border-radius:3px}
.chart-tooltip{position:absolute;z-index:4;min-width:170px;max-width:250px;padding:10px 12px;border-radius:10px;background:#0f172a;color:#fff;font-size:12px;line-height:1.5;box-shadow:0 10px 30px rgba(15,23,42,.25);pointer-events:none;opacity:0;transform:translate(-50%,calc(-100% - 12px));transition:opacity .12s}
.chart-tooltip.is-visible{opacity:1}
.chart-tooltip strong{display:block;color:#fff;margin-bottom:2px;font-size:13px}
.chart-caption{margin:8px 2px 28px!important;color:var(--muted)!important;font-size:12px!important;line-height:1.6!important}
.data-table-wrap{width:100%;overflow-x:auto;margin:18px 0 28px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.data-table{width:100%;min-width:620px;border-collapse:collapse;font-size:13px;line-height:1.45}
.data-table caption{padding:14px 16px;text-align:left;color:var(--text);font-size:15px;font-weight:800;background:var(--border-light)}
.data-table th,.data-table td{padding:11px 13px;border-top:1px solid var(--border);text-align:right;white-space:nowrap}
.data-table th:first-child,.data-table td:first-child{text-align:left;font-weight:700}
.data-table thead th{color:var(--text);font-size:12px;background:var(--border-light)}
.data-table tbody td{color:var(--text-light)}
.data-table tbody tr:hover{background:rgba(37,99,235,.04)}
.data-table .provisional{display:inline-block;margin-left:5px;padding:2px 5px;border-radius:5px;background:#fef3c7;color:#92400e;font-size:10px;font-weight:800;text-transform:uppercase}
.key-findings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0 26px}
.key-finding{padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--border-light)}
.key-finding strong{display:block;margin-bottom:5px;font-size:16px}
.key-finding p{margin:0!important;font-size:14px!important;line-height:1.65!important}
.source-list{padding-left:0!important;margin-left:0!important;list-style:none}
.source-list li{padding:12px 0;border-top:1px solid var(--border);font-size:14px}
.source-list li:last-child{border-bottom:1px solid var(--border)}
.source-badge{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:5px;background:#e2e8f0;color:#334155;font-size:10px;font-weight:800;text-transform:uppercase}
.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.method-grid>div{padding:16px;border:1px solid var(--border);border-radius:12px}
.method-grid strong{display:block;margin-bottom:5px}
.method-grid p{margin:0!important;font-size:13px!important;line-height:1.6!important}
[data-theme="dark"] .report-kicker{background:#172554;color:#bfdbfe}
[data-theme="dark"] .report-note{background:#422006;color:#fde68a}
[data-theme="dark"] .report-note strong{color:#fef3c7}
[data-theme="dark"] .report-note--blue{background:#172554;color:#bfdbfe}
[data-theme="dark"] .report-note--blue strong{color:#dbeafe}
[data-theme="dark"] .chart-tooltip{background:#f8fafc;color:#0f172a}
[data-theme="dark"] .chart-tooltip strong{color:#0f172a}
[data-theme="dark"] .source-badge{background:#334155;color:#e2e8f0}
@media(max-width:760px){
  .report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-toc ol{columns:1}
  .key-findings,.method-grid{grid-template-columns:1fr}
  .stat-chart{min-height:270px}
  .stat-chart-card{padding:17px 10px 11px}
}
@media(max-width:430px){
  .report-summary{grid-template-columns:1fr 1fr;gap:8px}
  .report-stat{padding:13px}
  .report-stat strong{font-size:21px}
}
@media(prefers-reduced-motion:reduce){.chart-point,.chart-bar,.chart-tooltip{transition:none}}
