.report-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.report-cards > a { display: flex; gap: 16px; padding: 24px; background: white; border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow); color: var(--ink); text-decoration: none; }
.report-cards b { display: grid; place-items: center; flex: 0 0 48px; height: 48px; border-radius: 10px; background: #e8f4f7; color: #177e91; }
.report-cards h2 { margin: 0 0 7px; font-size: 18px; }
.report-cards p { margin: 0; color: var(--muted); font-size: 14px; }
.report-title, .report-subtitle { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.report-title h1, .report-subtitle h2 { margin: 0 0 5px; }
.report-title p { margin: 0; color: var(--muted); }
.report-title a, .report-subtitle a, .report-actions a { color: var(--blue); text-decoration: none; }
.report-filter, .account-picker { display: flex; align-items: end; gap: 12px; padding: 16px; margin-bottom: 14px; background: white; border: 1px solid var(--line); border-radius: 10px; }
.report-filter label, .account-picker label { color: var(--muted); font-size: 13px; }
.report-filter input, .account-picker input, .account-picker select { display: block; min-width: 165px; padding: 10px; margin-top: 5px; border: 1px solid #cbd5df; border-radius: 7px; background: white; }
.account-picker select { min-width: 300px; }
.report-actions { display: flex; justify-content: flex-end; margin: 10px 0; }
.report-table small { display: block; margin-top: 4px; color: var(--muted); }
.report-table .entry-start td { border-top: 2px solid #aebdca; }
.report-table thead th[colspan] { text-align: center; }
@media (max-width: 900px) { .report-cards { grid-template-columns: 1fr; } .report-filter, .account-picker { align-items: stretch; flex-direction: column; } .account-picker select { min-width: 0; width: 100%; } }
@media print { .sidebar, header, .no-print { display: none !important; } .content { margin: 0; padding: 0; max-width: none; } body { background: white; font-size: 12px; } .panel { border: 0; box-shadow: none; padding: 0; } .report-title { margin-bottom: 20px; } }
