/* Reports (#reports) — module layout only (spec §7.12). Components come from
   atlas-components.css; charts use --accent-illustration (one series, one hue). */
@layer atlas.modules {
  .reports-head .page-head__actions { flex-wrap: wrap; justify-content: flex-end; }
  .reports-head .atlas-select { width: auto; }
  .reports-custom { display: inline-flex; align-items: center; gap: var(--s-1); color: var(--text-2); }
  .reports-custom .atlas-input { width: 150px; }
  .reports-export { position: relative; }
  .reports-export .atlas-menu { position: absolute; top: calc(100% + var(--s-1)); right: 0; z-index: 3; min-width: 220px; }
  .reports-body { margin-top: var(--s-5); }
  .reports-body > .atlas-alert { margin-bottom: var(--s-4); }
  .reports-page.is-refreshing .reports-body { opacity: .6; transition: opacity var(--dur-1) var(--ease-out); }
  .reports-stats { margin: 0; }
  .reports-period { margin: 0 0 var(--s-3); font: var(--type-label); color: var(--text); }
  .reports-period span { font: var(--type-meta); color: var(--text-2); }
  .reports-skeleton { display: grid; gap: var(--s-2); margin-top: var(--s-8); }

  .reports-delta { font: var(--type-caption); color: var(--text-2); font-variant-numeric: tabular-nums; }
  .reports-delta.is-good { color: var(--positive); }
  .reports-delta.is-bad { color: var(--danger); }
  .reports-muted { margin: 0; font: var(--type-meta); color: var(--text-2); }
  .reports-not-enough { display: flex; align-items: center; gap: var(--s-2); margin: 0; padding: var(--s-4) 0; font: var(--type-meta); color: var(--text-2); }

  .reports-chart-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--s-4); align-items: start; }
  .reports-chart { margin: 0; padding: var(--s-5); border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface); }
  .reports-chart figcaption { display: grid; gap: 2px; margin-bottom: var(--s-4); }
  .reports-chart__title { font: var(--type-heading); color: var(--text); }
  .reports-chart__takeaway { font: var(--type-meta); color: var(--text-2); }
  .reports-bars { display: grid; gap: var(--s-2); margin: 0; padding: 0; list-style: none; }
  .reports-bars__row { display: grid; grid-template-columns: minmax(80px, 1fr) minmax(0, 2fr) auto; align-items: center; gap: var(--s-3); min-height: 28px; }
  .reports-bars__label { overflow: hidden; font: var(--type-meta); color: var(--text); text-overflow: ellipsis; white-space: nowrap; }
  .reports-bars__track { display: block; height: 12px; }
  .reports-bars__bar { display: block; height: 100%; border-radius: 0 4px 4px 0; background: var(--accent-illustration); }
  .reports-bars__value { min-width: 88px; text-align: right; font: var(--type-num); color: var(--text); }
  .reports-facts .atlas-list { margin: 0; }

  @media (max-width: 1023px) {
    .reports-chart-grid { grid-template-columns: minmax(0, 1fr); }
  }
  @media (max-width: 767px) {
    .reports-head .page-head__actions { justify-content: stretch; }
    .reports-head .page-head__actions > * { flex: 1 1 auto; }
    .reports-custom .atlas-input { width: auto; min-width: 0; flex: 1 1 0; }
    .reports-bars__row { grid-template-columns: minmax(0, 1fr) auto; }
    .reports-bars__track { grid-column: 1 / -1; grid-row: 2; }
    .reports-bars__value { min-width: 0; }
  }
  @media print {
    .reports-head .page-head__actions, .atlas-tabs { display: none; }
  }
}
