/*
 * Druckbogen (Briefbogen nach DIN 5008) – Ausnahme von der Design-Richtlinie (21.1):
 * Papiermaße, Arial und Schwarz auf Weiß, damit der Ausdruck wie ein Brief aussieht.
 */
#druck { display: none; }
.druckbogen { --marke: #004f9f; --kopfraum: 20mm; --fussraum: 15mm; background: #fff; color: #000; font: 11pt/1.4 Arial, Helvetica, sans-serif; }
.druckbogen h1 { font-size: 16pt; font-weight: 700; margin: 0 0 12pt; }
.druckbogen h2 { font-size: 12pt; font-weight: 700; margin: 12pt 0 4pt; break-after: avoid; }
.druckbogen h3 { font-size: 10.5pt; font-weight: 700; margin: 8pt 0 3pt; break-after: avoid; }
.druckbogen p { margin: 3pt 0; }
.druckbogen table { width: 100%; border-collapse: collapse; margin: 8pt 0; }
.druckbogen th, .druckbogen td { border-bottom: 1px solid #999; padding: 4pt 6pt; text-align: left; vertical-align: top; font-size: 10pt; }
.druckbogen th { background: #eee; }
.druckbogen .absender { font-size: 8pt; border-bottom: 1px solid #000; display: inline-block; margin-bottom: 6pt; }
.druckbogen .anschrift { min-height: 30mm; white-space: pre-line; }
.druckbogen .datum { text-align: right; margin: 0 0 12pt; }
.druckbogen .freitext { white-space: pre-wrap; }
.druckbogen th:has(+ .ausfuellen) { width: 40%; }
.druckbogen .ausfuellen { height: 12mm; }
.druckbogen .ausfuellhilfe { font-size: 8pt; font-weight: 400; }
.druckbogen .unterschrift { margin-top: 30pt; display: flex; gap: 40pt; break-inside: avoid; }
.druckbogen .unterschrift div { flex: 1 1 0; border-top: 1px solid #000; padding-top: 4pt; font-size: 9pt; }
.druckbogen .fuss { font-size: 8pt; margin-top: 12pt; }

/* A4-Seiten (window.seitenSetzen): fester Textbereich je Seite; die Quelle bleibt unsichtbar */
.druckquelle { display: none; }
.druckseiten { display: flex; flex-direction: column; align-items: center; gap: 6mm; overflow-x: auto; }
.druckseite { position: relative; flex: none; width: 210mm; height: 297mm; overflow: hidden; box-shadow: 0 1px 4px rgb(0 0 0 / 25%); }
.druckseite__inhalt { position: absolute; top: var(--kopfraum); bottom: var(--fussraum); left: 25mm; right: 20mm; overflow: hidden; }
.druckseite__inhalt > :where(:first-child) { margin-top: 0; }
.druckseite__fuss { position: absolute; left: 25mm; right: 20mm; bottom: calc(var(--fussraum) - 7mm); display: flex; justify-content: space-between; gap: 8pt; font-size: 8pt; color: #444; }

/* Briefbogen aus den Einstellungen: Bild hinter jeder Seite, Platz für Kopf und Fuß des Briefbogens */
.druckbogen_briefbogen { --kopfraum: 40mm; --fussraum: 27mm; }
.druckbogen_briefbogen .absender { margin-top: 5mm; }
.druckseite__briefbogen { position: absolute; top: 0; left: 0; width: 210mm; height: 297mm; }

/* Vordruck mit Ankreuzfeldern (Fachunternehmererklärung) */
.druckbogen_formular h1 { color: var(--marke); font-size: 15pt; margin-bottom: 2pt; }
.druckbogen .untertitel { margin: 0 0 8pt; font-size: 9pt; color: #555; }
.druckbogen .kopfangaben { display: grid; grid-template-columns: 1fr 1fr; gap: 5pt 16pt; margin: 0 0 6pt; padding: 6pt 0; border-top: 1px solid #999; border-bottom: 1px solid #999; }
.druckbogen .kopfangaben dt { font-size: 7.5pt; color: #555; text-transform: uppercase; letter-spacing: .03em; }
.druckbogen .kopfangaben dd { margin: 0; font-size: 10pt; }
.druckbogen .kopfangaben__breit { grid-column: 1 / -1; }
.druckbogen .ziffer h2 { color: var(--marke); font-size: 11.5pt; border-bottom: 1.5pt solid var(--marke); padding-bottom: 2pt; margin: 12pt 0 5pt; }
.druckbogen .ziffer__nr { display: inline-block; min-width: 8mm; }
.druckbogen .ziffer__hinweis { font-size: 8pt; font-weight: 400; font-style: italic; color: #555; margin-left: 8pt; }
.druckbogen .teil { margin: 4pt 0 8pt; padding-left: 3mm; border-left: 2pt solid #ffd200; }
.druckbogen .teil h3 { margin-top: 0; }
.druckbogen .kreuz { display: flex; gap: 6pt; margin: 2.5pt 0; font-size: 9.5pt; color: #444; break-inside: avoid; }
.druckbogen .kreuz_an { color: #000; }
.druckbogen .kasten { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 3.4mm; height: 3.4mm; margin-top: .4mm; border: 1px solid #000; font-size: 8pt; font-weight: 700; line-height: 1; color: #000; }
.druckbogen .verweis { margin-left: 6pt; font-size: 8pt; color: #666; white-space: nowrap; }
.druckbogen .kreuzreihe { display: flex; flex-wrap: wrap; align-items: center; gap: 3pt 14pt; margin: 3pt 0; font-size: 9.5pt; }
.druckbogen .kreuzreihe .kreuz { display: inline-flex; align-items: center; margin: 0; }
.druckbogen .kreuzreihe .kasten { margin-top: 0; }
.druckbogen .werte { margin: 3pt 0 5pt; }
.druckbogen .werte th { width: 62%; background: #f2f4f8; font-weight: 400; font-size: 9pt; padding: 3pt 6pt; }
.druckbogen .werte td { font-size: 10pt; font-weight: 700; padding: 3pt 6pt; }
.druckbogen .werte .ausfuellen { height: 7mm; }
.druckbogen .formulartext { font-size: 9.5pt; }
.druckbogen .betont { font-weight: 700; }
.druckbogen_formular .formularhinweis { margin: 10pt 0 6pt; padding: 4pt 6pt; border: 1px solid var(--marke); background: #eef3fa; font-size: 8.5pt; }
.druckbogen_formular .unterschrift { margin-top: 18pt; }
.druckbogen_formular .unterschrift div { border-top: 0; padding-top: 0; font-size: 8pt; color: #444; }
.druckbogen .unterschrift__wert { display: block; min-height: 14pt; margin-bottom: 2pt; border-bottom: 1px solid #000; font-size: 10pt; color: #000; }
.druckbogen_formular .fuss { margin-top: 8pt; }

@media print {
  @page { size: A4; margin: 0; }
  body { background: #fff; }
  #app, .einblendung { display: none !important; }
  #druck { display: block; }
  .druckseiten { display: block; overflow: visible; }
  .druckseite { box-shadow: none; break-after: page; }
  .druckseite:last-child { break-after: auto; }
}
