/* schulung.css — Schulungsmappe (S1, 16.10.2026). Liegt neben stil.css und druck.css, die schulung-bauen.mjs unverändert
   kopiert; hier steht nur, was Ablauf, Handout, Übungen, Teilnahme und Angebot zusätzlich brauchen. Nur Tokens aus stil.css,
   keine Hexwerte (Bauregeln). Keine Skripte: der Erzeuger setzt frisch/altert schon beim Bau, gemessen am Schulungsdatum. */

.mappe { max-width: 62rem; }
.mappe-kopf { margin: 8px 0 24px; padding-bottom: 12px; border-bottom: 1px solid var(--linie); }
.mappe-kopf .marke { min-height: 0; }
.mappe-kopf .eckdaten { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 6px 0 0; padding: 0; list-style: none; color: var(--leise); font-size: .92rem; }
.mappe-kopf .eckdaten code { overflow-wrap: anywhere; }
.mappe-teile { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 0; padding: 0; list-style: none; }
.mappe-teile a { display: inline-flex; align-items: center; min-height: 44px; padding: 2px 12px; border: 1px solid var(--linie); border-radius: var(--radius); text-decoration: none; }
.mappe-teile a:hover { border-color: var(--text); }
.mappe-teile a[aria-current="page"] { border-color: var(--akzent); color: var(--akzent); font-weight: 600; }
.mappe a:focus-visible { outline: 3px solid var(--akzent); outline-offset: 2px; }

/* Ablauf: Zeitspalte + Inhalt, bricht bei schmalen Schirmen untereinander (375 px ohne Querlauf). */
.ablauf { list-style: none; margin: 0 0 24px; padding: 0; display: grid; gap: 8px; }
.ablauf > li { display: grid; grid-template-columns: minmax(0, 8.5rem) minmax(0, 1fr); gap: 4px 16px; padding: 12px 14px;
  background: var(--flaeche); border: 1px solid var(--linie); border-radius: var(--radius); break-inside: avoid; }
.ablauf > li.pause { background: transparent; border-style: dashed; }
.ablauf .zeit { font-variant-numeric: tabular-nums; font-weight: 600; }
.ablauf .zeit .min { display: block; font-weight: 400; color: var(--leise); font-size: .88rem; }
.ablauf h3 { margin: 0 0 4px; }
.ablauf .zeile { margin: 0 0 4px; font-size: .92rem; }
.ablauf .zeile .was { color: var(--leise); }
.ablauf-summe { font-weight: 600; font-variant-numeric: tabular-nums; }
@media (max-width: 560px) { .ablauf > li { grid-template-columns: minmax(0, 1fr); } }

/* Handout */
.lektion-blatt { margin: 0 0 32px; }
.lektion-blatt > h2 { padding-top: 12px; border-top: 2px solid var(--linie); }
.begriff-blatt { margin: 0 0 18px; }
.begriff-blatt > p.kurz { max-width: 70ch; }
.richtwert { color: var(--leise); font-size: .92rem; }
.richtwert a { overflow-wrap: anywhere; }
.quellenliste { padding-left: 1.4rem; font-size: .9rem; }
.quellenliste li { margin: 0 0 8px; break-inside: avoid; }
.quellenliste .url { overflow-wrap: anywhere; word-break: break-all; }
.herausgenommen { color: var(--leise); font-size: .9rem; }

/* Übungen */
.kopierblock { margin: 6px 0 12px; padding: 10px 12px; background: var(--flaeche); border: 1px solid var(--linie); border-radius: var(--radius);
  white-space: pre-wrap; overflow-wrap: anywhere; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .9rem; }

/* Übungsblatt (S1b, 16.10.2026, F4-08): Aufgabe und Auflösung je Lektion, auf Papier lösbar. */
.blatt-aufgabe, .blatt-aufloesung { margin: 0 0 32px; }
.blatt-aufgabe > h2, .blatt-aufloesung > h2 { padding-top: 12px; border-top: 2px solid var(--linie); }
.blatt-aufloesung > h2 { color: var(--leise); }
.kaestchen { display: inline-block; flex: none; align-self: flex-start; inline-size: 1.1em; block-size: 1.1em; min-block-size: 0; max-block-size: 1.1em; box-sizing: border-box; margin: .15em .6em 0 0; border: 1.5px solid var(--text); border-radius: 3px; }
.blatt-saetze, .blatt-antworten { padding-left: 1.6rem; }
.blatt-saetze > li, .blatt-antworten > li { margin: 0 0 10px; break-inside: avoid; }
.blatt-saetze:not(.geloest) > li, .blatt-antworten > li { display: flex; align-items: flex-start; }
.blatt-saetze.geloest .satz { font-style: italic; }
.blatt-saetze li.ohne-quelle > p:first-child, .blatt-urteile li.ohne-quelle > p:first-child { color: var(--altert); }
.blatt-saetze li.belegt > p:first-child, .blatt-urteile li.belegt > p:first-child { color: var(--frisch); }
.blatt-urteile { padding-left: 1.2rem; }
.blatt-urteile > li { margin: 0 0 12px; break-inside: avoid; }
.blatt-beleg { margin: 4px 0 8px; padding: 6px 10px; border-left: 3px solid var(--linie); font-size: .92rem; }
.blatt-beleg p { margin: 0 0 4px; }
.blatt-erklaert dt { font-weight: 600; }
.blatt-erklaert dd { margin: 0 0 8px; }
.tabelle-rahmen { max-inline-size: 100%; overflow-x: auto; }
.blatt-paare, .blatt-modelle { border-collapse: collapse; margin: 8px 0 16px; font-size: .92rem; }
.blatt-paare th, .blatt-paare td, .blatt-modelle th, .blatt-modelle td { border: 1px solid var(--linie); padding: 6px 8px; text-align: left; vertical-align: top; }
.blatt-paare td { text-align: center; }
/* Bild PDF 12:09: ohne feste Breite brach die Modell-Spalte Buchstabe für Buchstabe („Ne mot ron“). */
.blatt-paare, .blatt-modelle { inline-size: 100%; }
.blatt-paare th, .blatt-paare td, .blatt-modelle th, .blatt-modelle td { overflow-wrap: normal; word-break: normal; hyphens: auto; }
.blatt-modelle th[scope="row"] { min-inline-size: 7.5rem; }
.blatt-modelle td:first-child { inline-size: 2.5rem; }
.blatt-pruef { break-inside: avoid; }
.blatt-modelle .schreibfeld { min-inline-size: 7rem; }
.blatt-modelle .klein, .blatt-aufgabe .klein, .blatt-aufloesung .klein { color: var(--leise); font-size: .86rem; }
.fall-karte { padding: 10px 12px; border: 1px solid var(--linie); border-radius: var(--radius); background: var(--flaeche); }
.fall-karte p { margin: 0 0 4px; }
.blatt-text { margin: 8px 0; padding: 8px 12px; border-left: 3px solid var(--linie); }
.schreibzeile { padding-bottom: 1.4rem; border-bottom: 1px solid var(--linie); }
.blatt-bausteine > li { margin: 0 0 12px; break-inside: avoid; }
.blatt-pruef { margin: 16px 0 0; }
.aufloesung-satz { font-weight: 600; }
.blatt-aufgabe .z, .blatt-aufloesung .z { inline-size: 1em; block-size: 1em; vertical-align: -.15em; }

/* Trainer-Notizen im Ablauf (S1b): nur dort, nicht im Handout. */
.trainer { margin: 8px 0 0; padding: 8px 12px; border: 1px dashed var(--linie); border-radius: var(--radius); font-size: .92rem; }
.trainer p { margin: 0 0 6px; }
.trainer .trainer-kopf { font-weight: 600; color: var(--leise); }
.trainer .was { color: var(--leise); }

/* Teilnahme */
.liste-leer { width: 100%; border-collapse: collapse; margin: 12px 0 20px; table-layout: fixed; }
.liste-leer th, .liste-leer td { border: 1px solid var(--linie); padding: 6px 8px; text-align: left; vertical-align: top; }
.liste-leer td { height: 2.4rem; }
.liste-leer .nr { width: 3rem; font-variant-numeric: tabular-nums; }
.ehrlich { margin-top: 1.25rem; padding-top: .75rem; border-top: 1px solid var(--linie); color: var(--leise); font-size: .92em; }

/* Angebot */
.preis { font-size: 1.15rem; font-weight: 600; }

.mappe-fuss { margin-top: 32px; padding-top: 12px; border-top: 1px solid var(--linie); color: var(--leise); font-size: .88rem; }

@media print {
  .mappe-teile { display: none; }
  .mappe { max-width: none; }
  .ablauf > li, .aussage, .kopierblock { background: Canvas; }
  .lektion-blatt > h2 { break-after: avoid; }
  .aussage { break-inside: avoid; }
  .quelle a { min-height: 0; padding: 0; border: 0; }
  /* S1b: jede Aufgabe und jede Auflösung beginnt auf einer neuen Seite — die Auflösung liegt hinter der Aufgabe. */
  .blatt-aufgabe + .blatt-aufgabe, .blatt-aufloesung + .blatt-aufgabe, .blatt-aufloesung { break-before: page; }
  .blatt-aufgabe > h2, .blatt-aufloesung > h2 { border-top: 0; padding-top: 0; }
  .tabelle-rahmen { overflow: visible; }
  .fall-karte, .blatt-text, .blatt-beleg { background: Canvas; }
}
