@media print {
  .sidebar, .sidebar-backdrop, .topbar, .toast-region, .bulk-bar, .skip-link, .page-actions, .btn { display: none !important; }
  .app { display: block; }
  body { background: #fff; color: #000; font-size: 11pt; }
  .main { padding: 0; }
  .card { border: 1px solid #999; break-inside: avoid; }
  .table th, .table td { white-space: normal; }
  a { color: inherit; text-decoration: underline; }
}

/* Sprint 4: reports print as clean A4 pages (no sidebar, no controls). */
@page { size: A4; margin: 14mm; }
@media print {
  .page-actions, .export-pop, .range-picker, .def, .pagination, .filter-bar, .status-chips, .tabs, .breadcrumbs, .page-kicker, .btn, .step-actions { display: none !important; }
  .main, .container { max-width: none !important; padding: 0 !important; margin: 0 !important; }
  .page-header { margin-bottom: 8mm; }
  .page-header h1 { font-size: 18pt; }
  .stack { gap: 6mm; }
  .card { box-shadow: none; border-color: #bbb; break-inside: avoid; page-break-inside: avoid; }
  .kpi-grid, .kpi-grid-5, .kpi-grid-sm { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 3mm; }
  .kpi-grid-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .kpi { padding: 3mm; gap: 1mm; }
  .kpi-value { font-size: 16pt; }
  .dash-grid, .dash-grid-even { display: grid; grid-template-columns: 1fr; gap: 6mm; }
  .chart { break-inside: avoid; }
  .chart-tip { display: none !important; }
  .legend-item { border: 0; }
  .funnel-bar, .share-bar, .engagement-bar, .segment-bar { border: 1px solid #ccc; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  .funnel-bar > span, .share-bar > span, .engagement-bar > span { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  .table-scroll { overflow: visible; }
  .table th, .table td { padding: 1.5mm 2mm; font-size: 9pt; }
  .event-links { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .event-link .icon { display: none; }
  a[href^="http"]::after { content: ""; }
}
