@page {
  size: A4 portrait;
  margin: 0;
}

@media print {
  html, body {
    margin: 0 !important;
    padding: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body > * { display: none !important; }

  main.workspace,
  section.preview-panel,
  .page-shell,
  #fblPage,
  #fblPage .print-layer,
  #fblPage .field {
    display: block !important;
  }

  main.workspace,
  section.preview-panel,
  .page-shell {
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    box-shadow:none !important;
    width:210mm !important;
    height:296.6mm !important;
    overflow:hidden !important;
    position:static !important;
  }

  .preview-toolbar { display:none !important; }

  #fblPage {
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:210mm !important;
    height:296.6mm !important;
    max-height:296.6mm !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    box-shadow:none !important;
    overflow:hidden !important;
    page-break-before:avoid !important;
    page-break-after:avoid !important;
    break-before:avoid-page !important;
    break-after:avoid-page !important;
  }

  .print-layer {
    position:absolute !important;
    inset:0 !important;
    width:210mm !important;
    height:296.6mm !important;
    overflow:hidden !important;
  }

  .field { color:#000 !important; }

  /* Original mode prints VARIABLE DATA ONLY.
     Test mode prints template + variable data. */
  body:not(.test-print) #templateImage {
    display:none !important;
  }

  body.test-print #templateImage {
    display:block !important;
    position:absolute !important;
    inset:0 !important;
    width:210mm !important;
    height:296.6mm !important;
    object-fit:fill !important;
    opacity:1 !important;
  }
}
