@layer components {
  .dashboard-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; }
  .dashboard-charts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin-bottom: 1.5rem; }
  .dashboard-chart { min-width: 0; margin: 0; padding: 1.2rem; }
  .dashboard-chart--monthly, .dashboard-chart--clients, .dashboard-chart--authors { grid-column: span 2; }
  .chart-heading h2 { font-size: 1rem; margin-bottom: .3rem; }
  .chart-heading p { font-size: .8rem; line-height: 1.5; margin: 0; }
  .chart-canvas { position: relative; height: 260px; margin-top: 1rem; }
  .chart-empty { height: 260px; display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--muted); }
  .chart-empty span { font-size: 2rem; opacity: .5; }
  .chart-empty p { font-size: .85rem; }
  @media (max-width: 1200px) {
    .dashboard-charts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dashboard-chart--monthly { grid-column: 1 / -1; grid-row: 1; }
    .dashboard-chart--clients, .dashboard-chart--authors { grid-column: span 1; }
  }
  @media (max-width: 650px) {
    .dashboard-charts { grid-template-columns: minmax(0, 1fr); }
    .dashboard-chart--monthly { grid-column: auto; }
    .dashboard-chart { padding: 1rem; }
  }
}
