/* =====================================================================
   lab - werkzeuge/englischblatt/app.css
   Englisch-Blatt: Eingaben links, druckfertige Blätter auf dem Pult
   rechts. Konventionen (AGENTS.md §5):
     - Alle Klassen mit Prefix .lab_ (hier .lab_en_ für Englischblatt)
     - Keine harten Farben, nur Variablen aus css/colors.css
     - Das Blatt bleibt in beiden Modi weiß (--lab-tv-blatt) und trägt
       dunkle Tinte (--lab-tv-blatt-text); Akzent ist das Schulgrün
       (--lab-tv-blatt-akzent) - als Kante und Umrandung, so bleibt
       das Blatt im S/W-Druck lesbar.
   ===================================================================== */

.lab_en_layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.25rem;
  margin-top: 1.25rem;
}

@media (min-width: 64rem) {
  .lab_en_layout {
    grid-template-columns: 24rem minmax(0, 1fr);
    align-items: start;
  }
}

/* ---------- Eingabeseite ---------- */

.lab_en_formular {
  background: var(--ct-color);
  border: var(--lab-border);
  border-radius: 12px;
  padding: 1.1rem 1.2rem 1.25rem;
  box-shadow: var(--lab-shadow-1);
}

.lab_en_titelfeld {
  display: block;
  margin: 1rem 0 0.3rem;
  font-weight: 600;
  font-size: 0.92rem;
}

.lab_en_titeleingabe {
  font-weight: 600;
}

.lab_en_tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  border-bottom: 1px solid var(--lab-border-color);
  padding-bottom: 0.6rem;
}

.lab_en_tab {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  border: 1px solid transparent;
  border-radius: 8px;
  background: none;
  color: var(--grey600-color);
  padding: 0.38rem 0.75rem;
  font: inherit;
  font-size: 0.92rem;
  cursor: pointer;
}

.lab_en_tab:hover { color: var(--blk-color); }

.lab_en_tab[aria-selected="true"] {
  background: var(--div-color);
  border-color: var(--lab-border-color);
  color: var(--blk-color);
  font-weight: 600;
}

.lab_en_tab .lab_icon { flex: none; }

/* Gruppierte Optionen */

.lab_en_gruppe {
  border: 1px solid var(--lab-border-color);
  border-radius: 10px;
  padding: 0.75rem 0.9rem 0.85rem;
  margin: 0.9rem 0 0;
}

.lab_en_gruppe legend {
  padding: 0 0.4rem;
  font-weight: 600;
  font-size: 0.88rem;
  letter-spacing: 0.02em;
  color: var(--grey600-color);
}

.lab_en_gruppe label[for] {
  display: block;
  margin: 0.45rem 0 0.25rem;
  font-size: 0.9rem;
  color: var(--grey600-color);
}

.lab_en_gruppe select { width: auto; max-width: 100%; }

.lab_en_zaehler {
  margin: 0.5rem 0 0;
  font-size: 0.85rem;
  color: var(--grey600-color);
}

.lab_en_wahl {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.92rem;
  margin: 0.3rem 1.1rem 0.15rem 0;
}

.lab_en_zeile {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.lab_en_zeile label { margin: 0; font-size: 0.9rem; color: var(--grey600-color); }

.lab_en_zeile select { min-width: 10rem; }

.lab_en_optionen { margin-top: 0.9rem; }

.lab_en_meldung { margin-top: 0.9rem; }

/* ---------- KI & Austausch ---------- */

.lab_en_ki {
  border: 1px solid var(--lab-border-color);
  border-radius: 10px;
  padding: 0.75rem 0.9rem 0.85rem;
  margin: 0.9rem 0 0;
}

.lab_en_ki summary {
  font-weight: 600;
  font-size: 0.88rem;
  letter-spacing: 0.02em;
  color: var(--grey600-color);
  cursor: pointer;
}

.lab_en_ki_text {
  width: 100%;
  font-family: ui-monospace, Consolas, monospace;
  font-size: 0.8rem;
  margin-top: 0.6rem;
  resize: vertical;
}

.lab_en_ki_knopfzeile {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.6rem;
}

/* ---------- Vorschau: Leiste und Pult ---------- */

.lab_en_leiste {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 0.8rem;
}

.lab_en_leiste .lab_btn { display: inline-flex; align-items: center; gap: 0.45rem; }

.lab_en_leiste_frei { flex: 1 1 auto; }

.lab_en_leiste_text { font-size: 0.88rem; color: var(--grey600-color); }

.lab_en_leiste label {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.9rem;
  color: var(--grey600-color);
}

.lab_en_leiste [aria-pressed="true"] {
  border-color: var(--bt-color);
  color: var(--bt-color);
}

.lab_en_pult {
  background: var(--div-color);
  border: var(--lab-border);
  border-radius: 14px;
  padding: clamp(0.8rem, 3vw, 2rem);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
}

/* ---------- Das Blatt: der Stapel ist transparent, JEDER Seite ist
   eigenes Papier in A4-Proportion (wie im Rechenblatt). Kurzer Inhalt
   bekommt die volle Blatthoehe, langer Inhalt waechst darueber hinaus.
   Gilt nur der Vorschau: Druck und Exporte verteilen die Seiten selbst. */

.lab_en_blatt {
  background: none;
  border: 0;
  box-shadow: none;
  padding: 0;
  min-height: 0;
  width: min(100%, 49rem);
}

.lab_en_seite {
  background: var(--lab-tv-blatt);
  color: var(--lab-tv-blatt-text);
  border: var(--lab-border);
  border-radius: 10px;
  box-shadow: var(--lab-shadow-1);
  padding: 1.7rem 1.9rem;
  min-height: 20rem;
  aspect-ratio: 0.707;
  break-after: page;
}

.lab_en_seite + .lab_en_seite { margin-top: 1.4rem; }

.lab_en_seite:last-of-type { break-after: auto; }

/* Fortsetzungskopf auf Folgeseiten: kleiner Akzent-Strich + Titel,
   Blatt und Seitenzahl (Muster Rechenblatt). */

.lab_en_fortsetzung {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  font-weight: 700;
  font-size: 0.95rem;
  margin: 0 0 1.1rem;
}

.lab_en_fortsetzung::before {
  content: "";
  flex: 0 0 auto;
  width: 1.7rem;
  height: 4px;
  border-radius: 2px;
  background: var(--lab-tv-blatt-akzent);
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.lab_en_blatt_leer {
  color: var(--grey600-color);
  text-align: center;
  padding: 4rem 1rem;
}

/* Auch die Lösungsseite ist ein eigenes Blatt. */

.lab_en_loesung {
  background: var(--lab-tv-blatt);
  color: var(--lab-tv-blatt-text);
  border: var(--lab-border);
  border-radius: 10px;
  box-shadow: var(--lab-shadow-1);
  padding: 1.7rem 1.9rem;
  margin-top: 1.4rem;
  min-height: 20rem;
  break-before: page;
}

/* Blattkopf: helle Waschung mit Akzent-Kante, Titel links, Meta rechts.
     Die Waschung ist bewusst sehr hell - im S/W-Druck bleibt sie ein
     feines Grau und stoert nicht; Titel und Akzent bleiben dunkel. */

.lab_en_blattkopf {
  margin: 0 0 1.3rem;
  text-align: left;
}

.lab_en_kopfbox {
  background: var(--lab-tv-blatt-akzent-zart);
  border-left: 4px solid var(--lab-tv-blatt-akzent);
  border-radius: 10px;
  padding: 1rem 1.2rem 0.95rem;
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.lab_en_kopfreihen {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem 1.2rem;
  flex-wrap: wrap;
}

.lab_en_titel {
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.01em;
  margin: 0;
}

.lab_en_variante {
  display: inline-block;
  border: 1.5px solid var(--lab-tv-blatt-akzent);
  color: var(--lab-tv-blatt-akzent);
  background: var(--lab-tv-blatt);
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.12rem 0.7rem;
  margin-left: 0.55rem;
  vertical-align: 0.25em;
  white-space: nowrap;
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.lab_en_untertitel {
  margin: 0.35rem 0 0;
  font-size: 0.9rem;
  color: var(--lab-tv-blatt-text);
  opacity: 0.68;
}

.lab_en_fachklasse {
  margin: 0;
  font-size: 0.92rem;
  color: var(--lab-tv-blatt-text);
  opacity: 0.68;
  white-space: nowrap;
}

.lab_en_namedatum {
  display: flex;
  justify-content: space-between;
  gap: 2.5rem;
  font-size: 0.95rem;
  margin: 0.9rem 0 0.2rem;
  text-align: left;
}

.lab_en_namedatum span { flex: 1; border-bottom: 1.5px solid var(--lab-tv-blatt-text); padding: 0 0.4rem 0.18rem; }

/* ---------- Kopf-Stile: Waschung (Vorgabe) und weitere Varianten,
     modern (Akzentfarbe) und klassisch (reine Tinte). Alle Varianten
     behalten die Struktur (blattkopf > kopfbox > kopfreihen mit
     titel + fachklasse, untertitel) - nur die Optik der Kopfbox
     bzw. der Seite aendert sich. Papier bleibt weiss - im S/W-Druck
     bleibt alles lesbar (Muster der Rätsel-Werkstatt). ---------- */

/* Linie: Titel auf einer kräftigen Grundlinie, keine Waschung. */
.lab_en_kopf_linie .lab_en_kopfbox {
  background: none;
  border-left: 0;
  border-radius: 0;
  padding: 0.1rem 0 0.55rem;
  border-bottom: 2.5px solid var(--lab-tv-blatt-akzent);
}

/* Farbband: durchgehende Akzent-Flaeche, helle Schrift darauf. */
.lab_en_kopf_band .lab_en_kopfbox {
  background: var(--lab-tv-blatt-akzent);
  border-left: 0;
  border-radius: 10px;
  padding: 0.85rem 1.2rem 0.8rem;
}

.lab_en_kopf_band .lab_en_titel,
.lab_en_kopf_band .lab_en_fachklasse {
  color: var(--lab-tv-blatt);
  opacity: 1;
}

.lab_en_kopf_band .lab_en_untertitel {
  color: var(--lab-tv-blatt);
  opacity: 0.85;
}

.lab_en_kopf_band .lab_en_variante {
  border-color: var(--lab-tv-blatt);
  color: var(--lab-tv-blatt);
  background: transparent;
}

/* Schlicht: nur Schrift, keine Flaeche, keine Kante. */
.lab_en_kopf_schlicht .lab_en_kopfbox {
  background: none;
  border-left: 0;
  border-radius: 0;
  padding: 0.1rem 0 0;
}

/* Karte (modern): weisse Karte mit feiner Tinten-Kante und kurzem
   Akzent-Strich oben - klar und flach. */
.lab_en_kopf_karte .lab_en_kopfbox {
  background: none;
  border: 1.25px solid var(--lab-tv-blatt-text);
  border-radius: 10px;
  padding: 1rem 1.2rem 0.95rem;
  position: relative;
}

.lab_en_kopf_karte .lab_en_kopfbox::before {
  content: "";
  position: absolute;
  top: -1.25px;
  left: 1.2rem;
  width: 3.2rem;
  height: 4px;
  background: var(--lab-tv-blatt-akzent);
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

/* Balken (modern): kraeftige Akzent-Leiste ueber dem Titel. */
.lab_en_kopf_balken .lab_en_kopfbox {
  background: none;
  border-left: 0;
  border-radius: 0;
  border-top: 7px solid var(--lab-tv-blatt-akzent);
  padding: 0.6rem 0 0.35rem;
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

/* Doppellinie (klassisch): dicke Tintenlinie mit feiner Linie
   darunter - die klassische Schulbuch-Grundlinie. */
.lab_en_kopf_doppellinie .lab_en_kopfbox {
  background: none;
  border-left: 0;
  border-radius: 0;
  border-bottom: 3px solid var(--lab-tv-blatt-text);
  padding: 0.1rem 0 0.45rem;
  position: relative;
}

.lab_en_kopf_doppellinie .lab_en_kopfbox::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -5px;
  height: 1.5px;
  background: var(--lab-tv-blatt-text);
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

/* Kopfkasten (klassisch): Kopf im Doppelrahmen. */
.lab_en_kopf_kopfkasten .lab_en_kopfbox {
  background: none;
  border: 4px double var(--lab-tv-blatt-text);
  border-radius: 0;
  padding: 0.7rem 1.1rem 0.65rem;
}

/* Seitenrahmen (klassisch): feiner Doppelrahmen um die GANZE Seite
   (Klasse lab_en_rahmenseite an der Blattseite, gesetzt in
   blattBauen), der Kopf selbst bleibt schriftlich wie "Schlicht". */
.lab_en_kopf_rahmen .lab_en_kopfbox {
  background: none;
  border-left: 0;
  border-radius: 0;
  padding: 0.1rem 0 0;
}

.lab_en_rahmenseite {
  border: 4px double var(--lab-tv-blatt-text);
  border-radius: 0;
}

/* Titel-Ausrichtung Mitte: Kopfreihe stapelt, alles zentriert. */
.lab_en_kopf_mitte { text-align: center; }

.lab_en_kopf_mitte .lab_en_kopfreihen {
  flex-direction: column;
  align-items: center;
}

.lab_en_kopf_mitte .lab_en_fachklasse { margin-top: 0.15rem; }

/* Kopfzeile: kleine Grossbuchstaben-Zeile ueber dem Titel
     (Schulname, Thema, ...). Auf dem Farbband hell statt gruen. */
.lab_en_kopfzeile {
  margin: 0 0 0.3rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--lab-tv-blatt-akzent);
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.lab_en_kopf_band .lab_en_kopfzeile { color: var(--lab-tv-blatt); }

/* ---------- Aufgaben: Verb-Tabelle ---------- */

.lab_en_tabelle {
  width: 100%;
  max-width: 42rem;
  margin: 0.6rem 0 0;
  border-collapse: collapse;
  font-size: 1.02rem;
  line-height: 1.5;
}

.lab_en_tabelle th,
.lab_en_tabelle td {
  border-bottom: 1px solid var(--lab-tv-blatt-linie);
  padding: 0.45rem 0.6rem;
  text-align: left;
  vertical-align: bottom;
}

.lab_en_tabelle th {
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lab-tv-blatt-akzent);
  border-bottom: 2px solid var(--lab-tv-blatt-akzent);
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

/* ---------- Aufgaben: Vokabel- und Satzlisten ----------
   Nummern als kleine Kreise mit Akzent-Rand (wie im Rechenblatt) -
   die Umrandung bleibt im S/W-Druck erhalten, keine Flaeche noetig. */

.lab_en_vokabeln,
.lab_en_saetze {
  margin: 0.9rem 0 0;
  padding: 0;
  list-style: none;
  column-gap: 2.8rem;
  column-rule: 1px solid var(--lab-tv-blatt-linie);
  counter-reset: enaufgabe;
}

.lab_en_vokabeln li,
.lab_en_saetze li {
  counter-increment: enaufgabe;
  position: relative;
  margin: 0 0 1.4rem;
  padding-left: 2.1rem;
  break-inside: avoid;
  line-height: 1.5;
  font-size: 1.02rem;
}

.lab_en_vokabeln li::before,
.lab_en_saetze li::before {
  content: counter(enaufgabe);
  position: absolute;
  left: 0;
  top: 0.1rem;
  width: 1.5rem;
  height: 1.5rem;
  border: 1.5px solid var(--lab-tv-blatt-akzent);
  border-radius: 50%;
  color: var(--lab-tv-blatt-akzent);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.5rem;
  text-align: center;
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.lab_en_ausgang { margin: 0 0 0.2rem; }

/* Wortkärtchen des Satzpuzzles */

.lab_en_puzzle {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0.3rem 0 0;
}

.lab_en_chip {
  display: inline-flex;
  align-items: baseline;
  gap: 0.35rem;
  border: 1px solid var(--lab-tv-blatt-text);
  border-radius: 999px;
  padding: 0.16rem 0.75rem 0.16rem 0.5rem;
  font-size: 0.92rem;
  font-weight: 600;
}

.lab_en_chip_nr {
  font-size: 0.75rem;
  font-weight: 700;
  opacity: 0.6;
}

/* Schreiblinie zum Eintragen (Vorschau und Exporte): dunkle Tinte und
   genug Abstand zum Aufgabentext - im S/W-Druck klar sichtbar. */

.lab_en_antwort {
  display: inline-block;
  min-width: 6rem;
  margin-top: 0.35rem;
  border-bottom: 1.5px solid var(--lab-tv-blatt-text);
  min-height: 1.5rem;
  vertical-align: baseline;
}

.lab_en_vokabeln .lab_en_antwort,
.lab_en_saetze .lab_en_antwort { display: block; }

td .lab_en_antwort {
  min-width: 4.6rem;
  margin-top: 0;
}

/* ---------- Lösungsseite: Ergebnisse in der Akzentfarbe - im
   S/W-Druck ein deutliches Mittelgrau, klar vom Aufgabentext
   unterschieden. ---------- */

.lab_en_loesung strong {
  color: var(--lab-tv-blatt-akzent);
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.lab_en_loesung .lab_en_vokabeln li,
.lab_en_loesung .lab_en_saetze li { margin-bottom: 0.7rem; }

.lab_en_loesungsliste { font-size: 0.95rem; }

.lab_en_loesungsblatt {
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lab-tv-blatt-akzent);
  margin: 0.4rem 0 0.7rem;
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.lab_en_vorschau_aus { display: none; }
@media (max-width: 30rem) {
  .lab_en_pult { padding: 0.6rem; }

  .lab_en_seite,
  .lab_en_loesung { padding: 1.1rem 1.2rem; }

  .lab_en_tabelle th,
  .lab_en_tabelle td { padding: 0.35rem 0.4rem; }
}

/* ---------- Blattfuss ---------- */

/* Fusszeile an die Unterkante des Papiers heften (nur Vorschau) -
   im Druck bleibt sie im Textfluss, volle Seiten laufen weiter. */

.lab_en_seite,
.lab_en_loesung { position: relative; }

.lab_en_blattfuss {
  position: absolute;
  left: 1.9rem;
  right: 1.9rem;
  bottom: 1.7rem;

  display: flex;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid var(--lab-tv-blatt-linie);
  margin-top: 1.8rem;
  padding-top: 0.45rem;
  font-size: 0.75rem;
  letter-spacing: 0.04em;
  color: var(--lab-tv-blatt-text);
  opacity: 0.55;
}

/* ---------- Druck: A4 mit druckerfreundlichen Rändern ----------
   15 mm an allen Seiten bleiben auch bei Tintenstrahl- und
   Kopierern knapp ausserhalb des Papiervorschubs. */

@page {
  size: A4;
  margin: 15mm;
}

@media print {
  .lab_en_seite,
  .lab_en_loesung,
  .lab_en_blattfuss { position: static; }

  .lab_kopf,
  .lab_en_formular,
  .lab_en_ki,
  .lab_en_leiste { display: none !important; }

  /* Die Plattform-Hülle legt keinen Zusatzrand über den Papierrand:
     der Satzspiegel kommt allein aus der @page-Regel (15 mm). Die
     Kette wird zwingend auf die Papierbreite gestreckt - einzelne
     Druck-Engines behalten sonst Vorschau-Masse bei. */
  .lab_main,
  .lab_shell,
  .lab_en_layout,
  .lab_en_vorschau,
  .lab_en_pult {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .lab_en_layout { display: block; margin: 0; }

  .lab_en_pult {
    border: 0;
    border-radius: 0;
    padding: 0;
    background: none;
    display: block;
  }

  /* Papier-Optik und feste Blatthoehe sind nur Vorschau: im Druck
     liefert die Seite die Raender, jede Blattseite bricht sauber.
     Die Breite steht in Millimetern (180 mm = A4 minus 15 mm Rand),
     weil die Druckpipeline prozentuale/auto-Breiten im zentrierten
     Pult-Raster schrumpfen laesst - das Blatt blieb schmal. */
  .lab_en_blatt,
  .lab_en_seite,
  .lab_en_loesung {
    width: 180mm !important;
    max-width: none !important;
  }

  .lab_en_seite,
  .lab_en_loesung {
    background: none;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
    margin: 0;
    min-height: 0;
    aspect-ratio: auto;
  }

  /* Seitenrahmen-Stil: den Doppelrahmen im Druck mitnehmen (die
     Basis-Regel darueber loescht alle Seiten-Rahmen); das innere
     Polster haelt den Inhalt vom Rahmen fern, die Mindesthoehe
     schliesst den Rahmen am unteren Satzend (2 mm Luft gegen
     Rundungs-Aufseiten). */
  .lab_en_seite.lab_en_rahmenseite,
  .lab_en_loesung.lab_en_rahmenseite {
    border: 4px double var(--lab-tv-blatt-text);
    border-radius: 0;
    padding: 2mm 3mm;
    min-height: 265mm;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .lab_en_blatt_leer { display: none; }

  /* Lösungsseite nur im Druck, wenn gewünscht; in der Vorschau steuert
     der "Lösung zeigen"-Knopf die Sichtbarkeit. */
  .lab_en_loesung { display: none; }
  .lab_en_mit_loesung .lab_en_loesung {
    display: block;
    break-before: page;
  }
}

/* Blatt-Hilfe: mit dem App-CSS auch in HTML/PDF verfügbar. */
.lab_bh_gruppe { min-width: 0; margin: 0 0 1rem; padding: .8rem; border: 1px solid var(--lab-border-color); border-radius: .6rem; }
.lab_bh_gruppe select, .lab_bh_gruppe textarea { width: 100%; min-width: 0; max-width: 100%; }
.lab_bh_gruppe label { display: block; margin-top: .5rem; }
.lab_bh_hinweis { font-size: .8rem; color: var(--grey600-color); margin: .5rem 0; }
.lab_bh_eigene { margin-top: .7rem; }
.lab_bh_zeile { font-size: .85em; line-height: 1.5; margin: .25em 0 .65em; color: var(--lab-tv-blatt-text); font-style: normal; font-weight: normal; white-space: pre-wrap; overflow-wrap: anywhere; unicode-bidi: isolate; }
.lab_bh_zeile[dir="rtl"] { text-align: right; }
.lab_bh_zeile[hidden], .lab_bh_eigene[hidden] { display: none; }
@media print { .lab_bh_gruppe { display: none; } }
/* Lange Fachnamen und Papier-Ränder dürfen die mobile Blattansicht
   nicht über den Bildschirm schieben. Druckmaße bleiben unberührt. */
.lab_gs_fachklasse { white-space: normal; overflow-wrap: anywhere; }
.lab_gs_titel_zeile { flex-wrap: wrap; }
.lab_tb_gruppe, .lab_tb_karte { min-width: 0; }
.lab_tb_formular select, .lab_tb_formular input, .lab_tb_formular textarea { max-width: 100%; }
.lab_gs_kopfbox, .lab_geo_kopfbox { background: var(--lab-tv-blatt-flaeche); }
@media screen and (max-width: 40rem) {
  .lab_gs_seite, .lab_geo_seite { padding: 1rem; }
  .lab_gs_namedatum { gap: .5rem; flex-wrap: wrap; }
  .lab_rb_seite, .lab_sa_seite, .lab_gb_seite, .lab_uh_seite,
  .lab_db_seite, .lab_en_seite, .lab_tb_seite, .lab_ra_seite {
    aspect-ratio: auto; height: auto; display: flow-root;
  }
  .lab_rb_aufgaben, .lab_sa_aufgaben, .lab_db_aufgaben, .lab_en_aufgaben { column-count: 1 !important; }
  .lab_rb_blattfuss, .lab_sa_blattfuss, .lab_gb_blattfuss, .lab_uh_blattfuss,
  .lab_db_blattfuss, .lab_en_blattfuss, .lab_tb_blattfuss, .lab_ra_blattfuss { position: static; }
}
