:root{--papier:#faf9f7;--flaeche:#fff;--linie:#e4dfd6;--linie-stark:#cdc6ba;--text:#211f1c;--text-leise:#6a655d;
  --text-still:#8b857b;--gruen:#2f7a4f;--gelb:#a8730a;--rot:#a83c33;--grau:#7d776e;--grau-hell:#eceae6;--bvb:#e3b505}
*{box-sizing:border-box}
body{margin:0;background:var(--papier);color:var(--text);font:15px/1.5 -apple-system,"Segoe UI",Helvetica,Arial,sans-serif}
a{color:inherit}
.kopf{display:flex;justify-content:space-between;align-items:center;padding:14px 28px;border-bottom:1px solid var(--linie);background:var(--flaeche)}
.kopf .marke{font-weight:700;text-decoration:none}
.kopf nav{display:flex;gap:16px;align-items:center;font-size:.9rem}
.inline{display:inline}
button.link{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}
.inhalt{max-width:980px;margin:0 auto;padding:28px}
.fuss{padding:24px 28px;border-top:1px solid var(--linie);font-size:.85rem}
.leise{color:var(--text-leise)} .klein{font-size:.86rem} .fehler{color:var(--rot)}
h1{font-size:1.6rem;margin:0 0 6px} h2{font-size:1.15rem;margin:28px 0 8px} h4{font-size:.76rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-still);margin:0 0 6px}
.pid{display:inline-block;font-weight:600;color:var(--text-still);font-size:.85em;margin-right:4px}
.pfad{font-size:.88rem;color:var(--text-leise)}
.zitat{font-size:1.05rem;border-left:3px solid var(--bvb);padding-left:12px;margin:10px 0}
.karte{background:var(--flaeche);border:1px solid var(--linie);padding:24px;max-width:420px;margin:40px auto}
.karte label{display:block;margin-top:12px;font-size:.9rem}
.karte input{width:100%;padding:8px;border:1px solid var(--linie-stark);font:inherit}
button[type=submit]{padding:9px 16px;background:var(--text);color:#fff;border:0;font:inherit;cursor:pointer}
.legende{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.chip{display:inline-block;font-size:.75rem;padding:2px 8px;border-radius:12px;background:var(--grau-hell);color:var(--grau);white-space:nowrap}
.chip.gruen{background:#e4efe7;color:var(--gruen)} .chip.gelb{background:#f6ecd8;color:var(--gelb)} .chip.rot{background:#f5e3e1;color:var(--rot)} .chip.nicht{background:transparent;border:1px dashed var(--linie-stark)}
.prinzipien{list-style:none;padding:0;margin:0}
.prinzipien li{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--linie)}
.prinzipien li a{flex:1;text-decoration:none}
details.kpi{margin-top:12px;border:1px solid var(--linie);background:var(--flaeche)}
details.kpi>summary{cursor:pointer;padding:11px 16px;font-weight:600;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.kpi-inhalt{padding:18px 16px 20px;display:grid;gap:24px;border-top:1px solid var(--linie)}
details.unter{border:1px solid var(--linie)} details.unter>summary{cursor:pointer;padding:9px 14px;font-weight:600;font-size:.9rem}
.rel{max-width:560px}
.spur{height:10px;background:var(--grau-hell);position:relative}
.spur i{display:block;height:100%} .spur i.gruen{background:var(--gruen)} .spur i.gelb{background:#d8a223} .spur i.rot{background:var(--rot)} .spur i.grau{background:#c3bdb3}
.spur b{position:absolute;top:-4px;bottom:-4px;width:1px;background:var(--linie-stark)}
.liga{max-width:620px}
.liga-spur{position:relative;height:34px;margin:18px 0 6px}
.liga-spur .achse{position:absolute;top:16px;left:0;right:0;height:2px;background:var(--linie)}
.liga-spur .box{position:absolute;top:9px;height:16px;background:#ece8e0;border:1px solid var(--linie-stark)}
.liga-spur .med{position:absolute;top:5px;height:24px;width:2px;background:var(--text-leise)}
.liga-spur .eigen{position:absolute;top:0;height:34px;width:3px;background:var(--bvb)}
.liga-werte{display:flex;justify-content:space-between;font-size:.82rem;color:var(--text-still)}
.marke{color:#7a6100;font-weight:600}
.verlauf{padding:12px 14px 4px}
.verlauf svg{width:100%;max-width:640px;height:auto;display:block;font-size:11px}
.verlauf .raster{stroke:var(--linie)} .verlauf .tick{fill:var(--text-still);text-anchor:end} .verlauf .tick.links{text-anchor:start}
.verlauf .liga-linie{stroke:var(--text-still);stroke-dasharray:4 4} .verlauf .eigen-linie{stroke:var(--bvb);stroke-width:1.5}
.verlauf .kurve{fill:none;stroke:var(--text-leise);stroke-width:1.4}
.verlauf .punkt.heim{fill:var(--text);stroke:var(--text)} .verlauf .punkt.gast{fill:var(--flaeche);stroke:var(--text);stroke-width:1.5}
table{border-collapse:collapse;width:100%;font-size:.87rem}
th,td{text-align:left;padding:6px 10px;border-bottom:1px solid var(--linie);vertical-align:top}
th{font-weight:600;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-still);background:var(--papier)}
tr.eigen td{background:#fff8dc;font-weight:600}
.scroll{overflow-x:auto}
button.abspielen{padding:3px 10px;background:var(--text);color:#fff;border:0;font:inherit;font-size:.82rem;cursor:pointer}
button.abspielen:disabled{opacity:.5;cursor:wait}
dialog.szene{border:1px solid var(--linie-stark);padding:14px;width:min(960px,calc(100vw - 32px));background:var(--flaeche)}
dialog.szene::backdrop{background:rgba(20,18,16,.6)}
dialog.szene video{width:100%;background:#000;display:block}
.szene-kopf{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.9rem}
.schnitt-zeile{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:10px 0 0}
button.schneiden{padding:6px 12px;background:var(--text);color:#fff;border:0;font:inherit;font-size:.86rem;cursor:pointer}
button.schneiden:disabled{opacity:.45;cursor:default}
.pruefung{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:20px;align-items:start;margin-top:14px}
@media (max-width:900px){.pruefung{grid-template-columns:1fr}}
.pr-player video{width:100%;background:#000;display:block}
.pr-titel{margin:10px 0 6px}
.pr-knoepfe{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pr-luecke{flex:1}
button.urteil{padding:8px 14px;border:0;color:#fff;font:inherit;cursor:pointer}
button.urteil.stimmt{background:var(--gruen)} button.urteil.falsch{background:var(--rot)} button.urteil.unklar{background:var(--gelb)}
button.urteil:disabled{opacity:.35;cursor:default}
button.urteil kbd{font:inherit;font-size:.75rem;opacity:.75;margin-left:4px}
.pr-liste{list-style:none;margin:0;padding:0;border:1px solid var(--linie);background:var(--flaeche);max-height:70vh;overflow:auto}
.pr-liste li{display:flex;gap:8px;align-items:center;padding:7px 10px;border-bottom:1px solid var(--linie);cursor:pointer;font-size:.88rem}
.pr-liste li.aktuell{background:#fbf3d6;box-shadow:inset 3px 0 0 var(--bvb)}
.pr-nr{color:var(--text-still);width:1.6em;text-align:right;flex:none}
.pr-was{flex:1}
.pr-urteil:empty{display:none}
