/* Match and credit history reports (Pages/MatchHistory.razor, Pages/CreditHistory.razor). */
.report-head h1 { margin: 0; }
.report-head .filters { gap: 12px; align-items: flex-end; flex-wrap: wrap; margin-top: 8px; }
.report-head .filters label { display: grid; gap: 4px; font-size: .8rem; color: #9a9a9a; }
.report-totals { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 12px; padding-top: 10px; border-top: 1px solid #2b2b2b; font-variant-numeric: tabular-nums; }
.report-totals strong { font-size: 1.1rem; }
.report-scroll { overflow-x: auto; }
table.report { min-width: 560px; font-variant-numeric: tabular-nums; }
table.report td.neg, .report-totals .neg, table.report .line .neg { color: #ff9b9b; }
table.report td.pos, .report-totals .pos, table.report .line .pos { color: #8fe3c0; }
table.report tr.clickable { cursor: pointer; }
table.report tr.clickable:hover, table.report tr.clickable.open { background: #1a1a1a; }
table.report tr.clickable:focus-visible { outline: 2px solid #c9a227; outline-offset: -2px; }
table.report tr.detail td { background: #141414; }
.detail-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 8px 24px; padding: 4px 2px 8px; }
.detail-grid .line { display: flex; justify-content: space-between; gap: 12px; border-bottom: 1px dashed #2b2b2b; padding: 2px 0; }
.pager { justify-content: center; gap: 14px; margin-top: 10px; }
