/* Bericht (HTML und PDF). Ergänzt kit.css und marke.css; wird von liefern.js eingebettet. */
.bericht code { overflow-wrap: anywhere; word-break: break-word; }
.bericht .bericht-kopf table { width: 100%; table-layout: fixed; }
.bericht .bericht-kopf th { width: 9rem; text-align: left; vertical-align: top; }
.bericht .bericht-kopf td { overflow-wrap: anywhere; }
.befund { display: inline-block; padding: .1rem .5rem; border-radius: 999px; font-size: .82rem; font-weight: 650; white-space: nowrap; border: 1.5px solid transparent; line-height: 1.35; }
.befund-ok { background: #e3f3ea; color: #145c34; border-color: #145c34; }
.befund-abw { background: #fde7e5; color: #8f1c12; border-color: #8f1c12; border-width: 2.5px; }
.befund-frist { background: #fff3d6; color: #6e4300; border-color: #6e4300; }
.befund-na { background: #ffffff; color: #3d3d3d; border-color: #7a7a7a; }
.befund-info { background: #e8eef5; color: #23415f; border-color: #23415f; border-style: dotted; }
.befund-np { background: #f0f0f0; color: #333333; border-color: #555555; border-style: dashed; }
.ergebnis { border: 2px solid; border-radius: .6rem; padding: .8rem 1rem; margin: 1.2rem 0; break-inside: avoid; }
.ergebnis p { margin: .2rem 0; }
.ergebnis-titel { font-size: 1.25rem; font-weight: 700; }
.ergebnis-voll { border-color: #145c34; background: #f2faf5; }
.ergebnis-teil { border-color: #6e4300; background: #fffaf0; border-style: dashed; }
.ergebnis-fehl { border-color: #8f1c12; background: #fff5f4; border-width: 3px; }
.ueberblick { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1rem 0; }
.kasten { border: 1px solid #c9c9c9; border-radius: .5rem; padding: .7rem .9rem; break-inside: avoid; min-width: 0; }
.kasten h3 { margin: 0 0 .3rem; font-size: 1.05rem; }
.kasten-abw { border-left: 6px solid #8f1c12; } .kasten-na { border-left: 6px solid #7a7a7a; } .kasten-np { border-left: 6px dashed #555; }
.befundliste { padding-left: 1.1rem; margin: .4rem 0; } .befundliste li { margin: .25rem 0; overflow-wrap: anywhere; }
.bereich { color: #555; }
.leer { font-style: italic; }
.zaehlung { line-height: 2; }
.schritte-liste { padding-left: 1.4rem; }
.schritt { margin: 0 0 1.1rem; break-inside: avoid; }
.schritt-titel { font-weight: 700; margin-bottom: .2rem; }
.schritt-prio { display: inline-block; font-size: .78rem; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; border: 1px solid currentColor; border-radius: .3rem; padding: 0 .35rem; margin-right: .3rem; }
.schritt-optional .schritt-prio { border-style: dashed; }
pre.konfig { white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-all; font-size: .82rem; padding: .5rem .7rem; background: #f6f6f6; border-radius: .3rem; }
.kennung { display: inline-block; font-family: var(--schrift-mono, ui-monospace, monospace); font-size: .78rem; font-weight: 600; color: #3d3d3d; border: 1px solid #9a9a9a; border-radius: .25rem; padding: 0 .3rem; white-space: nowrap; }
.beleg { color: #555; font-size: .85rem; }
.abweichungen { border: 2px solid #3d3d3d; border-radius: .6rem; padding: .6rem 1rem; margin: 1rem 0; break-inside: avoid; }
.abweichungen p { margin: .2rem 0; } .abweichungen-titel { font-size: 1.1rem; font-weight: 700; }
.wichtigste { padding-left: 1.4rem; } .wichtigste > li { margin: 0 0 .7rem; break-inside: avoid; } .wichtigste p { margin: .1rem 0; }
.ueberblick-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.kriterien li { margin: .15rem 0; }
.zert-tabelle { width: 100%; table-layout: fixed; border-collapse: collapse; }
.zert-tabelle th { width: 11rem; text-align: left; vertical-align: top; padding: .35rem .5rem .35rem 0; }
.zert-tabelle td { vertical-align: top; overflow-wrap: anywhere; padding: .35rem 0; }
.zert-tabelle tr { border-bottom: 1px solid #ddd; break-inside: avoid; }
.zert-tabelle ul, .zert-tabelle ol { margin: .2rem 0; padding-left: 1.2rem; }
code.fingerabdruck { word-break: break-all; }
.befund-tabelle { width: 100%; table-layout: fixed; border-collapse: collapse; }
.befund-tabelle col.c-merkmal { width: 29%; } .befund-tabelle col.c-ergebnis { width: 15%; } .befund-tabelle col.c-text { width: 40%; } .befund-tabelle col.c-fund { width: 16%; }
.befund-tabelle th, .befund-tabelle td { vertical-align: top; text-align: left; overflow-wrap: anywhere; padding: .35rem .4rem; border-bottom: 1px solid #ddd; }
.befund-tabelle .befund { white-space: normal; }
.legende { list-style: none; padding-left: 0; } .legende li { margin: .35rem 0; }
@media (max-width: 760px) {
  .ueberblick { grid-template-columns: 1fr; }
  .bericht .bericht-kopf th { width: 7.8rem; padding-right: .5rem; }
  .befund-tabelle, .befund-tabelle tbody, .befund-tabelle tr, .befund-tabelle td { display: block; width: 100%; }
  .befund-tabelle colgroup, .befund-tabelle thead { display: none; }
  .befund-tabelle tr { border: 1px solid #ddd; border-radius: .4rem; margin: 0 0 .6rem; padding: .3rem .2rem; }
  .befund-tabelle td { border: 0; padding: .2rem .4rem; }
  .befund-tabelle td::before { content: attr(data-label) ": "; font-weight: 650; color: #555; }
  .tabelle-scroll { overflow-x: visible; }
  .zert-tabelle, .zert-tabelle tbody, .zert-tabelle tr, .zert-tabelle th, .zert-tabelle td { display: block; width: 100%; }
  .zert-tabelle th { padding-bottom: 0; }
}
@media print {
  .ueberblick { grid-template-columns: 1fr; gap: .5rem; }
  .befund-tabelle tr { break-inside: avoid; }
  .schritt { break-inside: auto; } .schritt-titel, .schritt p.klein strong { break-after: avoid; } pre.konfig { break-inside: avoid; }
  h2, h3 { break-after: avoid; }
  .seitenumbruch { break-before: page; }
  /* Erste Seite kompakt: Kopf, Messvollständigkeit, Abweichungen und die wichtigsten Maßnahmen passen auf eine A4-Seite */
  .bericht h1 { font-size: 17pt; margin: .2rem 0 .5rem; }
  .bericht h2 { font-size: 13pt; margin: .8rem 0 .3rem; }
  .bericht .oberzeile { margin-bottom: .2rem; }
  .bericht .bericht-kopf th, .bericht .bericht-kopf td { padding-top: .12rem; padding-bottom: .12rem; }
  .ergebnis, .abweichungen { margin: .5rem 0; padding: .4rem .7rem; }
  .ergebnis-titel { font-size: 12pt; } .abweichungen-titel { font-size: 11pt; }
  .wichtigste > li { margin-bottom: .35rem; }
  .bericht .bericht-kopf td, .bericht .bericht-kopf th, .ergebnis p, .abweichungen p, .wichtigste p { line-height: 1.35; }
  .wichtigste p.klein, .ergebnis p.klein, .abweichungen p.klein { font-size: 8.5pt; }
  .wichtigste p, .ergebnis p, .abweichungen p { max-width: none; }
  pre.konfig { font-size: 8pt; }
}
