.alert-warn{background:var(--warning-bg);color:var(--warning-deep);border-radius:var(--r-raised);padding:var(--sp-10) var(--sp-14);margin-bottom:var(--sp-14);line-height:var(--lh-prose)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--sp-12);gap:var(--sp-12);margin-bottom:var(--sp-16)}.kpi{background:var(--white);border:1px solid var(--border);border-radius:var(--r-card);padding:var(--sp-14)}.kpi .label{font-size:var(--fs-label);color:var(--muted);font-weight:600}.kpi .value{font-size:var(--fs-h1);font-weight:700;margin:var(--sp-6) 0 var(--sp-4)}.delta{font-size:var(--fs-meta);font-weight:600}.delta.up{color:var(--success-fg)}.delta.down{color:var(--danger-fg)}.delta.none{color:var(--faint);font-weight:400}.bar{height:6px;background:var(--surface);overflow:hidden;margin-top:var(--sp-6)}.bar,.bar span{border-radius:999px}.bar span{display:block;height:100%}.card-title{font-size:var(--fs-h2);font-weight:700;margin:0 0 var(--sp-12)}.chart{display:flex;align-items:flex-end;gap:var(--sp-10);height:200px;padding-bottom:var(--sp-16)}.chart .col{flex:1 1;display:flex;flex-direction:column;align-items:center;height:100%}.chart .bars{flex:1 1;display:flex;align-items:flex-end;gap:3px;width:100%;justify-content:center}.chart .bars span{width:42%;max-width:26px;border-radius:4px 4px 0 0;min-height:2px}.chart .due{background:#E9D5E4}.chart .col-collected{background:var(--primary)}.chart .month{margin-top:var(--sp-6)}.chart .month,.legend{font-size:var(--fs-meta);color:var(--muted)}.legend{display:flex;gap:var(--sp-16)}.legend .sw{display:inline-block;width:10px;height:10px;border-radius:2px;-webkit-margin-end:var(--sp-6);margin-inline-end:var(--sp-6)}.legend .sw.due{background:#E9D5E4}.legend .sw.collected{background:var(--primary)}.two-col{display:grid;grid-template-columns:1.3fr 1fr;grid-gap:var(--sp-16);gap:var(--sp-16);margin-top:var(--sp-16);align-items:start}@media (max-width:900px){.two-col{grid-template-columns:1fr}}.activity{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--sp-10);gap:var(--sp-10)}.activity li{display:flex;justify-content:space-between;gap:var(--sp-12);font-size:var(--fs-sm);line-height:var(--lh-prose)}.activity time{white-space:nowrap;font-size:var(--fs-meta)}