/* ═══════════════════════════════════════════════════════════
   PORTBILL — APP-PAGE PRINT SAFETY NET
   Governs a native browser print of the underlying app page
   (e.g. Ctrl+P without going through the print-preview dialog).
   The actual bill document is built by buildInvoiceHtml() in
   src/platform.js and rendered into its own iframe — this file
   never affects that output.
═══════════════════════════════════════════════════════════ */

@media print {
  .card { opacity: 1 !important; animation: none !important; }
  .module-page { display: block !important; }
  .module-page:not(.active) { display: none !important; }

  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
    box-shadow: none !important;
  }

  body { background: #fff; color: #111; font-size: 11pt; }
  body::before { display: none; }

  .app-sidebar, .app-topbar, .mobile-action-bar, #sidebarScrim,
  .overlay, dialog, footer.copyright-footer,
  .weight-note, .cargo-note, .print-btn, .sp, .pvr, #pb-toast, .pwa-banner {
    display: none !important;
  }

  .app-shell { display: block; }
  .wrap { max-width: none; padding: 0; }
  .layout { display: block; }

  .pgtitle { color: #111; font-size: 22pt; }
  .pgsub { color: #555; }
  .card { background: #fff; border-color: #ddd; break-inside: avoid; }
  .ibar { background: #f5f5f5; border-color: #ddd; }
  .il, .iv { color: #111; }
  .bt th, .bt td { color: #111; border-color: #ddd; }
  .bt tr.tot td, .bt tr.grand td { background: #f0f0f0; color: #111; }
  .gbox { background: #fff; border: none; border-top: 3px solid #c4943a; }
  .gval { color: #111; }
  .rtitle, .slbl { color: #111; }
}
