.report-scroll { padding: 0; }
.report-page { width: min(1480px, calc(100% - 36px)); margin: 18px auto 42px; display: grid; gap: 16px; }
.report-heading { display:flex; justify-content:space-between; gap:22px; align-items:flex-end; padding:25px 26px; border:1px solid var(--border); border-radius:var(--radius-lg); background:linear-gradient(135deg, rgba(79,140,255,.10), rgba(34,197,94,.025) 45%, rgba(17,26,39,.94)); box-shadow:var(--shadow-sm); }
.report-heading h1 { margin:6px 0 7px; font-size:29px; line-height:1.05; }
.report-heading p { color:var(--text-muted); font-size:11px; }
.report-generated { flex:0 0 auto; display:grid; justify-items:end; gap:4px; color:var(--text-muted); font-size:10px; }
.report-generated strong { color:var(--text-primary); font-size:12px; }
.report-filter-panel { padding:17px; border:1px solid var(--border); border-radius:var(--radius-lg); background:rgba(17,26,39,.92); }
.report-filter-grid { display:grid; grid-template-columns: 1fr .8fr .9fr .9fr 1.7fr auto; gap:12px; align-items:end; }
.report-filter-grid label { display:grid; gap:6px; color:var(--text-muted); font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.045em; }
.report-filter-grid select, .report-filter-grid input { width:100%; min-height:40px; border:1px solid var(--border); border-radius:10px; outline:none; color:var(--text-primary); background:#0d1520; padding:0 11px; font:inherit; text-transform:none; letter-spacing:0; }
.report-filter-grid select:focus, .report-filter-grid input:focus { border-color:rgba(79,140,255,.62); box-shadow:0 0 0 3px rgba(79,140,255,.08); }
.report-search-wrap { position:relative; }
.report-search-wrap i { position:absolute; left:12px; top:50%; transform:translateY(-50%); color:var(--text-muted); font-size:10px; }
.report-search-wrap input { padding-left:32px; }
.report-clear-btn { min-height:40px; padding:0 14px; border:1px solid var(--border); border-radius:10px; color:var(--text-secondary); background:rgba(255,255,255,.025); font-size:10px; font-weight:800; cursor:pointer; white-space:nowrap; }
.report-clear-btn:hover { color:#fff; border-color:rgba(79,140,255,.45); }
.report-summary-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
.report-kpi { min-width:0; padding:18px; border:1px solid var(--border); border-radius:var(--radius-lg); background:rgba(17,26,39,.92); box-shadow:var(--shadow-sm); }
.report-kpi > span { display:block; color:var(--text-muted); font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.report-kpi strong { display:block; margin:8px 0 5px; color:var(--text-primary); font-size:19px; line-height:1.1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.report-kpi small { color:var(--text-muted); font-size:9px; line-height:1.4; }
.report-kpi-highlight { border-top:2px solid rgba(79,140,255,.7); background:linear-gradient(145deg,rgba(79,140,255,.09),rgba(17,26,39,.93)); }
.report-kpi-highlight.negative { border-top-color:rgba(239,68,68,.75); background:linear-gradient(145deg,rgba(239,68,68,.08),rgba(17,26,39,.93)); }
.report-section { min-width:0; padding:20px; border:1px solid var(--border); border-radius:var(--radius-lg); background:rgba(17,26,39,.92); box-shadow:var(--shadow-sm); }
.report-section-header { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:15px; }
.report-section-header h2 { font-size:14px; font-weight:850; }
.report-section-header p { margin-top:3px; color:var(--text-muted); font-size:9px; }
.report-chip { flex:0 0 auto; padding:6px 9px; border:1px solid var(--border); border-radius:999px; color:var(--text-muted); background:rgba(255,255,255,.02); font-size:9px; font-weight:800; }
.report-chart-container { position:relative; height:340px; min-height:340px; }
.report-chart-container.medium { height:300px; min-height:300px; }
.report-empty { position:absolute; inset:0; display:none; place-items:center; color:var(--text-muted); font-size:11px; }
.report-two-cols { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.report-status-list { display:grid; gap:0; }
.report-status-list > div { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:12px 2px; border-bottom:1px solid rgba(148,163,184,.09); }
.report-status-list > div:last-child { border-bottom:0; }
.report-status-list span { color:var(--text-secondary); font-size:10px; }
.report-status-list strong { font-size:12px; }
.report-status-list i { width:17px; }
.report-dot-green { color:#22c55e; }.report-dot-yellow{color:#f59e0b}.report-dot-blue{color:#4f8cff}.report-dot-red{color:#ef4444}
.report-table-wrap { width:100%; overflow:auto; }
.report-table { width:100%; border-collapse:collapse; min-width:980px; }
.report-table th { position:sticky; top:0; z-index:1; padding:10px 11px; border-bottom:1px solid var(--border); color:var(--text-muted); background:#111a27; text-align:left; font-size:8px; text-transform:uppercase; letter-spacing:.045em; }
.report-table td { padding:10px 11px; border-bottom:1px solid rgba(148,163,184,.075); color:var(--text-secondary); font-size:9px; vertical-align:top; }
.report-table tr:hover td { background:rgba(79,140,255,.025); }
.report-table .align-right { text-align:right; }
.report-table .value-income { color:#86efac; font-weight:800; }.report-table .value-expense { color:#fca5a5; font-weight:800; }
.report-type { display:inline-flex; align-items:center; padding:4px 7px; border-radius:999px; font-size:8px; font-weight:850; }
.report-type.income { color:#86efac; background:rgba(34,197,94,.1); }.report-type.expense { color:#fca5a5; background:rgba(239,68,68,.1); }
.report-status { font-weight:750; }.report-status.paid{color:#86efac}.report-status.pending{color:#fcd34d}
.report-footer { display:flex; align-items:center; gap:14px; padding:17px 6px 4px; color:var(--text-muted); }
.report-footer img { width:90px; height:auto; }
.report-footer div { display:grid; gap:2px; font-size:9px; }.report-footer strong { color:var(--text-secondary); font-size:10px; }
.report-actions .quick-btn { min-width:94px; }

@media (max-width:1280px){.report-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.report-search-label{grid-column:span 3}.report-clear-btn{grid-column:span 1}}
@media (max-width:900px){.report-two-cols{grid-template-columns:1fr}.report-filter-grid{grid-template-columns:1fr 1fr}.report-search-label{grid-column:1/-1}.report-clear-btn{grid-column:1/-1}.report-actions .quick-btn{min-width:38px}}
@media (max-width:768px){.report-page{width:min(100% - 22px,1480px);margin-top:12px}.report-heading{align-items:flex-start;flex-direction:column;padding:20px}.report-generated{justify-items:start}.report-summary-grid{grid-template-columns:1fr 1fr}.report-chart-container{height:290px;min-height:290px}}
@media (max-width:520px){.report-summary-grid,.report-filter-grid{grid-template-columns:1fr}.report-search-label,.report-clear-btn{grid-column:auto}.report-heading h1{font-size:24px}.report-chart-container,.report-chart-container.medium{height:260px;min-height:260px}}

@media print {
    @page { size:A4 landscape; margin:10mm; }
    html,body { background:#fff !important; color:#111 !important; }
    .sidebar,.overlay,.topbar,.no-print { display:none !important; }
    .layout,.main-content,.dashboard-scroll { display:block !important; margin:0 !important; padding:0 !important; width:100% !important; height:auto !important; overflow:visible !important; background:#fff !important; }
    .report-page { width:100%; margin:0; gap:10px; }
    .report-heading,.report-kpi,.report-section { box-shadow:none !important; background:#fff !important; border:1px solid #d9dde4 !important; color:#111 !important; break-inside:avoid; }
    .report-heading h1,.report-kpi strong,.report-section h2,.report-status-list strong,.report-footer strong { color:#111 !important; }
    .report-heading p,.report-generated,.report-kpi>span,.report-kpi small,.report-section-header p,.report-status-list span,.report-table td,.report-footer { color:#505761 !important; }
    .report-summary-grid { grid-template-columns:repeat(6,1fr); gap:7px; }
    .report-kpi { padding:10px; }.report-kpi strong{font-size:14px}.report-kpi small,.report-kpi>span{font-size:7px}
    .report-chart-container { height:235px !important; min-height:235px !important; }
    .report-chart-container.medium { height:215px !important; min-height:215px !important; }
    .report-two-cols { gap:10px; }
    .report-section { padding:12px; }
    .report-table { min-width:0; }
    .report-table th,.report-table td { color:#111 !important; background:#fff !important; border-color:#e3e6eb !important; padding:6px 5px; font-size:6.5px; }
    .report-table th { font-size:6px; }
    .report-table-wrap { overflow:visible; }
    .report-footer img { width:70px; }
}
