/* =====================================================================
   Druckansicht des Aufnahmeantrags (A4). Wird per window.print() genutzt.
   Es wird ausschließlich #csc-print-root gedruckt – keine Navigation,
   keine Buttons, keine Website-Elemente.
   ===================================================================== */

/* Bildschirm: Druck-Wurzel unsichtbar (JS befüllt sie erst beim Druck). */
.csc-print-root { display: none; }

@page {
  size: A4;
  margin: 18mm 16mm 16mm 16mm;
}

@media print {
  /* Alles ausblenden, nur die Druck-Wurzel zeigen.
     JS verschiebt #csc-print-root vor dem Druck als direktes Kind von <body>. */
  body > * { display: none !important; }
  #csc-print-root { display: block !important; }

  html, body { background: #fff !important; margin: 0 !important; padding: 0 !important; }

  .csc-print-root {
    display: block; color: #14251a; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 10.5pt; line-height: 1.4;
  }
  .pr-doc { width: 100%; }

  /* Zentrierter Kopf mit großem Logo */
  .pr-head { text-align: center; border-bottom: 2pt solid #14331f; padding-bottom: 12pt; margin-bottom: 16pt; }
  .pr-logo { display: block; width: 30mm; height: auto; margin: 0 auto 6pt; }
  .pr-head__eyebrow { font-size: 8.5pt; letter-spacing: .18em; text-transform: uppercase; color: #a97d1c; font-weight: 700; margin: 0 0 4pt; }
  .pr-head h1 { font-size: 24pt; margin: 0 0 5pt; color: #14331f; line-height: 1.05; }
  .pr-head__meta { font-size: 9pt; color: #444; margin: 0 0 8pt; }
  .pr-head__type { display: inline-block; padding: 3pt 12pt; border: 1pt solid #14331f; border-radius: 4pt; font-weight: 700; font-size: 10pt; color: #14251a; }

  .pr-section { margin-bottom: 12pt; break-inside: avoid; }
  .pr-section__title {
    font-size: 8.5pt; letter-spacing: .12em; text-transform: uppercase; font-weight: 700; color: #245231;
    border-bottom: 1.5pt solid #245231; padding-bottom: 3pt; margin: 0 0 6pt;
  }
  .pr-row { display: flex; gap: 10pt; padding: 3pt 0; break-inside: avoid; }
  .pr-row .pr-k { flex: 0 0 44%; color: #555; }
  .pr-row .pr-v { flex: 1; font-weight: 600; color: #14251a; }

  .pr-text { margin: 0 0 5pt; font-size: 9.5pt; line-height: 1.45; color: #14251a; }
  .pr-text:last-child { margin-bottom: 0; }

  .pr-consents { list-style: none; margin: 0; padding: 0; }
  .pr-consents li { position: relative; padding: 3pt 0 3pt 16pt; font-size: 9.5pt; break-inside: avoid; }
  .pr-consents li::before { content: "\2713"; position: absolute; left: 0; top: 3pt; color: #245231; font-weight: 700; }
  .pr-consents li b { color: #14331f; }

  .pr-note { border: 1pt solid #14331f; border-radius: 4pt; padding: 7pt 9pt; font-size: 9pt; margin: 10pt 0; break-inside: avoid; }
  .pr-note b { color: #14331f; }

  .pr-sign { display: flex; gap: 20pt; margin-top: 22pt; break-inside: avoid; }
  .pr-sign__field { flex: 1; }
  .pr-sign__line { border-top: 1pt solid #14251a; padding-top: 3pt; font-size: 8.5pt; color: #555; margin-top: 34pt; }

  /* Einreichungs-Hinweis (Box) */
  .pr-submit { margin-top: 20pt; background: #f4efe1; border: 1pt solid #d6d0be; border-radius: 5pt; padding: 10pt 12pt; font-size: 9.5pt; overflow-wrap: anywhere; break-inside: avoid; }
  .pr-submit p { margin: 0 0 5pt; }
  .pr-submit__addr { line-height: 1.45; }
  .pr-submit__addr b { color: #14331f; }
  .pr-submit__thanks { margin: 12pt 0 0; text-align: center; font-weight: 700; color: #14331f; }

  /* Interner Vermerk – tiefer, mit sauberen Ausfülllinien */
  .pr-office { margin-top: 26pt; border: 1pt solid #cfc8b4; border-radius: 5pt; padding: 10pt 12pt 12pt; break-inside: avoid; }
  .pr-office .pr-section__title { border: 0; margin-bottom: 8pt; }
  .pr-office__row { display: flex; align-items: flex-end; gap: 10pt; padding: 5pt 0; break-inside: avoid; }
  .pr-office__label { flex: 0 0 46%; font-size: 9.5pt; color: #33413a; }
  .pr-office__line { flex: 1; border-bottom: .6pt solid #999; height: 12pt; }
  .pr-office__check { flex: 1; display: flex; align-items: center; justify-content: flex-end; gap: 6pt; font-size: 9pt; color: #555; }
  .pr-box { display: inline-block; width: 11pt; height: 11pt; border: 1pt solid #555; border-radius: 2pt; }
  .pr-sign--office { margin-top: 22pt; }
  .pr-sign--office .pr-sign__field { flex: 0 0 55%; }

  .pr-foot { margin-top: 12pt; padding-top: 6pt; border-top: .5pt solid #cfc8b4; font-size: 8pt; color: #777; display: flex; justify-content: space-between; }

  .pr-pagebreak { break-before: page; }

  a[href]::after { content: ""; } /* keine URL-Anhänge im Druck */
}
