@page { size: A4; margin: 12mm; }
@media print {
  html, body, #app, .shell, .main, #view, .visit-report {
    height: auto !important; min-height: 0 !important; max-height: none !important;
    overflow: visible !important; transform: none !important;
  }
  .shell, .main, #view, .visit-report { display: block !important; }
  .main { padding: 0 !important; }
  .connection-status, .universal-page-back, .universal-form-back,
  .mobile-menu-overlay, .brand-opening, .no-print { display: none !important; }
  .visit-report { border-radius: 0 !important; box-shadow: none !important; }
  .report-products, .report-task-list, .report-occurrence-list, .report-visit-photos {
    display: block !important; overflow: visible !important;
  }
  .report-visit-photos figure, .report-product, .report-task-list > article,
  .report-occurrence-list > article { break-inside: avoid; margin-bottom: 12px; }
  .report-section { break-inside: auto; }
  .report-section > h3 { break-after: avoid; }
  .visit-report img { max-width: 100%; object-fit: contain; }
  .report-visit-photos img { height: 190px; }
}
