/* ============================================================================
   wivo.my — print / export to PDF
   Everything that is interface disappears; the paper becomes the page.
   ========================================================================= */

@page {
  size: A4;
  margin: 20mm 18mm;
}

@media print {
  html, body { height: auto; overflow: visible; background: #fff; }

  .rail, .titlebar, .ribbon, .statusbar, .panel, .ruler,
  .bubble, .slash, .menu, .toasts, .backdrop, .viz-tip,
  .page-edge, .work-bar { display: none !important; }

  #app { display: block; height: auto; }
  .frame { display: block; }
  .mode-body { position: static; }
  .ws { position: static; display: none; }
  .ws.is-active { display: block; }

  .write-body { display: block; }
  .canvas {
    display: block;
    background: #fff !important;
    background-image: none !important;
    padding: 0;
    overflow: visible;
  }

  .paper {
    width: auto !important;
    border: 0;
    box-shadow: none;
    transform: none !important;
    background: #fff;
  }
  .paper-inner {
    padding: 0 !important;
    font-size: 11.5pt;
    line-height: 1.5;
    color: #000;
  }
  .paper-inner h1, .paper-inner h2, .paper-inner h3, .paper-inner h4 { break-after: avoid; color: #000; }
  .paper-inner p, .paper-inner li, .paper-inner blockquote { orphans: 3; widows: 3; }
  .paper-inner table, .paper-inner figure, .paper-inner pre { break-inside: avoid; }
  .doc-pagebreak { break-after: page; border: 0; height: 0; margin: 0; }
  .doc-pagebreak::after { display: none; }
  .cmt-anchor { background: none; box-shadow: none; }

  /* Charts print with the texture channel on — hue alone cannot survive
     a greyscale printer. */
  .viz-card, .tile { break-inside: avoid; border-color: #bbb; }
  .viz-body { padding: 0; }
}
