﻿:root{--bg:#f8fafc;--surface:#fff;--text:#0f172a;--muted:#475569;--brand:#1d4ed8;--brand-soft:#60a5fa;--accent:#0ea5e9;--border:#cbd5e1;--font-display:"Fraunces",serif}
.dashboard-layout{display:grid;grid-template-columns:240px 1fr;gap:12px}
.filters ul{padding-left:18px;color:var(--muted)}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.kpi p{font-size:1.4rem;font-weight:800;color:var(--brand)}
.chart.wide,.table.wide{grid-column:span 3}
.chart{min-height:170px}
.graph{height:100px;border-radius:10px;background:linear-gradient(160deg,#dbeafe,#bfdbfe)}
.pie{height:100px;width:100px;border-radius:999px;background:conic-gradient(#2563eb 0 42%,#60a5fa 42% 77%,#93c5fd 77%)}
.table table{width:100%;border-collapse:collapse;font-size:.9rem}
.table th,.table td{padding:8px;border-bottom:1px solid var(--border);text-align:left}
@media (max-width:980px){.dashboard-layout{grid-template-columns:1fr}.kpi-grid{grid-template-columns:1fr 1fr}.chart.wide,.table.wide{grid-column:span 2}}
@media (max-width:640px){.kpi-grid{grid-template-columns:1fr}.chart.wide,.table.wide{grid-column:span 1}}
