/* Lehrzeug Elterngespräch – werkzeugeigenes Design. Gemeinsames Design: /kern/kern.css */
.lz-sec-title .i { width: 18px; height: 18px; color: var(--blue-ink, var(--teal-ink)); }
.eg-modes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0 0 16px; }
.eg-mode { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 16px; border: 1.5px solid var(--line-2); background: var(--surface); color: var(--ink); font: inherit; text-align: left; cursor: pointer; transition: border-color .15s, background .15s; }
.eg-mode > .i { width: 26px; height: 26px; flex: none; color: var(--blue, #2E7CF6); }
.eg-mode span { display: grid; gap: 1px; min-width: 0; }
.eg-mode b { font-size: 15px; }
.eg-mode small { font-size: 12.5px; color: var(--ink-3); }
.eg-mode:hover { border-color: var(--blue, #2E7CF6); }
.eg-mode.is-on { border-color: var(--blue, #2E7CF6); background: var(--blue-soft, #E3EEFE); box-shadow: inset 0 0 0 1px var(--blue, #2E7CF6); }
.eg-mode:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
@media (max-width: 720px) { .eg-modes { grid-template-columns: minmax(0, 1fr); } .eg-mode small { display: none; } }
.eg-quick { display: grid; gap: 10px; margin: 0 0 12px; padding: 12px 14px; border-radius: 14px; background: var(--surface-2); border: 1.5px dashed var(--line-2); }
.eg-quick p { margin: 0; font-size: 14px; color: var(--ink-2); }
.eg-quick .btn { justify-self: start; }
.eg-anl, .eg-mails { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; }
.eg-anl label, .eg-mails label { position: relative; }
.eg-anl input, .eg-mails input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
.eg-anl span, .eg-mails span { display: flex; align-items: center; gap: 10px; padding: 8px 11px; border-radius: 12px; border: 1.5px solid var(--line-2); background: var(--surface-2); cursor: pointer; }
.eg-mails span { justify-content: space-between; }
.eg-anl span .i { flex: none; width: 20px; height: 20px; color: var(--blue-ink, var(--teal-ink)); }
.eg-anl b, .eg-mails b { display: grid; gap: 1px; font-size: 14px; font-weight: 600; line-height: 1.25; }
.eg-anl small, .eg-mails small { font-size: 12px; font-weight: 400; color: var(--ink-3); }
.eg-anl input:checked + span, .eg-mails input:checked + span { border-color: var(--blue, #2E7CF6); background: var(--blue-soft, #E3EEFE); box-shadow: inset 0 0 0 1px var(--blue, #2E7CF6); }
.eg-anl input:focus-visible + span, .eg-mails input:focus-visible + span { outline: 3px solid var(--focus); outline-offset: 2px; }
.eg-roles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 12px; }
.eg-roles .check { font-size: 13.5px; }
@media (max-width: 420px) { .eg-roles { grid-template-columns: minmax(0, 1fr); } }
.eg-help { margin: 0 0 8px; font-size: 13px; color: var(--ink-3); }
.eg-punkte { display: grid; gap: 6px; margin: 0 0 8px; }
.eg-pin { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px; align-items: center; }
.eg-pin span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--ink); color: var(--surface); font-size: 12px; font-weight: 700; }
.eg-sheets { display: grid; gap: 8px; }
.eg-sheets .check label { font-size: 14px; }
.eg-d { color: var(--ink-3); font-size: 12.5px; }
.eg-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 10px; }
.eg-sum { margin: 4px 0 0; padding: 8px 11px; border-radius: 10px; background: var(--surface-2); font-size: 13.5px; font-weight: 600; color: var(--ink-2); }
.eg-door { display: grid; gap: 8px; margin: 12px 0; padding: 12px 14px; border-radius: 14px; border: 1.5px solid var(--line-2); }
.eg-door p { margin: 0; font-size: 13.5px; color: var(--ink-2); }
.eg-door .btn { justify-self: start; }
.eg-hint { font-size: 13px; color: var(--ink-3); }
.eg-wrap { display: grid; gap: 16px; }
.eg-empty { margin: 30px 0; text-align: center; color: var(--ink-3); }
.eg-mailbox { display: grid; gap: 4px; }
.eg-mbody { min-height: 380px; font-size: 14.5px; line-height: 1.5; }
.eg-mailnote { margin-top: 10px; }

/* ================================================================ Blätter */
.eg-page { padding: 13mm 14mm 17mm; font-family: var(--font); color: #071B4A; background: #fff; font-size: 9.6pt; line-height: 1.38; }
.lt-sheet .eg-page { padding: 26px 28px 30px; }
@media (max-width: 600px) { .lt-sheet .eg-page { padding: 14px; } }
.eg-page h1, .eg-page h2, .eg-page h3, .eg-page p { margin: 0; }
.eg-head { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 1mm 4mm; border-bottom: .6mm solid #071B4A; padding-bottom: 1.5mm; margin-bottom: 3.5mm; }
.eg-head h1 { font-size: 17pt; line-height: 1.12; }
.eg-sub { font-size: 10pt; font-weight: 600; color: #3D4B66; padding-bottom: .7mm; }
.eg-badge { margin-left: auto; padding: .5mm 2.2mm; border: .35mm solid #1A4FA8; border-radius: 1mm; color: #1A4FA8; font-size: 7pt; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.eg-prot .eg-badge, .eg-kp-page .eg-badge, .eg-plan .eg-badge { border-color: #B23A2E; color: #B23A2E; }
.eg-meta { display: flex; flex-wrap: wrap; gap: 2mm 5mm; margin: 0 0 2.5mm; }
.eg-f { display: flex; align-items: flex-end; gap: 1.5mm; flex: 1 1 26mm; min-width: 0; }
.eg-f.is-w { flex: 2 1 55mm; } .eg-f.is-all { flex: 1 1 100%; }
.eg-f small { flex: none; font-size: 7.6pt; color: #3D4B66; font-weight: 700; }
.eg-f i { flex: 1; min-width: 8mm; height: 5.5mm; border-bottom: .3mm solid #5B6372; }
.eg-f b { font-size: 10pt; }
.eg-ln { display: block; height: 6.6mm; border-bottom: .3mm solid #9AA6B8; }
.eg-cb { display: inline-flex; align-items: center; gap: 1.4mm; margin-right: 3.5mm; white-space: nowrap; }
.eg-cb i { flex: none; display: inline-grid; place-items: center; width: 3.4mm; height: 3.4mm; border: .35mm solid #071B4A; border-radius: .6mm; }
.eg-cb.is-on i::after { content: ""; width: 1.2mm; height: 2.1mm; border: solid #071B4A; border-width: 0 .45mm .45mm 0; transform: rotate(45deg) translate(-.15mm, -.2mm); }
.eg-cbs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2mm 4mm; }
.eg-cbs .eg-cb { white-space: normal; align-items: flex-start; margin: 0; }
.eg-cbs .eg-cb i { margin-top: .4mm; }
.eg-line { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 1.5mm 2mm; margin: 0 0 2.2mm; }
.eg-line > b { margin-right: 1mm; font-size: 9pt; }
.eg-line .eg-f { flex: 1 1 30mm; }
.eg-ml { margin-left: 3mm; }
.eg-anl-t { font-weight: 700; padding: .2mm 2mm; border: .3mm solid #071B4A; border-radius: 1mm; }
.eg-h2 { margin: 3mm 0 1.2mm !important; font-size: 10.5pt; }
.eg-sec { margin: 0 0 2mm; }
.eg-tab { width: 100%; border-collapse: collapse; table-layout: fixed; margin: 0 0 2.5mm; }
.eg-tab th { font-size: 7.8pt; text-align: left; padding: 1mm 1.4mm; border: .25mm solid #9AA6B8; background: #EEF2F6; color: #24324F; line-height: 1.2; }
.eg-tab td { border: .25mm solid #9AA6B8; padding: .6mm 1.4mm; height: 7.4mm; font-size: 8.8pt; }
.eg-tn .c-rolle { width: 42mm; } .eg-tn .c-erg { width: 38mm; color: #5B6372; font-size: 8pt; }
.eg-zv td { height: 11mm; } .eg-zv .c-wer { width: 22mm; font-weight: 700; } .eg-zv .c-bis { width: 22mm; }
.eg-pt { margin: 0 0 2.2mm; }
.eg-pt h3 { display: flex; align-items: flex-end; gap: 2mm; font-size: 10pt; margin: 0 0 .5mm; }
.eg-pt h3 span { flex: none; display: inline-grid; place-items: center; width: 5.4mm; height: 5.4mm; border: .4mm solid #071B4A; border-radius: 50%; font-size: 8pt; }
.eg-pt h3 i { flex: 1; height: 5mm; border-bottom: .3mm solid #5B6372; }
.eg-2c { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 6mm; }
.eg-2c small, .eg-lab { display: block; font-size: 7.6pt; font-weight: 700; color: #3D4B66; margin-top: 1mm; }
.eg-sigs { display: flex; flex-wrap: wrap; gap: 4mm 6mm; margin: 5mm 0 1mm; }
.eg-sigs span { flex: 1 1 36mm; display: grid; gap: .8mm; }
.eg-sigs i { display: block; height: 8mm; border-bottom: .3mm solid #071B4A; }
.eg-sigs small { font-size: 7.6pt; color: #3D4B66; }
.eg-fine { font-size: 7.4pt; color: #5B6372; }
.eg-conf { margin: 3mm 0 0 !important; font-size: 7pt; color: #5B6372; }
.eg-small { margin: 0 0 2.5mm !important; font-size: 8.6pt; color: #3D4B66; }
.eg-warn { padding: 3mm; border: .4mm solid #B23A2E; border-radius: 2mm; color: #B23A2E; }

/* Leitfaden */
.eg-leit { font-size: 9pt; line-height: 1.3; }
.eg-leit .eg-pts li { min-height: 5.6mm; } .eg-leit .eg-pts li i { height: 5.4mm; }
.eg-leit .eg-box { margin-bottom: 2.4mm; }
.eg-goal { margin: 0 0 3mm; padding: 2.5mm 3.5mm; border: .45mm solid #071B4A; border-radius: 2.5mm; display: grid; gap: 1mm; }
.eg-goal > b { font-size: 8pt; letter-spacing: .08em; text-transform: uppercase; color: #1A4FA8; }
.eg-goal p { font-size: 10.5pt; font-weight: 600; }
.eg-box { margin: 0 0 3mm; }
.eg-box h2, .eg-flow h2, .eg-note h2 { display: flex; align-items: center; gap: 1.6mm; font-size: 10.5pt; margin: 0 0 1.5mm; }
.eg-box h2 .i, .eg-flow h2 .i { width: 4.4mm; height: 4.4mm; color: #1A4FA8; }
.eg-steps { list-style: none; margin: 0 0 3mm; padding: 0; display: grid; gap: 0; }
.eg-steps > li { display: grid; grid-template-columns: 15mm minmax(0, 1fr); gap: 3mm; padding: 1.1mm 0; border-top: .25mm solid #C9D2DE; }
.eg-steps > li:first-child { border-top: 0; }
.eg-min { display: grid; justify-items: center; align-content: start; gap: .5mm; }
.eg-min b { display: grid; place-items: center; width: 7.5mm; height: 7.5mm; border-radius: 50%; border: .5mm solid #1A4FA8; color: #1A4FA8; font-size: 10pt; }
.eg-min small { font-size: 7.4pt; font-weight: 700; color: #3D4B66; white-space: nowrap; }
.eg-steps h3 { font-size: 10pt; margin: .6mm 0 .8mm; }
.eg-steps ul { margin: 0; padding-left: 4mm; display: grid; gap: .2mm; }
.eg-steps ul li::marker { color: #1A4FA8; }
.eg-pts { margin: 0; padding-left: 5mm; display: grid; gap: .5mm; }
.eg-pts li { display: flex; align-items: flex-end; gap: 2mm; min-height: 6.5mm; }
.eg-pts li b { flex: none; max-width: 70%; padding-bottom: .4mm; }
.eg-pts li i { flex: 1; display: block; height: 6.2mm; border-bottom: .3mm solid #9AA6B8; }
.eg-pts li::marker { font-weight: 700; }
.eg-bot { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 5mm; align-items: start; }
.eg-bot .eg-box { margin: 0; }
.eg-hard { list-style: none; display: grid; gap: .8mm; margin: 0; padding: 0; font-size: 8.3pt; line-height: 1.28; }
.eg-hard b { font-weight: 700; }
.eg-note { padding: 2.2mm 3.5mm; border-left: 1.2mm solid #1A4FA8; }
.eg-note ul { margin: 0; padding-left: 4mm; display: grid; gap: .5mm; font-size: 8.3pt; line-height: 1.28; }

.eg-measure { position: absolute; left: -9999px; top: 0; width: 210mm; visibility: hidden; }
.eg-measure .eg-page { padding: 12mm 14mm 16mm; }
.eg-leit.d1 { font-size: 8.6pt; } .eg-leit.d1 .eg-steps > li { padding: .8mm 0; } .eg-leit.d1 .eg-box { margin-bottom: 1.8mm; } .eg-leit.d1 .eg-goal { margin-bottom: 2mm; padding: 2mm 3mm; }
.eg-leit.d2 { font-size: 8.3pt; line-height: 1.26; } .eg-leit.d2 .eg-steps > li { padding: .6mm 0; } .eg-leit.d2 .eg-box { margin-bottom: 1.5mm; } .eg-leit.d2 .eg-goal { margin-bottom: 1.8mm; padding: 1.8mm 3mm; } .eg-leit.d2 .eg-hard, .eg-leit.d2 .eg-note ul { font-size: 7.9pt; }
.eg-leit.d3 { font-size: 8pt; line-height: 1.22; } .eg-leit.d3 .eg-steps > li { padding: .4mm 0; } .eg-leit.d3 .eg-box { margin-bottom: 1.2mm; } .eg-leit.d3 .eg-goal { margin-bottom: 1.5mm; padding: 1.5mm 3mm; } .eg-leit.d3 .eg-hard, .eg-leit.d3 .eg-note ul { font-size: 7.6pt; } .eg-leit.d3 .eg-head { margin-bottom: 2.5mm; }

/* Vereinbarung */
.eg-vhead { display: grid; gap: 2mm; margin: 0 0 3mm; padding-bottom: 2mm; border-bottom: .6mm solid #071B4A; }
.eg-vhead h1 { font-size: 22pt; line-height: 1.1; }
.eg-darum i { flex: 1; height: 6mm; border-bottom: .3mm solid #5B6372; }
.eg-vcols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4mm; margin: 2mm 0 3mm; }
.eg-vcol { padding: 2.5mm 3mm 3mm; border: .45mm solid #071B4A; border-radius: 3mm; }
.eg-vcol h2 { display: flex; align-items: center; gap: 1.5mm; font-size: 10pt; margin: 0 0 1mm; }
.eg-vcol h2 .i { width: 4.6mm; height: 4.6mm; color: #1A4FA8; }
.eg-wc .c-f { width: 16mm; text-align: center; } .eg-wc .c-k { width: 16mm; }
.eg-wc td { height: 12mm; }
.eg-wc td.c-f i { display: inline-block; width: 4mm; height: 4mm; border: .35mm solid #071B4A; border-radius: .7mm; }
.eg-face { width: 6mm; height: 6mm; display: inline-block; vertical-align: middle; }

/* Elternsprechtag */
.eg-tl td { height: 7.2mm; } .eg-tl .c-z { width: 15mm; font-weight: 800; font-variant-numeric: tabular-nums; } .eg-tl .c-k { width: 38mm; } .eg-tl .c-w { width: 30mm; } .eg-tl .c-ok { width: 9mm; text-align: center; }
.eg-tl td.c-ok i, .eg-lzt td.c-ok i { display: inline-block; width: 3.6mm; height: 3.6mm; border: .35mm solid #071B4A; border-radius: .7mm; }
.eg-tl tr.is-pause td, .eg-tl tr.is-puffer td, .eg-tl tr.is-frei td { height: 6mm; color: #3D4B66; font-weight: 700; font-size: 8pt; border-top: .5mm solid #071B4A; border-bottom: .5mm solid #071B4A; }
.eg-tl tr.is-puffer td { border-width: .25mm; border-style: dashed; font-weight: 600; }
.eg-ehead { display: grid; gap: 1mm; margin: 0 0 6mm; padding: 0 0 3mm; border-bottom: .8mm solid #071B4A; }
.eg-kick { font-size: 9pt; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #1A4FA8; }
.eg-ehead h1 { font-size: 24pt; line-height: 1.05; }
.eg-edate { font-size: 11.5pt; font-weight: 600; }
.eg-etext { display: grid; gap: 3mm; font-size: 11pt; line-height: 1.5; }
.eg-gruss { margin: 5mm 0 0 !important; font-size: 11pt; line-height: 1.6; }
.eg-sigl { display: inline-block; width: 60mm; height: 6mm; border-bottom: .3mm solid #5B6372; }
.eg-cut { display: flex; align-items: center; gap: 2mm; margin: 8mm 0 4mm; color: #5B6372; font-size: 7.6pt; }
.eg-cut::before, .eg-cut::after { content: ""; flex: 1; border-top: .4mm dashed #5B6372; }
.eg-cut span { display: inline-flex; align-items: center; gap: 1mm; }
.eg-cut .i { width: 4mm; height: 4mm; }
.eg-cut.is-mid { margin: 4mm 0; }
.eg-ab h2 { font-size: 11pt; margin: 0 0 3mm !important; }
.eg-ab { font-size: 10pt; }
.eg-abl { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 1.5mm 2mm; margin: 0 0 2.5mm; }
.eg-abl.eg-ind { padding-left: 5mm; }
.eg-abl > span:not(.eg-cb):not(.eg-f) { font-size: 9pt; color: #3D4B66; margin-right: 1mm; }
.eg-tzgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; }
.eg-tz { display: grid; gap: 1.6mm; padding: 4mm 5mm; border: .35mm dashed #8E9AB0; min-height: 62mm; align-content: start; }
.eg-tzh { display: flex; align-items: center; gap: 1.5mm; font-size: 10pt; }
.eg-tzh .i { width: 4.5mm; height: 4.5mm; color: #1A4FA8; }
.eg-tz > p { font-weight: 600; font-size: 9.6pt; }
.eg-tz .eg-meta { margin: 0; }
.eg-tzs { font-size: 7.8pt; color: #3D4B66; }
.eg-lz { padding: 2mm 0; }
.eg-lzh { display: flex; align-items: flex-end; justify-content: space-between; gap: 4mm; margin: 0 0 3mm; padding-bottom: 1.5mm; border-bottom: .6mm solid #071B4A; }
.eg-lzh h2 { display: flex; align-items: center; gap: 2mm; font-size: 15pt; }
.eg-lzh h2 .i { width: 6mm; height: 6mm; color: #1A4FA8; }
.eg-lzh span { font-size: 9.5pt; font-weight: 600; color: #3D4B66; }
.eg-lzt td { height: 9.5mm; } .eg-lzt .c-r { width: 20mm; } .eg-lzt .c-z { width: 22mm; } .eg-lzt .c-ok { width: 10mm; text-align: center; }
.eg-kp { margin: 0 0 3.5mm; padding: 3mm 3.5mm 2mm; border: .45mm solid #071B4A; border-radius: 2.5mm; }
.eg-kph { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 1.5mm 4mm; margin: 0 0 2mm; }
.eg-kph > b { font-size: 10pt; margin-right: 2mm; }
.eg-kp .eg-ln { height: 6mm; }
.eg-kp .eg-line { margin: 1.5mm 0 0; }
