/* ============================================================
   EXPORT — Druck-/PDF-Ansicht (?export=pdf)
   ============================================================
   Nur im Export-Modus geladen (export.js haengt dieses Stylesheet
   und eine dynamische @page-Regel ein). Jede PDF-Seite ist ein
   iframe mit exakt der Druckflaeche als Viewport; am Bildschirm
   werden die Seiten nur VISUELL skaliert (transform), der innere
   Viewport bleibt pixelgenau wie im Druck.
   ============================================================ */

.export-mode #stage { display: none; }

.pdf-page {
  position: relative;
  overflow: hidden;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pdf-page iframe { display: block; border: 0; }

@media screen {
  .export-mode body { background: #2b2b2b; overflow: auto; }
  .pdf-pages { padding: 56px 24px 24px; }
  /* Wrapper reserviert die skalierte Flaeche (transform aendert das Layout nicht). */
  .pdf-page-box {
    width: calc(var(--page-w) * var(--preview-scale, 1));
    height: calc(var(--page-h) * var(--preview-scale, 1));
    margin: 0 auto 24px;
    overflow: hidden;
  }
  .pdf-page {
    width: var(--page-w);
    height: var(--page-h);
    transform: scale(var(--preview-scale, 1));
    transform-origin: top left;
    box-shadow: 0 2px 18px rgba(0, 0, 0, 0.5);
  }
  .export-status {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    padding: 10px 16px;
    background: #111;
    color: #eee;
    font: 13px/1.4 system-ui, sans-serif;
  }
}

@media print {
  .export-status { display: none; }
  .export-mode body { background: #fff; }
  .pdf-pages { padding: 0; }
  .pdf-page-box {
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
  }
  .pdf-page {
    width: var(--page-w-css);
    height: var(--page-h-css);
    transform: none;
    box-shadow: none;
    break-after: page;
  }
}
