    body { font-family: Calibri, Arial, sans-serif; margin: 0; padding: 0 0 40px; background: #ccc; }

    /* Legende (Farb-Markierung) — auf der ersten A4-Seite verankert. */
    .legend { display: flex; gap: 24px; align-items: center; flex-wrap: wrap; font-size: 10pt; color: #222; margin: 0 0 12px; }
    .legend .sw { display: inline-block; width: 14px; height: 14px; border: 1px solid #999; vertical-align: middle; margin-right: 6px; }

    .a4-page { width: 210mm; min-height: 297mm; margin: 25px auto; padding: 18mm 14mm; box-sizing: border-box; background: #fff; box-shadow: 0 10px 30px rgba(0,0,0,0.15); }
    .page-title { font-size: 13pt; color: #1a3a6e; font-weight: bold; margin: 0 0 8px; }
    .page-num { float: right; font-size: 10pt; color: #888; font-weight: normal; }
    body.no-page-num .page-num { display: none; }

    table.grid { border-collapse: collapse; width: 100%; font-size: 10pt; table-layout: fixed; }
    table.grid th { background: #2F5490; color: #fff; text-align: left; padding: 5px 6px; font-size: 9pt; }
    table.grid td { padding: 3px 6px; border-bottom: 1px solid #ddd; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

    /* Spalten-Ausrichtung (Breiten via <colgroup>, abhängig von den Toggles) */
    .col-verb  { font-weight: 600; }
    a.verb-link { color: #1a3a6e; text-decoration: none; cursor: pointer; }
    a.verb-link:hover { text-decoration: underline; }
    .col-trans { color: #333; }
    .col-abl   { text-align: center; }
    .col-vok   { font-size: 9pt; }
    .col-p2    { text-align: center; }
    .col-cefr  { text-align: center; }
    .col-conj  { text-align: center; }
    .col-der   { text-align: center; }
    .col-seite { text-align: right; }

    /* Gruppenkopf als volle Tabellenzeile */
    tr.group-row td { background: #e8edf6; color: #1a3a6e; font-weight: bold; font-size: 10pt; padding: 5px 6px; border-bottom: 1px solid #c4d0e6; }

    #loading { text-align: center; padding: 60px; font-size: 16pt; color: #555; }

    /* --- Druck: jede HTML-A4 = genau EIN Blatt, strikt A4, Farben erhalten --- */
    @media print {
      /* Kein Browser-Seitenrand -> 210mm wird NICHT verkleinert; keine A4 abgeschnitten. */
      @page { size: A4; margin: 0; }
      html, body { margin: 0; padding: 0; background: #fff; }
      .header, .footer { display: none; }
      .a4-page {
        width: 210mm; height: 297mm; min-height: 0;
        margin: 0; box-shadow: none;
        overflow: hidden;
        break-inside: avoid; page-break-inside: avoid;
        break-after: page; page-break-after: always;
      }
      .a4-page:last-child { break-after: auto; page-break-after: auto; }
      /* Farbdruck: Kopf-/Zeilen-Farben NICHT vom Browser entfernen lassen. */
      .a4-page, .a4-page * {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
      }
    }
