/* ════════════════════════════════════════════════════════════════════
   S72-5C-1 — Dokumentvorschau-Toggle (Angebots- + Rechnungs-Editor)
   Additiver Sibling zu #paperAngebot in faktura_editor_core.js:
   renderPaperShell(). Zeigt POST /api/faktura/render-preview in einem
   sandbox-iframe (kein allow-scripts) statt das Server-HTML per innerHTML
   in die App-Seite einzubetten — Begruendung siehe Kommentar im HTML.
   ════════════════════════════════════════════════════════════════════ */

/* Fix 10.08.2026: height:100% lief gegen .canvas/.shell ohne eigene definierte
   Hoehe ins Leere (Grid-Zelle waechst mit Inhalt) -> iframe fiel auf den
   Browser-Default 300x150px zurueck. calc(100vh - 100px) ist dieselbe
   Viewport-Offset-Konvention wie .shell/.rail (siehe angebots-editor.apex.css)
   - konsistent statt neu erfunden. Breite = exakt .paper (210mm DIN A4 fix,
   siehe Kommentar dort "bleibt unangetastet") statt 100%, damit die Vorschau
   optisch an derselben Stelle/Groesse wie das Papier erscheint, das sie ersetzt. */
.apex-docpreview {
  display: flex;
  flex-direction: column;
  width: 210mm;
  height: calc(100vh - 100px);
  min-height: 0;
}

.apex-docpreview[hidden] { display: none; }

.apex-docpreview-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 14px;
  background: #F2F2F7;
  border-bottom: 1px solid #D1D1D6;
  flex: 0 0 auto;
}

.apex-docpreview-hint {
  font: 500 12px/1.3 'Inter';
  color: #1C1C1E;
}

/* S73-Mini Fix (2026-08-11): render-preview liefert dasselbe Dokument-HTML
   wie der PDF-Export (briefvorlage_v2.js, byte-identisch, Sperrzone —
   unangetastet). Dessen <body> traegt nur das linke 25mm-Padding fest
   einprogrammiert; oben/rechts/unten (12mm/20mm/12mm) kommen im echten
   Druck/PDF ausschliesslich aus der @page-Regel des Puppeteer-Renderers —
   im schlichten <iframe>-Browserkontext (kein Print-/PDF-Kontext) greift
   @page nicht, das Dokument fuellt also den Frame kantenbuendig bis zum
   rechten/oberen/unteren Rand. Frueher versuchte width:calc(100% + 17px)
   + overflow-x:hidden auf .apex-docpreview einen (hier nie vorhandenen)
   Scrollbalken zu kompensieren — das verschob den Briefkopf 17px zu weit
   nach rechts UND schnitt echten Inhalt am rechten Rand ab, statt Leerraum.
   Fix: box-sizing:border-box + padding = exakt dieselbe @page-Formel, die
   .paper bereits als eigene Randbreite nutzt (siehe Kommentar dort), diesmal
   als Frame-Padding statt Dokument-Padding — links 0, da im Dokument-<body>
   bereits vorhanden. Ergebnis: Briefkopf oben rechts deckt sich pixelgenau
   mit dem Editor (verifiziert per Live-Messung, Delta < 0.2px). */
.apex-docpreview-frame {
  flex: 1 1 auto;
  box-sizing: border-box;
  width: 100%;
  padding: 12mm 20mm 12mm 0;
  min-height: 0;
  border: 0;
  background: #fff;
}

/* Aktiver Toggle-Zustand am Button selbst (optische Rueckmeldung) */
#btnDocPreview.is-active {
  background: #1C1C1E;
  color: #fff;
  border-color: #1C1C1E;
}
