/* Print and PDF-from-the-browser style (Jeff's consistency brief, item 1). One sheet for every document screen: estimate, change order,
   invoice and purchase order. The page you print is the page on the screen without the app around it: no header, bottom bar, test-site bar,
   notices or buttons; letter size; no row, group or signature block cut in half; table headings repeat on each page; numbers stay right-aligned.
   This is NOT a new PDF engine. Estimates and Elevate Florida bids keep their own real PDF files; everything else uses the browser's Print or
   Save as PDF. Wrap a document screen in `.jas-doc`; mark anything that must never print with `.jas-no-print`; a row that must stay whole with `.jas-row`. */
@page { size: letter; margin: 0.5in; }

@media print {
  html, body { background: #fff !important; color: #000; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  body { padding: 0 !important; margin: 0 !important; min-height: 0 !important; }

  /* The app around the document */
  .jas-header, .jas-tabbar, .jas-backbar, [data-test-site-banner], #notice, #alert, .jas-no-print, .print\:hidden,
  header.jas-header, nav.jas-tabbar, nav[aria-label="Main"] { display: none !important; }
  main { padding: 0 !important; max-width: none !important; }
  .page-frame { max-width: none !important; width: 100% !important; }

  /* Buttons and form controls: nothing to press on paper. Boxes the person typed in print as plain text. */
  .jas-doc button, .jas-doc input[type="submit"], .jas-doc input[type="button"], .jas-doc input[type="checkbox"], .jas-doc input[type="hidden"],
  .jas-doc summary, .jas-doc [role="button"] { display: none !important; }
  .jas-doc input:not([type="hidden"]), .jas-doc select, .jas-doc textarea {
    border: 0 !important; background: transparent !important; box-shadow: none !important; padding: 0 !important; -webkit-appearance: none; appearance: none; color: inherit;
  }
  .jas-doc, .jas-doc * { box-shadow: none !important; }
  .jas-doc { background: #fff !important; padding: 0 !important; }
  .jas-doc a { color: inherit; text-decoration: none; }

  /* Tables: heading repeats on every page, a row is never cut in half, numbers stay on the right */
  .jas-doc table { width: 100%; border-collapse: collapse; }
  .jas-doc thead { display: table-header-group; }
  .jas-doc tfoot { display: table-footer-group; }
  .jas-doc tr, .jas-doc li, .jas-doc .jas-row, .jas-doc .jas-keep, .jas-doc dt, .jas-doc dd { break-inside: avoid; page-break-inside: avoid; }
  .jas-doc tr.jas-group, .jas-doc h1, .jas-doc h2, .jas-doc h3, .jas-doc h4 { break-after: avoid; page-break-after: avoid; }
  .jas-doc .jas-num, .jas-doc td.text-right, .jas-doc th.text-right { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
  .jas-doc .jas-table th, .jas-doc .jas-table td { padding-top: 3px; padding-bottom: 3px; }
  .jas-doc .jas-table tbody tr:hover > td { background: transparent; }
}
