.game-report { display: grid; gap: 1.5rem; padding-block: 2rem; }
.game-report .panel { padding: 1.25rem; min-width: 0; }
.game-report h1 { margin-block: .4rem 1rem; }
.report-controls { display: flex; flex-wrap: wrap; gap: 1rem; align-items: end; }
.report-controls label { display: grid; gap: .4rem; }
.report-controls input { padding: .65rem; background: var(--surface-2); color: var(--tx); border: 1px solid var(--line); border-radius: .5rem; max-width: 100%; }
.report-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.report-number { font-size: 1.7rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.report-timeline { padding-left: 1.2rem; }
.report-timeline li { padding-block: 1rem; border-bottom: 1px solid var(--line); }
.report-timeline time, .report-timeline .eyebrow { display: block; margin-bottom: .4rem; }
.report-hours summary { cursor: pointer; padding: .8rem; font-weight: 700; }
.report-hours table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.report-hours td, .report-hours th { text-align: left; padding: .5rem; border-bottom: 1px solid var(--line); }
.game-report a, .report-timeline { overflow-wrap: anywhere; }
@media (max-width: 700px) { .report-metrics { grid-template-columns: 1fr; } .report-controls label { width: 100%; } }
