/* blatt-druck.css — [NEUE-VERSION] (Fenster AU, Auftrag 128)
   Ergänzung zu css/beurteilen-druck.css (die .bd-…-Klassen und Druckregeln dort bleiben unverändert und
   werden benutzt). Nur neue Klassen .bl-…. Schwarz-weiss lesbar, keine Schrift unter 9 pt; Flächen der
   Grafiken sind SVG-Inhalt (drucken auch ohne «Hintergrundgrafiken»). */

/* Kasten: etwas breiter als beim Beurteilungsblatt, weil die Etiketten Sätze sind */
.bl-kasten { width: 64mm; }
.bl-kasten b { font-size: 11pt; white-space: nowrap; }
.bl-kasten b.bl-gross { font-size: 15pt; }
.bl-kasten__trenn { border-top: 1px solid #000; padding-top: 1mm; }
.bl-hinweis { margin: 2mm 0 0; font-size: 9pt; font-style: italic; }

/* Grafiken: Breite des Blatts, Masse in mm aus der viewBox */
.bl-grafik { display: block; width: 100%; height: auto; margin: 4mm 0 0; overflow: visible; }
.bl-abschnitt { margin: 5mm 0 0; break-inside: avoid; page-break-inside: avoid; }
.bl-abschnitt h2 { font-size: 11pt; margin: 0 0 1mm; }
.bl-satz { margin: 1mm 0 0; font-size: 9pt; }
.bl-saetze p { margin: 1mm 0 0; font-size: 10pt; }
.bl-sterne { display: inline-block; width: auto; height: 3mm; vertical-align: -0.3mm; }
.bl-sterne-zeile { margin: 1mm 0 0; font-size: 10pt; }

/* [NEUE-VERSION] (Auftrag 312) Ein Blatt je Kind = eine Seite: die Grafik bleibt beim Verkleinern gleich breit im Satz, sonst schrumpft sie nicht mit. Engere Stufen wie beim Beurteilungsblatt. */
.bd-seite__inhalt .bl-grafik { max-width: 186mm; }
.bl-eng .bl-abschnitt { margin-top: 3mm; }
.bl-eng .bl-grafik { margin-top: 2mm; }
.bl-eng .bl-tabelle .bl-zeile td { padding: 0.5mm 2mm; }
.bl-enger .bd-seite__inhalt { line-height: 1.15; }
.bl-enger .bl-abschnitt { margin-top: 1.5mm; }
.bl-enger .bl-grafik { margin-top: 1mm; max-width: 160mm; }
.bl-enger .bl-tabelle .bl-zeile td { padding: 0.25mm 1.5mm; }
.bl-enger .bd-fuss { margin-top: 2mm; gap: 1.5mm; }
.bl-enger .bd-linie { height: 4.5mm; }

/* Tabelle je Serie */
.bl-tabelle td, .bl-tabelle th { font-size: 9.5pt; }
.bl-tabelle .bl-rechts { text-align: right; white-space: nowrap; }
.bl-tabelle .bl-mitte { text-align: center; white-space: nowrap; }
.bl-tabelle .bl-zeile td { padding: 1mm 2mm; }

/* Klassenmatrix (quer) */
.bl-matrix .bl-m-kopf span { display: block; }
.bl-matrix .bl-m-ober { font-weight: normal; font-size: 9pt; }
.bl-matrix td.bl-m-zelle { position: relative; padding: 0; height: 5.6mm; }
.bl-m-svg { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; }
.bl-m-text { position: relative; font-variant-numeric: tabular-nums; white-space: nowrap; }
.bl-m-status { text-align: left !important; white-space: nowrap; }
.bl-m-fort, .bl-m-zuletzt { white-space: nowrap; }
.bl-legende-text { margin: 2mm 0 0; font-size: 9pt; line-height: 1.6; }
.bl-legende-feld { display: inline-block; vertical-align: -1mm; }
.bl-antworten { margin: 3mm 0 0; font-size: 9.5pt; }
.bl-antworten p { margin: 0 0 1mm; }

/* Querblatt: Kasten rechts neben dem Titel */
.bl-kopf--quer h1 { font-size: 14pt; }
.bl-kopf--quer .bd-angaben { grid-template-columns: repeat(3, auto); gap: 1mm 6mm; }
.bl-kopf--quer .bd-angaben dt { width: auto; }

/* Übersicht am Bildschirm (Fenster «Übersicht»): eigener Dialog, nicht gedruckt */
.bl-uebersicht { position: fixed; inset: 0; z-index: 8900; background: rgba(0, 0, 0, 0.35); display: flex; align-items: flex-start; justify-content: center;
  overflow: auto; -webkit-overflow-scrolling: touch; font-family: Arial, Helvetica, sans-serif; }
.bl-uebersicht__karte { box-sizing: border-box; width: min(820px, calc(100% - 32px)); margin: 24px 16px; background: #fff; color: #111;
  border-radius: 8px; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3); padding: 16px; }
.bl-uebersicht__kopf { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.bl-uebersicht__kopf h2 { margin: 0; font-size: 1.2rem; }
.bl-uebersicht__wahl { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 12px 0; }
.bl-uebersicht__wahl select, .bl-uebersicht__wahl input { min-height: 44px; font-size: 1rem; padding: 0 8px; }
.bl-uebersicht__knoepfe { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.bl-uebersicht textarea { box-sizing: border-box; width: 100%; min-height: 88px; font: inherit; padding: 8px; }
.bl-uebersicht__eltern { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
.bl-uebersicht__eltern input { width: 22px; height: 22px; }
.bl-uebersicht__zahlen { font-size: 1.05rem; margin: 8px 0; }
.bl-uebersicht__status { color: #555; }
.bl-uebersicht__fehler { color: #8a1c1c; }
@media print { .bl-uebersicht { display: none !important; } }
