.historical-report { margin-top: 16px; padding: 20px; }
.historical-report > summary { cursor: pointer; font-weight: 650; }
.historical-report > p { margin: 12px 0; }
.report-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; margin: 18px 0; }
.report-filters label { display: grid; gap: 7px; min-width: 0; }
.report-filters select, .report-filters input { min-width: 0; width: 100%; }
.report-actions { display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0; }
.report-rows { max-height: 540px; overflow: auto; overflow-wrap: anywhere; }
.report-rows > p { padding: 8px 0; border-bottom: 1px solid #dce5e2; }
.report-preview { width: min(850px, calc(100vw - 32px)); max-height: 90vh; padding: 0; border: 1px solid #dce5e2; border-radius: 14px; color: #172f2c; background: white; overflow: auto; }
.report-preview::backdrop { background: #112c2c99; }
.report-preview-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 10px; padding: 16px; border-bottom: 1px solid #dce5e2; }
.report-print-sheet { padding: 32px; line-height: 1.5; overflow-wrap: anywhere; }
.report-print-sheet h1 { font-size: 28px; margin: 10px 0; }
.report-print-sheet h2 { font-size: 18px; margin: 22px 0 10px; }
.report-kicker { font-size: 12px; letter-spacing: .12em; font-weight: 700; color: #34655c; }
.report-print-sheet .report-total { font-size: 23px; font-weight: 700; padding: 16px 0; border-block: 2px solid #34655c; margin: 20px 0; }
.report-print-sheet table { width: 100%; border-collapse: collapse; margin-bottom: 20px; table-layout: fixed; }
.report-print-sheet th, .report-print-sheet td { padding: 9px 10px; border-bottom: 1px solid #dce5e2; text-align: left; white-space: normal; overflow-wrap: anywhere; }
.report-print-sheet th:last-child, .report-print-sheet td:last-child { width: 100px; text-align: right; }
.report-print-sheet thead { background: #edf4f2; }
.report-print-sheet tfoot { font-weight: 700; }
.report-footnote { font-size: 12px; color: #455e58; }
@media (max-width: 480px) { .historical-report { padding: 14px; } .report-actions > button { width: 100%; } .report-print-sheet { padding: 18px; } }
@media print {
 @page { size: A4; margin: 16mm; }
 body.report-printing { display: block !important; background: white !important; margin: 0 !important; padding: 0 !important; }
 body.report-printing > :not(.report-preview) { display: none !important; }
 body.report-printing .report-preview { display: block !important; position: static !important; width: auto !important; max-height: none !important; height: auto !important; margin: 0 !important; border: 0 !important; overflow: visible !important; }
 body.report-printing .report-preview::backdrop, body.report-printing .report-preview-actions { display: none !important; }
 body.report-printing .report-print-sheet { padding: 0; color: black; }
 body.report-printing .report-print-sheet tr { break-inside: avoid; }
 body.report-printing .report-print-sheet thead { display: table-header-group; }
 body.report-printing .report-print-sheet tfoot { display: table-row-group; }
 body.report-printing .report-print-sheet h2 { break-after: avoid; }
}
