:root{--navy:#13233a;--navy-2:#1d3352;--navy-3:#29466d;--blau:#0a6ed1;--blau-hell:#e8f1fc;--nebel:#f2f5f9;--linie:#dbe2ec;--text:#172b4d;--grau:#5e6c84;
  --gruen:#2f8f56;--gruen-hell:#e6f4ea;--amber:#b45309;--amber-hell:#fdf3e4;--rot:#c62828;--rot-hell:#fdecea;--lila:#7c3aed;--tuerkis:#0f766e;--radius:10px}
*{box-sizing:border-box}html,body{margin:0}
body{font-family:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--nebel);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--blau);outline-offset:2px;border-radius:4px}
a{color:var(--blau)}
.kopf{background:var(--navy);color:#fff;position:sticky;top:0;z-index:20}
.kopf-innen{max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:22px;padding:12px 24px}
.marke{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;flex:0 0 auto;cursor:pointer}
.marke b{display:block;font-size:16px}.marke span span{display:block;font-size:12px;color:#a9bad1;font-weight:500}
.suche{flex:1;position:relative;max-width:620px}
.suche input{width:100%;border:0;border-radius:24px;padding:11px 18px 11px 44px;background:#fff;font-size:15px}
.suche svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--grau)}
.treffer{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border-radius:12px;box-shadow:0 12px 32px rgba(19,35,58,.22);padding:8px;display:none;color:var(--text);max-height:420px;overflow:auto}
.treffer.offen{display:block}
.treffer button{all:unset;box-sizing:border-box;display:flex;gap:12px;align-items:baseline;width:100%;padding:8px 10px;border-radius:8px;cursor:pointer}
.treffer button:hover,.treffer button:focus-visible{background:var(--blau-hell)}
.treffer .art{flex:0 0 96px;font-size:12px;font-weight:600;color:var(--grau)}
.treffer small{color:var(--grau)}
.kopf-rechts{display:flex;align-items:center;gap:12px;margin-left:auto;font-size:13.5px}
.kopf-rechts label{color:#a9bad1;font-size:12px;display:flex;flex-direction:column;gap:2px}
.kopf-rechts select{background:var(--navy-2);border:1px solid #2c4568;color:#fff;border-radius:8px;padding:5px 8px}

/* Unternehmensmodell: Spalten L0–L5, waagrecht scrollbar */
.karte{background:var(--navy);color:#fff;padding:8px 0 18px;border-top:1px solid #2c4568}
.karte-innen{max-width:1400px;margin:0 auto;padding:0 24px}
.karte-zeile{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 10px}
.pfad{display:flex;flex-wrap:wrap;align-items:center;gap:2px;font-size:13.5px}
.pfad button{all:unset;cursor:pointer;color:#c8d6ea;padding:2px 6px;border-radius:6px}
.pfad button:hover,.pfad button:focus-visible{background:var(--navy-2);color:#fff}
.pfad button[aria-current]{color:#fff;font-weight:700}
.pfad .t{color:#5c7495}
.knopf-zu{all:unset;cursor:pointer;color:#a9bad1;font-size:13px;padding:2px 6px;border-radius:6px;white-space:nowrap}.knopf-zu:hover{color:#fff}
.spalten-huelle{overflow-x:auto;border-radius:12px;scrollbar-color:#3c5a82 transparent}
.spalten{display:flex;gap:2px;background:#0c1828;min-height:250px;width:max-content;min-width:100%}
.karte.zu .spalten-huelle{display:none}
.spalte{background:var(--navy-2);padding:10px 8px;width:268px;flex:0 0 268px;max-height:330px;overflow:auto}
.spalte:last-child{flex:1 0 268px}
.spalte h3{font-size:12.5px;font-weight:600;color:#93a8c4;margin:2px 8px 8px;display:flex;justify-content:space-between}
.spalte h3 span{font-weight:500;color:#6f88aa}
.spalte ul{list-style:none;margin:0;padding:0}
.spalte li button{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;gap:2px 8px;align-items:baseline;width:100%;padding:7px 9px;border-radius:8px;color:#e6edf7;font-size:13.5px;line-height:1.3}
.spalte li button:hover,.spalte li button:focus-visible{background:var(--navy-3)}
.spalte li button[aria-selected=true]{background:#fff;color:var(--navy)}
.spalte li button .kz{font-size:11.5px;color:#93a8c4;font-variant-numeric:tabular-nums;white-space:nowrap}
.spalte li button[aria-selected=true] .kz{color:var(--grau);font-weight:600}
.spalte li button .nm{min-width:0}
.spalte li button[aria-selected=true] .nm{font-weight:600}
.spalte li button .zahl{font-size:11.5px;color:#93a8c4;font-variant-numeric:tabular-nums}
.spalte li button[aria-selected=true] .zahl{color:var(--grau)}
.spalte li button .ampel{grid-column:2/4;height:4px;border-radius:2px;background:#33507a;overflow:hidden;display:flex;margin-top:3px}
.spalte li button .ampel i{display:block;height:100%}
.spalte li button.zusatz .nm{font-style:italic;color:#b9c8dc}
.spalte li button.gesperrt{color:#7f95b3;cursor:not-allowed}
.spalte-leer{color:#7f95b3;font-size:13px;padding:10px}

.haupt{max-width:1400px;margin:0 auto;padding:22px 24px 60px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}
.titel{grid-column:1/-1}
.titel .ebene{font-size:13px;color:var(--grau);font-weight:600;margin:0 0 2px}
.titel h1{font-size:30px;line-height:1.15;letter-spacing:-.02em;margin:0;font-weight:800}
.titel h1 .kenn{color:var(--grau);font-weight:600;margin-right:10px}
.marken{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.mk{font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:20px;background:#fff;border:1px solid var(--linie);color:var(--grau)}
.mk.gruen{background:var(--gruen-hell);border-color:#bfe3cb;color:#1f6b3e}.mk.blau{background:var(--blau-hell);border-color:#c5dcf6;color:#0a4f97}
.mk.amber{background:var(--amber-hell);border-color:#f2d3a8;color:#8a4207}.mk.rot{background:var(--rot-hell);border-color:#f3b4ad;color:#a8321f}

.links{min-width:0}.reiter{display:flex;gap:2px;border-bottom:1px solid var(--linie);overflow-x:auto;margin-bottom:16px}
.reiter button{all:unset;cursor:pointer;padding:10px 13px;font-weight:600;font-size:14px;color:var(--grau);border-bottom:3px solid transparent;white-space:nowrap}
.reiter button:hover{color:var(--text)}
.reiter button[aria-selected=true]{color:var(--navy);border-bottom-color:var(--blau)}
.reiter button .n{font-weight:500;font-size:12px;margin-left:4px}
.inhalt{min-width:0}
.flaeche{background:#fff;border:1px solid var(--linie);border-radius:var(--radius);padding:18px 20px;margin-bottom:16px}
.flaeche h2{font-size:18px;margin:0 0 2px}
.unter{color:var(--grau);font-size:13.5px;margin:0 0 14px}
.beispiel{display:inline-block;font-size:12px;font-weight:600;color:#8a4207;background:var(--amber-hell);border:1px solid #f2d3a8;border-radius:6px;padding:1px 8px;margin-left:6px;vertical-align:2px}
.kz-reihe{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.kz-reihe div{background:#fff;border:1px solid var(--linie);border-radius:var(--radius);padding:12px 14px}
.kz-reihe b{display:block;font-size:24px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.kz-reihe span{font-size:13px;color:var(--grau)}
.liste{list-style:none;margin:0;padding:0}
.liste li{border-top:1px solid #edf1f6}.liste li:first-child{border-top:0}
.zeile{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:120px minmax(0,1fr) 200px 70px;gap:12px;align-items:center;width:100%;padding:9px 6px;border-radius:8px}
.zeile:hover,.zeile:focus-visible{background:var(--nebel)}
.zeile .kenn{font-size:13px;color:var(--grau);font-weight:600;font-variant-numeric:tabular-nums}
.zeile .nm{font-weight:600}
.zeile small{display:block;color:var(--grau);font-weight:400;font-size:12.5px}
.balken{height:8px;border-radius:4px;background:#edf1f6;overflow:hidden;display:flex}
.balken i{display:block;height:100%}
.zeile .pz{text-align:right;font-size:13px;font-variant-numeric:tabular-nums;color:var(--grau)}
.schritte{list-style:none;margin:0;padding:0;counter-reset:s}
.schritte li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 4px;border-top:1px solid #edf1f6;counter-increment:s}
.schritte li:first-child{border-top:0}
.schritte li:before{content:counter(s);width:24px;height:24px;border-radius:50%;background:var(--blau-hell);color:var(--blau);font-weight:700;font-size:12px;display:grid;place-items:center}
.schritte .id{font-size:12px;color:var(--grau);font-variant-numeric:tabular-nums}
.st{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;white-space:nowrap}
.st i{width:9px;height:9px;border-radius:50%}
.st.g{color:#1f6b3e}.st.g i{background:var(--gruen)}.st.r{color:var(--rot)}.st.r i{background:var(--rot)}.st.o{color:#8a4207}.st.o i{background:var(--amber)}.st.x{color:var(--grau)}.st.x i{background:#b7c2d1}
.tab{width:100%;border-collapse:collapse;font-size:14px}
.tab th{text-align:left;font-size:12.5px;color:var(--grau);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--linie)}
.tab td{padding:8px 10px;border-bottom:1px solid #edf1f6;vertical-align:top}
.tab tr:last-child td{border-bottom:0}
.leer{color:var(--grau);font-size:14px;padding:6px 0}
.legende{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12.5px;color:var(--grau);margin-top:8px}
.legende i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}
.zwei{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.zwei .flaeche{margin-bottom:0}
svg.dia{display:block;width:100%;height:auto}
.seite-leiste{align-self:start}
.kasten{background:#fff;border:1px solid var(--linie);border-radius:var(--radius);padding:16px 18px;margin-bottom:14px}
.kasten h4{margin:0 0 10px;font-size:14px}
.kasten ul{list-style:none;margin:0;padding:0;font-size:13.5px}
.kasten li{padding:5px 0;border-top:1px solid #edf1f6}.kasten li:first-child{border-top:0}
.kasten li button{all:unset;cursor:pointer;color:var(--blau)}
.kasten.lernvideos a{color:var(--blau);font-weight:600;text-decoration:none}.kasten.lernvideos a:hover{text-decoration:underline}.kasten.lernvideos small{display:block;color:#5e6c84;font-size:12px;margin-top:2px}   /* 0.2.63 */
.kasten li button[aria-current]{color:var(--text);font-weight:700}
.kasten small{display:block;color:var(--grau);font-size:12.5px}
.lesen{background:var(--navy);color:#dbe6f5;border-color:var(--navy)}.lesen h4{color:#fff}.lesen p{margin:0;font-size:13.5px}
.schloss-seite{grid-column:1/-1;background:#fff;border:1px solid var(--linie);border-radius:var(--radius);padding:40px;text-align:center}
.schloss-seite h2{margin:8px 0 4px}
.versteckt{display:none!important}
/* Ablauf als Bahnen mit Verbindungen, Schrittdetail, Handbuch mit Kapiteln, ausgebaute Seitenleiste */
.ablauf-huelle{position:relative;overflow-x:auto;border:1px solid var(--linie);border-radius:10px;background:#fff}
.ablauf{position:relative;display:grid;min-width:100%}
.ablauf svg.linien{position:absolute;inset:0;pointer-events:none;overflow:visible}
.bahn-name{position:sticky;left:0;z-index:2;background:var(--nebel);border-top:1px solid var(--linie);padding:10px;font-size:12.5px;font-weight:600;color:var(--grau);display:flex;align-items:center;writing-mode:horizontal-tb}
.zelle{border-top:1px solid var(--linie);padding:14px 10px;display:flex;flex-direction:column;gap:10px;justify-content:flex-start;align-items:center;position:relative;z-index:1}
.bahn-erste{border-top:0}
.k{all:unset;box-sizing:border-box;cursor:pointer;background:#fff;border:1.5px solid #9fb4cf;border-radius:8px;padding:7px 9px;font-size:12px;line-height:1.25;font-weight:600;width:150px;min-height:50px;display:flex;flex-direction:column;justify-content:center;position:relative}
.k:hover,.k:focus-visible{border-color:var(--blau);box-shadow:0 0 0 3px var(--blau-hell)}
.k.an{border-color:var(--blau);background:var(--blau-hell)}
.k small{font-weight:500;color:var(--grau);font-size:11px;margin-top:3px}
.k.ev{border-radius:30px;width:120px;text-align:center;align-items:center;background:var(--nebel);border-color:#c2cfdf;font-weight:500}
.k.ende{border-width:3px}
.k.gw{width:46px;min-height:46px;padding:0;transform:rotate(45deg);border-radius:6px;align-items:center;justify-content:center;background:#fff8e6;border-color:#d8b56a}
.k.gw span{transform:rotate(-45deg);font-size:16px;color:#8a6d1a}
.k.gw .gwtx{position:absolute;transform:rotate(-45deg) translate(0,44px);width:140px;text-align:center;font-size:11px;color:var(--grau);font-weight:500;pointer-events:none}
.k.ca{border-width:2.5px;border-color:var(--blau)}
.k.ca:after{content:"";position:absolute;left:50%;bottom:4px;width:12px;height:9px;margin-left:-6px;border:1.5px solid var(--blau);border-radius:2px;background:linear-gradient(var(--blau),var(--blau)) center/1.5px 5px no-repeat,linear-gradient(var(--blau),var(--blau)) center/5px 1.5px no-repeat}
.k.ca{padding-bottom:16px}
.k .test{position:absolute;top:-7px;right:-7px;width:15px;height:15px;border-radius:50%;border:2px solid #fff}
.k .test.g{background:var(--gruen)}.k .test.r{background:var(--rot)}.k .test.o{background:#d28b2b}.k .test.x{background:#b7c2d1}
.detail{display:grid;grid-template-columns:1fr 1fr;gap:6px 26px;margin:6px 0 0}
.detail dt{font-size:12.5px;color:var(--grau);font-weight:600}
.detail dd{margin:0 0 8px}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:12.5px;padding:3px 9px;border-radius:6px;background:var(--nebel);border:1px solid var(--linie)}
.knopf{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px solid var(--linie);background:#fff;font-size:13.5px;font-weight:600;color:var(--blau)}
.knopf:hover{border-color:var(--blau)}
.folge{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px;font-size:13.5px;color:var(--grau)}
.hb{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px}
.hb nav ol{margin:0;padding:0;font-size:14px;list-style:none;counter-reset:k}
.hb nav li{margin:0 0 7px;display:flex;gap:8px;counter-increment:k}
.hb nav li:before{content:counter(k) ".";color:var(--grau);min-width:20px;text-align:right;font-variant-numeric:tabular-nums}
.hb nav button{all:unset;cursor:pointer;color:var(--text);line-height:1.35}
.hb nav button.an{font-weight:700;color:var(--blau)}
.hb article h3{margin:0 0 6px;font-size:19px}
.hb article p{max-width:70ch}
.anleitung{counter-reset:a;list-style:none;padding:0;margin:10px 0}
.anleitung li{counter-increment:a;position:relative;padding:3px 0 9px 36px}
.anleitung li:before{content:counter(a);position:absolute;left:0;top:2px;width:24px;height:24px;border-radius:50%;background:var(--blau-hell);color:var(--blau);font-weight:700;font-size:13px;display:grid;place-items:center}
.anleitung li small{display:block;color:#1f6b3e;font-size:13px;margin-top:2px}
.bild{border:1px solid var(--linie);border-radius:8px;background:linear-gradient(180deg,#f7f9fc,#eef2f7);height:190px;margin:12px 0;position:relative;overflow:hidden}
.bild .fenster{position:absolute;inset:14px 18px 30px;border-radius:6px;background:#fff;border:1px solid var(--linie)}
.bild .fenster:before{content:"";position:absolute;left:0;right:0;top:0;height:20px;background:var(--nebel);border-bottom:1px solid var(--linie);border-radius:6px 6px 0 0}
.bild .feld{position:absolute;height:13px;border-radius:4px;background:#e6ecf4}
.bild .markiert{outline:2px solid var(--rot);outline-offset:2px;background:#fde8e8}
.bild figcaption{position:absolute;bottom:7px;left:0;right:0;text-align:center;font-size:12px;color:var(--grau)}
.sprachen{display:flex;gap:4px}
.sprachen button{all:unset;cursor:pointer;font-size:12.5px;font-weight:600;padding:3px 8px;border-radius:6px;border:1px solid var(--linie)}
.sprachen button.an{background:var(--navy);color:#fff;border-color:var(--navy)}
.sprachen button[disabled]{opacity:.4;cursor:default}
.kette{display:grid;grid-template-columns:1fr;gap:6px}
.kette .glied{display:flex;gap:8px;align-items:flex-start;font-size:13.5px}
.kette .glied b{font-size:11.5px;color:var(--grau);font-weight:600;flex:0 0 62px;padding-top:2px}
.kette .glied button{all:unset;cursor:pointer;color:var(--blau);line-height:1.35}
.kette .glied .hier{font-weight:700;color:var(--text)}
.punkt{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;vertical-align:1px;background:#c5cfdc}
.punkt.g{background:var(--gruen)}.punkt.r{background:var(--rot)}.punkt.o{background:#d28b2b}
.seite-leiste .kasten li:has(.punkt){display:flex;gap:2px;align-items:baseline}.seite-leiste .kasten li .punkt{flex:0 0 8px}.seite-leiste .kasten li small{display:block}
.seite-leiste .kasten li>span:not(.punkt),.seite-leiste .kasten li>button{flex:1}
.mini{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mini div{background:var(--nebel);border-radius:8px;padding:8px 10px}
.mini b{display:block;font-size:18px;font-variant-numeric:tabular-nums}
.mini span{font-size:12px;color:var(--grau)}
@media (max-width:680px){.detail,.hb,.mini{grid-template-columns:1fr}}

@media (max-width:1050px){.haupt{grid-template-columns:1fr}.kz-reihe{grid-template-columns:repeat(2,1fr)}.zwei{grid-template-columns:1fr}}
@media (max-width:680px){.kopf{position:static}.kopf-innen{flex-wrap:wrap;padding:10px 16px}.suche{order:3;flex-basis:100%}.karte-innen,.haupt{padding-left:16px;padding-right:16px}
  .spalte{width:230px;flex-basis:230px}.zeile{grid-template-columns:1fr 70px}.zeile .kenn,.zeile .balken{display:none}.titel h1{font-size:24px}}

/* ---------- Viewer 0.1.0: Anmeldung, Lizenzhinweis, Navigator ---------- */
.kopf-rechts .wer{display:flex;flex-direction:column;align-items:flex-end;color:#c8d6ea;font-size:12.5px;line-height:1.3}
.kopf-rechts .wer b{color:#fff;font-size:13.5px}
.kopf-knopf{all:unset;cursor:pointer;border:1px solid #2c4568;background:var(--navy-2);color:#fff;border-radius:8px;padding:6px 12px;font-size:13.5px;font-weight:600;white-space:nowrap}
.kopf-knopf:hover,.kopf-knopf:focus-visible{border-color:#5c7ea8}
.tafel{position:fixed;inset:0;background:rgba(10,20,35,.45);display:none;align-items:flex-start;justify-content:center;z-index:50;padding:12vh 16px 16px}
.tafel.offen{display:flex}
.tafel-innen{background:#fff;border-radius:14px;max-width:440px;width:100%;padding:22px 24px;box-shadow:0 18px 50px rgba(10,20,35,.35)}
.tafel-innen h2{margin:0 0 6px;font-size:20px}
.tafel-innen label{display:block;font-size:13px;font-weight:600;color:var(--grau);margin:14px 0 4px}
.tafel-innen input{width:100%;border:1px solid var(--linie);border-radius:8px;padding:9px 12px;font-size:15px}
.tafel-knoepfe{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}
.knopf.voll{background:var(--blau);color:#fff;border-color:var(--blau)}
.knopf[disabled]{opacity:.5;cursor:default}
.meldung{margin:12px 0 0;font-size:13.5px;padding:8px 10px;border-radius:8px;background:var(--blau-hell);color:#0a4f97}
.meldung.fehler{background:var(--rot-hell);color:#a8321f}
.meldung:empty{display:none}
.band{background:#fff7e0;color:#6b4a00;font-size:13px;text-align:center;padding:6px 12px;border-bottom:1px solid #f0dca8}
.band:empty{display:none}
.hinweis-seite{background:#fff;border:1px dashed #c5d0de;border-radius:var(--radius);padding:34px 28px;text-align:center}
.hinweis-seite h2{margin:6px 0 4px;font-size:19px}
.hinweis-seite p{color:var(--grau);max-width:56ch;margin:6px auto 0}
.laden{color:var(--grau);padding:30px 0;text-align:center}
.reiter button.ohne{color:#9aa7b8}
.reiter button.ohne:after{content:"🔒";font-size:11px;margin-left:5px}
/* Ablauf: Zoom und Navigator für sehr grosse Modelle */
.ablauf-werkzeug{display:flex;align-items:center;gap:6px;margin:0 0 8px;flex-wrap:wrap}
.ablauf-werkzeug .knopf{padding:4px 10px;font-size:15px;min-width:18px;justify-content:center}
.ablauf-werkzeug .zoomwert{font-size:12.5px;color:var(--grau);min-width:44px;text-align:center;font-variant-numeric:tabular-nums}
.ablauf-huelle{overflow:auto;height:620px;max-height:none}
.ablauf-groesse{position:relative}
.ablauf{transform-origin:0 0}
.ablauf.gezoomt .bahn-name{position:relative;left:auto}
.ablauf-rahmen{position:relative}
.navigator{position:absolute;right:12px;bottom:12px;width:220px;height:140px;background:rgba(255,255,255,.96);border:1px solid var(--linie);border-radius:10px;box-shadow:0 6px 20px rgba(19,35,58,.16);z-index:5;overflow:hidden;cursor:grab;touch-action:none}
.navigator.zu{display:none}
.navigator svg{display:block;width:100%;height:100%}
.navigator .sicht{fill:rgba(10,110,209,.10);stroke:var(--blau);stroke-width:1.5;vector-effect:non-scaling-stroke}
.navigator:active{cursor:grabbing}
@media (max-width:680px){.navigator{width:150px;height:96px}}
@media print{.kopf,.karte,.ablauf-werkzeug,.navigator,.seite-leiste{display:none!important}.haupt{display:block}}

/* Startseite «Für Sie» (aus Mockup 1) */
.start{max-width:1400px;margin:0 auto;padding:26px 24px 60px}
.start h1{font-size:30px;margin:0 0 4px;letter-spacing:-.02em;font-weight:800}
.start>p{color:var(--grau);margin:0 0 18px;max-width:80ch}
.start-raster{display:grid;grid-template-columns:2fr 1fr;gap:20px}
.meine{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.meine button{all:unset;box-sizing:border-box;cursor:pointer;background:#fff;border:1px solid var(--linie);border-left:5px solid #2f8f56;border-radius:var(--radius);padding:14px 16px}
.meine button.gpo{border-left-color:var(--blau)}
.meine button:hover,.meine button:focus-visible{border-color:var(--blau);border-left-color:var(--blau)}
.meine b{display:block;font-size:15.5px}
.meine small{display:block;color:var(--grau);font-size:13px;margin-top:2px}
.wahl{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}
.wahl button{all:unset;cursor:pointer;font-size:13.5px;padding:5px 11px;border-radius:16px;border:1px solid var(--linie);background:#fff}
.wahl button[aria-pressed=true]{background:var(--blau);border-color:var(--blau);color:#fff;font-weight:600}
.wahl h4{flex-basis:100%;margin:8px 0 0;font-size:12.5px;color:var(--grau);font-weight:600}
.person{display:flex;align-items:center;gap:8px;color:#fff}
.person i{width:32px;height:32px;border-radius:50%;background:#2c4568;display:grid;place-items:center;font-style:normal;font-weight:700;font-size:13px}
.person span{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;line-height:1.25}
.person small{color:#a9bad1;font-size:12px;font-weight:500}
@media (max-width:1050px){.start-raster{grid-template-columns:1fr}}
@media (max-width:680px){.meine{grid-template-columns:1fr}.start{padding-left:16px;padding-right:16px}.person span{display:none}}

/* 0.1.2 */
.suche input{color:var(--text)}
.ablauf-di{position:relative;display:block;background:#fff}
.di-bahn{position:absolute;border:1px solid #e3e9f2;border-left:0;box-sizing:border-box}
.di-bahn span{position:absolute;left:0;top:0;bottom:0;width:28px;background:var(--nebel);border-right:1px solid #e3e9f2;writing-mode:vertical-rl;transform:rotate(180deg);font-size:11.5px;font-weight:600;color:var(--grau);display:flex;align-items:center;justify-content:center;overflow:hidden;white-space:nowrap}
.k.di{position:absolute;min-height:0;padding:4px 6px;font-size:11px;line-height:1.2;font-weight:600;justify-content:center;text-align:center;align-items:center;overflow:visible;z-index:1}
.k.di .di-nm{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.k.ca.di{padding-bottom:14px}
.k.ev.di{border-radius:50%;padding:0}
.k.gw.di{min-height:0}
.di-tx{position:absolute;width:140px;text-align:center;font-size:10.5px;line-height:1.2;color:var(--grau);pointer-events:none;z-index:1}
.ablauf-di svg.linien{position:absolute;left:0;top:0;z-index:0}
.links-leiste{display:none}
.schrittliste{list-style:none;margin:0;padding:0;counter-reset:s;font-size:13px}
.schrittliste li{counter-increment:s;border-top:1px solid #edf1f6}.schrittliste li:first-child{border-top:0}
.kasten .schrittliste li button{all:unset;cursor:pointer;display:block;padding:5px 2px 5px 26px;position:relative;line-height:1.3;width:100%;box-sizing:border-box}
.kasten .schrittliste li button:before{content:counter(s);position:absolute;left:0;top:6px;font-size:11px;color:var(--grau);width:20px;text-align:right;font-variant-numeric:tabular-nums}
.kasten .schrittliste li button:hover,.kasten .schrittliste li button:focus-visible{color:var(--blau)}
.kasten .schrittliste li button.an{color:var(--blau);font-weight:700}
.schrittliste small{display:block;color:var(--grau);font-size:11.5px;font-weight:400}
@media (min-width:1500px){
  .haupt{max-width:1720px;grid-template-columns:250px minmax(0,1fr) 300px}
  .links-leiste{display:block;grid-row:2;grid-column:1;align-self:start;position:sticky;top:76px;max-height:calc(100vh - 90px);overflow:auto}
  .haupt>.links{grid-column:2;grid-row:2}.haupt>.seite-leiste{grid-column:3;grid-row:2}
}

/* 0.1.2 Meldungen */
.tafel.breit .tafel-innen{max-width:720px;max-height:80vh;overflow:auto}
.tafel-innen select,.tafel-innen textarea{width:100%;border:1px solid var(--linie);border-radius:8px;padding:8px 10px;font-size:14.5px;box-sizing:border-box}
.tafel-innen .m-art{display:inline-flex;gap:6px;align-items:center;margin:0 14px 0 0;font-weight:500;color:var(--text);font-size:14px}
.m-schritte{padding-left:22px;margin:6px 0 10px}
.m-schritte li{display:grid;grid-template-columns:2fr 1fr 1.4fr auto;gap:6px;margin:0 0 6px}
.m-schritte input{padding:6px 8px !important;font-size:13.5px !important}
.meldung-k{border:1px solid var(--linie);border-radius:8px;margin:0 0 8px;background:#fff}
.meldung-k summary{cursor:pointer;padding:10px 12px;list-style:none;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.meldung-k summary small{flex-basis:100%;color:var(--grau);font-size:12.5px}
.meldung-i{padding:0 14px 12px}
.meldung-b{display:grid;grid-template-columns:200px 1fr auto;gap:10px;align-items:end;border-top:1px solid #edf1f6;padding-top:10px}
.meldung-b label{display:flex;flex-direction:column;font-size:12.5px;color:var(--grau);font-weight:600;gap:3px}
.meldung-b select,.meldung-b textarea{border:1px solid var(--linie);border-radius:6px;padding:6px 8px;font:inherit;font-size:13.5px;color:var(--text)}
.m-ok{grid-column:1/-1}
@media (max-width:680px){.meldung-b,.m-schritte li{grid-template-columns:1fr}}
.tafel-innen .m-art input{width:auto}
.di-bahn.senk span{writing-mode:horizontal-tb;transform:none;right:0;bottom:auto;width:auto;height:26px;border-right:0;border-bottom:1px solid #e3e9f2}
.tafel-innen textarea,.meldung-b textarea{font-family:inherit}
.anmelde-reiter{display:flex;gap:4px;border-bottom:1px solid var(--linie);margin:6px 0 10px}.anmelde-reiter button{all:unset;cursor:pointer;padding:7px 10px;font-weight:600;font-size:13.5px;color:var(--grau);border-bottom:3px solid transparent}.anmelde-reiter button[aria-selected=true]{color:var(--navy);border-bottom-color:var(--blau)}.m-var{grid-column:1/-1;margin:4px 0 0}.m-var small{color:var(--grau)}

/* 0.2.1: Fenster fester Höhe, Höhenregler, Schritt-Fenster mit Beschreibung, lange Listen */
.ablauf-werkzeug .ah{display:inline-flex;align-items:center;gap:8px;margin-left:auto;font-size:12.5px;color:var(--grau)}
.ablauf-werkzeug .ah input{width:120px;accent-color:var(--blau)}
.ablauf-werkzeug .ah span{min-width:52px;font-variant-numeric:tabular-nums}
.ablauf-werkzeug [data-sf][aria-pressed="true"],.ablauf-werkzeug [data-nav][aria-pressed="true"]{background:#e8f1fb;border-color:#9cc3ec}
.schritt-fenster{position:absolute;top:10px;right:10px;bottom:10px;width:340px;max-width:calc(100% - 20px);display:flex;flex-direction:column;background:#fff;border:1px solid var(--linie);border-radius:12px;box-shadow:0 10px 30px rgba(19,35,58,.18);z-index:6;overflow:hidden}
.sf-kopf{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;padding:14px 16px 10px;border-bottom:1px solid #edf1f6;background:#f7f9fc}
.sf-kopf small{color:var(--grau);font-size:11.5px}
.sf-kopf h3{margin:2px 0 0;font-size:16px;line-height:1.3}
.sf-zu{all:unset;cursor:pointer;font-size:22px;line-height:1;color:var(--grau);padding:2px 6px;border-radius:6px}
.sf-zu:hover,.sf-zu:focus-visible{background:#e8edf4;color:var(--tinte,#172b4d)}
.sf-inhalt{flex:1;overflow:auto;padding:12px 16px}
.sf-inhalt h4,.beschreibung h4,h4.zw{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--grau)}
h4.zw{margin-top:16px}
.sf-text{font-size:13.5px;line-height:1.55}
.sf-text p{margin:0 0 8px}.sf-text ul,.sf-text ol{margin:0 0 8px;padding-left:20px}.sf-text li{margin:2px 0}
.sf-text h5{margin:12px 0 4px;font-size:13.5px}
.sf-text code{background:#f1f4f8;border-radius:4px;padding:0 4px;font-size:12.5px}
.beschreibung{background:#f7f9fc;border:1px solid #edf1f6;border-radius:10px;padding:12px 14px;margin:0 0 12px}
.sf-test{margin:10px 0 0}
.sf-fuss{display:flex;gap:6px;flex-wrap:wrap;padding:10px 16px;border-top:1px solid #edf1f6}
.sf-fuss .knopf{font-size:12.5px;padding:5px 10px}
.ablauf-rahmen.mit-fenster .navigator{right:362px}
@media (max-width:900px){.schritt-fenster{top:auto;left:10px;right:10px;width:auto;height:46%}.ablauf-rahmen.mit-fenster .navigator{right:12px;bottom:auto;top:12px}}
.links-leiste .lang{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}

/* 0.2.2: Schnellwahl der Bereiche */
.wahl-hilfe{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:12px 0 2px;padding:10px 12px;background:#f7f9fc;border:1px solid #edf1f6;border-radius:10px}
.wahl-hilfe .knopf{font-size:12.5px;padding:4px 10px}
.wahl-hilfe .knopf[disabled]{opacity:.45;cursor:default}
.wahl-hilfe .knopf small{color:var(--grau);font-weight:400}
.wh-titel{font-size:12px;color:var(--grau);font-weight:600;margin-right:2px}
.wh-trenn{width:1px;height:20px;background:var(--linie);margin:0 6px}
.wh-zahl{margin-left:auto;font-size:12px;color:var(--grau)}
.wahl h4 .wh-gruppe{all:unset;cursor:pointer;font-size:11.5px;font-weight:600;color:var(--blau);margin-left:8px;padding:0 4px;border-radius:4px}
.wahl h4 .wh-gruppe:hover,.wahl h4 .wh-gruppe:focus-visible{background:#e8f1fb}
.stufe-punkt{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:1px;background:#b7c2d1}
.stufe-public.stufe-punkt{background:#2f8f56}.stufe-internal.stufe-punkt{background:#0a6ed1}.stufe-confidential.stufe-punkt{background:#d28b2b}.stufe-restricted.stufe-punkt{background:#c62828}
.wahl button[aria-pressed=true] .stufe-punkt{box-shadow:0 0 0 2px #fff}

.titel-knoepfe{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 0}
.knopf.fav-k.drin{background:#fff8e6;border-color:#e8c46a;color:#8a5a00}
.fav-mini{all:unset;cursor:pointer;color:var(--grau);padding:0 4px;border-radius:4px;font-size:13px}
.fav-mini:hover,.fav-mini:focus-visible{color:#b07900;background:#fff8e6}
.kasten li button.mehr{font-size:12.5px;color:var(--blau)}

/* 0.2.4: Melden-Menü, Nur-ansehen-Fenster, Bildschirmfotos, Testfälle */
.melden-wahl{position:relative;display:inline-flex}
.melden-wahl .menue{position:absolute;top:calc(100% + 6px);left:0;z-index:20;min-width:250px;background:#fff;border:1px solid var(--linie);border-radius:10px;box-shadow:0 10px 30px rgba(19,35,58,.18);padding:6px;display:flex;flex-direction:column}
.melden-wahl .menue[hidden]{display:none}
.melden-wahl .menue button{all:unset;cursor:pointer;padding:8px 10px;border-radius:8px;font-size:13.5px;line-height:1.3}
.melden-wahl .menue button:hover,.melden-wahl .menue button:focus-visible{background:#eef4fb}
.melden-wahl .menue small{display:block;color:var(--grau);font-size:12px;font-weight:400}
.tafel.ansicht-tafel .tafel-innen,.ansicht-tafel #tafelInnen{max-width:min(1100px,96vw);width:min(1100px,96vw)}
.ansicht-kopf{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.ansicht-kopf h2{margin:0 0 10px;font-size:18px}
.ansicht{max-height:76vh;overflow:auto;background:#eef1f5;border-radius:10px;padding:12px;text-align:center;user-select:none;-webkit-user-select:none}
.ansicht-seite{display:block;margin:0 auto 12px;background:#fff;box-shadow:0 2px 10px rgba(19,35,58,.15);max-width:100%;height:auto}
.ansicht-bild{max-width:100%;height:auto;display:block;margin:0 auto;-webkit-user-drag:none}
.ansicht-seiten{margin:0 0 8px;font-size:12px;color:var(--grau)}
.ansicht-hinweis{margin:8px 0 0;font-size:12px;color:var(--grau)}
.bild-vorschau{all:unset;cursor:zoom-in;display:block;margin:8px 0 4px;max-width:420px;border:1px solid var(--linie);border-radius:8px;overflow:hidden;background:#f7f9fc}
.bild-vorschau img{display:block;width:100%;height:auto;-webkit-user-drag:none;user-select:none}
.bild-vorschau:hover,.bild-vorschau:focus-visible{border-color:var(--blau);box-shadow:0 0 0 3px #e8f1fb}
.tf-kopf{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:flex-start}
.tf-filter{display:flex;gap:6px}
.tf-filter .knopf{font-size:12.5px;padding:4px 10px}
.tf-filter .knopf[aria-pressed=true]{background:#e8f1fb;border-color:#9cc3ec}
details.tf{border:1px solid #edf1f6;border-radius:10px;margin:8px 0;background:#fff}
details.tf>summary{cursor:pointer;padding:10px 14px;list-style:none;line-height:1.35}
details.tf>summary::-webkit-details-marker{display:none}
details.tf>summary small{display:block;color:var(--grau);font-size:12px;margin-top:2px}
details.tf>summary .st{margin-right:6px}
details.tf[open]>summary{border-bottom:1px solid #edf1f6;background:#f7f9fc;border-radius:10px 10px 0 0}
.tf-i{padding:10px 14px}

/* 0.2.5: veränderbares Ansichtsfenster, Kacheln als Filter, Mining/Projektzeiten */
.tafel.ansicht-tafel{padding:3vh 12px 12px}
.tafel.ansicht-tafel .tafel-innen{display:flex;flex-direction:column;resize:both;overflow:hidden;min-width:min(420px,94vw);min-height:300px;max-width:98vw!important;max-height:94vh;height:86vh;box-sizing:border-box;padding:16px 18px}
.tafel.ansicht-tafel .tafel-innen.gross{width:98vw!important;height:94vh!important}
.ansicht-tafel .ansicht{flex:1;min-height:0;max-height:none}
.ansicht-kopf{flex-wrap:wrap}
.ansicht-werkzeug{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ansicht-werkzeug .knopf{font-size:12.5px;padding:4px 10px}
.ansicht-werkzeug #azWert{min-width:72px;text-align:center;font-size:12.5px;color:var(--grau);font-variant-numeric:tabular-nums}
.ansicht-werkzeug [data-az-gross][aria-pressed=true]{background:#e8f1fb;border-color:#9cc3ec}
.ansicht-bild,.ansicht-seite{margin-left:auto;margin-right:auto}
.kz-reihe button.kz{all:unset;box-sizing:border-box;cursor:pointer;background:#fff;border:1px solid var(--linie);border-radius:var(--radius);padding:12px 14px;display:block}
.kz-reihe button.kz:hover,.kz-reihe button.kz:focus-visible{border-color:#9cc3ec;box-shadow:0 0 0 3px #e8f1fb}
.kz-reihe button.kz.an{border-color:var(--blau);box-shadow:0 0 0 2px var(--blau) inset;background:#f4f9ff}
.kz-reihe button.kz small{display:block;font-size:11.5px;color:var(--grau);margin-top:2px}
.kf-hinweis{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 10px;padding:8px 12px;background:#f4f9ff;border:1px solid #cfe2f6;border-radius:8px;font-size:13px}
.kf-hinweis .knopf{font-size:12px;padding:3px 9px}
.bal-zeile,.pi-zeile{display:grid;grid-template-columns:minmax(120px,32%) 1fr 84px;gap:10px;align-items:center;margin:6px 0;font-size:13px}
.bal-n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bal-w{text-align:right;font-variant-numeric:tabular-nums;color:var(--grau);font-size:12.5px}
.bal{display:flex;height:14px;background:#f1f4f8;border-radius:4px;overflow:hidden}
.bal i{display:block;height:100%}
.pi{display:flex;flex-direction:column;gap:2px}
.pi i{display:block;height:7px;border-radius:3px;min-width:1px}
.pi i.plan{background:#9cc9ea}.pi i.ist{background:#0f79bc}.pi i.ist.ueber{background:#c62828}
.monate{display:flex;gap:8px;align-items:flex-end;height:170px;padding-top:6px;overflow-x:auto}
.monat{display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;min-width:34px}
.saeulen{flex:1;display:flex;gap:3px;align-items:flex-end;width:100%;justify-content:center}
.saeulen i{display:block;width:12px;border-radius:3px 3px 0 0;min-height:1px}
.saeulen i.plan{background:#9cc9ea}.saeulen i.ist{background:#0f79bc}
.monat small{font-size:11px;color:var(--grau)}
.tab.zahlen td:not(:first-child),.tab.zahlen th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.tab.zahlen td:last-child,.tab.zahlen th:last-child{text-align:left;white-space:normal}
.tab td.rot{color:var(--rot);font-weight:600}

/* 0.2.8: TAOM-Signet und Weg zurück zum Editor */
.marke .signet{width:34px;height:34px;display:block;flex:0 0 auto}
.zum-editor{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;color:#cfe0f5;text-decoration:none;font-size:13px;font-weight:600;padding:7px 11px;border:1px solid #2b4466;border-radius:9px;background:#16304f}
.zum-editor:hover,.zum-editor:focus-visible{color:#fff;border-color:#4b78ad;background:#1d3d63}
.zum-editor[hidden]{display:none}
@media (max-width:680px){.zum-editor span{display:none}}
/* 0.2.45: «Editor ▾» - Support und Training als Unterknöpfe (spart Platz, Editor bleibt Vorgabe) */
.zum-editor{border-top-right-radius:0;border-bottom-right-radius:0}
.zum-editor[hidden]+.zum-gruppe .zum-mehr{border-radius:9px}
.zum-gruppe{position:relative;display:inline-flex;flex:0 0 auto;margin-left:-1px}
.zum-mehr{display:inline-flex;align-items:center;gap:6px;color:#cfe0f5;font:600 13px/1 inherit;padding:7px 8px;border:1px solid #2b4466;border-radius:0 9px 9px 0;background:#16304f;cursor:pointer;height:100%}
.zum-mehr:hover,.zum-mehr:focus-visible,.zum-mehr[aria-expanded="true"]{color:#fff;border-color:#4b78ad;background:#1d3d63}
.zum-menue{position:absolute;top:calc(100% + 6px);left:0;min-width:230px;background:#fff;border:1px solid #d7dfea;border-radius:10px;box-shadow:0 12px 32px rgba(15,23,42,.22);padding:6px;z-index:60;display:flex;flex-direction:column;gap:2px}
.zum-menue[hidden]{display:none}
.zum-menue button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;background:none;border:0;border-radius:7px;padding:8px 10px;cursor:pointer;color:#14233a;font:inherit}
.zum-menue button:hover,.zum-menue button:focus-visible{background:#eef4fb}
.zum-menue small{color:#5b6b80;font-size:12px}
/* 0.2.9: Verbindungen zu anderen Modellen wie im Editor - ⊞ Unterprozess, Kettenglied für Übergänge */
.k .l4z{position:absolute;left:50%;bottom:-8px;margin-left:-7.5px;width:15px;height:15px;box-sizing:border-box;border:1.2px solid #0f766e;border-radius:4px;background:#ccfbf1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15'%3E%3Cg fill='none' stroke='%230f766e' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M6.2 9.3l-1.4 1.4a2 2 0 0 1-2.8-2.8l2.2-2.2a2 2 0 0 1 2.8 0M8.8 5.7l1.4-1.4a2 2 0 0 1 2.8 2.8l-2.2 2.2a2 2 0 0 1-2.8 0M5.8 9.2l3.4-3.4'/%3E%3C/g%3E%3C/svg%3E") center/15px 15px no-repeat;color:#0f766e;font:700 14px/12px system-ui,sans-serif;text-align:center;cursor:pointer;z-index:2}
.k .l4z.unter{background-image:none}
.k .l4z:hover{background-color:#99f6e4;box-shadow:0 0 0 2px #0f766e33}
.k.ev .l4z,.k.gw .l4z{left:-3px;top:-3px;bottom:auto;margin-left:0}
.k.ev:not(.di) .l4z{left:2px;top:-6px}
.k.ca:has(.l4z):after{display:none}
/* 0.2.12 (Nutzer 13:44): Zeichen sitzt auf dem unteren Rand - der Text behält seinen Platz. */
.l4-wege{margin:10px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.k.gw .l4z{transform:rotate(-45deg)}
.zurueck-zeile{margin:0 0 10px}.knopf.zurueck{background:#eef5ff;border-color:#bcd3f3}
/* 0.2.17: BPMN-Demo-Vorrat – roter Hinweis neben der Überschrift (immer sichtbar, Schrift je nach Länge kleiner) */
.titelzeile{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px}
.titelzeile h1{margin-right:0}
.demo-hinweis{flex:1 1 320px;max-width:560px;margin:0;color:#c62828;font-weight:600;line-height:1.35;border-left:3px solid #c62828;padding:2px 0 2px 10px}
@media (max-width:700px){.demo-hinweis{flex-basis:100%;max-width:none}}
/* 0.2.20: Diagrammart oben rechts wechseln */
.flaeche.mit-wahl{position:relative}
.flaeche.mit-wahl>h2,.flaeche.mit-wahl>.unter{padding-right:250px}
.dia-wahl{position:absolute;top:14px;right:16px;display:flex;gap:2px;background:#f1f4f8;border:1px solid var(--linie);border-radius:9px;padding:2px;z-index:2}
.dia-wahl button{all:unset;cursor:pointer;font-size:12px;line-height:1.2;padding:4px 9px;border-radius:7px;color:var(--grau)}
.dia-wahl button:hover,.dia-wahl button:focus-visible{color:var(--navy);background:#e6edf6}
.dia-wahl button[aria-pressed=true]{background:#fff;color:var(--navy);font-weight:600;box-shadow:0 1px 2px rgba(15,36,64,.14)}
.dia-ring{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.dia-stapel{display:flex;height:22px;border-radius:6px;overflow:hidden;background:#edf1f6;margin:10px 0 8px}
.dia-stapel i{display:block;height:100%}
.dia-saeulen{display:flex;gap:8px;align-items:flex-end;overflow-x:auto;padding:6px 0 2px}
.dia-saeulen .ds{flex:1 0 72px;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:72px;max-width:120px}
.dia-saeulen .ds-w{font-size:11px;font-weight:700;color:#172b4d;white-space:nowrap}
.dia-saeulen .ds-s{height:160px;width:28px;display:flex;align-items:flex-end;background:#f4f6f9;border-radius:4px}
.dia-saeulen .ds-s i{display:flex;align-items:flex-end;width:100%;background:#c5dcf6;border-radius:4px 4px 0 0}
.dia-saeulen .ds-s i b{display:block;width:100%;background:#0a6ed1;border-radius:0}
.dia-saeulen small{font-size:11px;color:var(--grau);text-align:center;line-height:1.25;width:100%;height:2.5em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}
@media (max-width:760px){.dia-wahl{position:static;margin:0 0 10px;width:max-content;max-width:100%;flex-wrap:wrap}.flaeche.mit-wahl>h2,.flaeche.mit-wahl>.unter{padding-right:0}}
/* 0.2.24: PDF-Handbuch am Ende des Kapitels */
.hb-pdf-unten{margin-top:18px;padding:12px 14px;border:1px solid var(--linie);border-radius:10px;background:#f6f9fd}
.hb-pdf-unten .unter{display:inline;font-size:12.5px}
/* 0.2.26 Laufverlauf und PDF-Testnachweise je Testfall */
.lauf-verlauf{margin:10px 0 4px;font-size:13px;line-height:1.9}
.lauf-verlauf .st{white-space:nowrap}
.tn-liste{margin:10px 0 6px;padding:10px 12px;border:1px solid var(--linie);border-radius:10px;background:#f6f9fd}
.tn-liste .unter{display:inline;font-size:12.5px}
.tn-liste .knopf small{opacity:.75;margin-left:4px}
/* 0.2.27 Risikoregister: Balken je Methode/Kategorie (klickbar), Hinweis Überprüfung */
.ri-balken{display:flex;flex-direction:column;gap:4px}
.ri-b{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:minmax(120px,40%) 1fr 36px;align-items:center;gap:8px;padding:3px 6px;border-radius:5px;font-size:13px}
.ri-b:hover,.ri-b:focus-visible{background:#f1f5fb;outline:none}
.ri-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ri-s{height:9px;background:#eef1f5;border-radius:5px;overflow:hidden}.ri-s i{display:block;height:100%}
.ri-b b{text-align:right;font-variant-numeric:tabular-nums}
.ri-filter{margin:8px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.ri-pruef{color:#7c3aed}
/* 0.2.28 Schutzart-Marke */
.sz-marke{display:inline-block;border-radius:4px;padding:0 5px;font-weight:700;font-size:11.5px;background:#eef2ff;color:#3730a3;white-space:nowrap}
.sz-marke.ex{background:#facc15;color:#111827;border:1px solid #1f2937}
.gs-info{color:#5e6c84}
.demo-tm-hinweis{border:1px solid #f0c3c3;border-left:4px solid #c62828;background:#fff6f6;color:#7a1f1f;border-radius:8px;padding:10px 12px;margin:0 0 14px;font-size:13.5px}
/* 0.2.25: Version */
.version-zeile{margin:8px 0 0;font-size:11.5px;color:inherit;opacity:.75}
.version-fuss{margin:24px 0 8px;text-align:center;font-size:12px;color:var(--grau)}
/* 0.2.31 Änderungen (Change Requests) */
.cr-st{display:inline-block;color:#fff;border-radius:10px;padding:1px 8px;font-size:11.5px;font-weight:700;margin-right:6px;vertical-align:1px}
.cr-score{display:grid;grid-template-columns:120px 1fr 36px;gap:8px;align-items:center;font-size:13px;padding:2px 0}
.cr-chips{display:flex;flex-wrap:wrap;gap:4px}.cr-chips span{background:#eef2f7;border:1px solid #d7deea;border-radius:10px;padding:0 7px;font-size:12px}
.cr-liste{margin:4px 0 8px 18px;font-size:13px}.cr-verlauf{margin:4px 0 0 18px;font-size:13px}
/* 0.2.35 Sprachenschalter */
.kopf-rechts select.kopf-sprache{padding:5px 6px;font-size:12.5px;font-weight:600;cursor:pointer}
/* 0.2.37 Textblock für Suchmaschinen und Screenreader (sichtbar, unter dem Viewer) */
.seo-info{background:#f4f6fa;border-top:1px solid #dde3ec;margin-top:28px;padding:22px 16px 30px;color:#334155;font-size:13.5px;line-height:1.55}
.seo-info .seo-innen{max-width:1180px;margin:0 auto}
.seo-info h1{font-size:17px;margin:0 0 6px;color:#1f2a44}
.seo-info h2{font-size:14.5px;margin:14px 0 6px;color:#1f2a44}
.seo-info .seo-liste{columns:3 260px;margin:0;padding-left:18px}
.seo-info .seo-liste li{break-inside:avoid;margin:1px 0}
.seo-info a{color:#1d4ed8}
.seo-info .seo-links{margin-top:12px}

/* 0.2.39 Namenszusatz, Leitsatz, Bewertungsgrundlage, Ausgangs- und Restrisiko */
.marke span.marke-zusatz{display:block;font-size:10.5px;font-weight:500;color:#8fa3c0;letter-spacing:.01em;white-space:nowrap;margin-top:1px}
@media (max-width:980px){.marke span.marke-zusatz{display:none}}
.seo-info .seo-zusatz{font-weight:500;color:#475569;font-size:14px}
.seo-info .seo-lead{font-size:15px;color:#1f2a44;font-weight:600;max-width:900px}
#start .leitsatz{font-size:15.5px;color:#1f2a44;font-weight:600;max-width:900px;margin:4px 0 14px;border-left:4px solid #1d4ed8;padding:4px 0 4px 12px}
.ri-art{display:inline-block;font-size:10.5px;padding:0 6px;border-radius:8px;background:#eef2ff;color:#3730a3;margin-left:2px}
.ri-swe{display:block;color:#64748b;font-size:11px;line-height:1.35}
.ri-grund summary{cursor:pointer;list-style:none}.ri-grund summary::-webkit-details-marker{display:none}
.ri-grund summary span{color:#64748b;font-size:13px;margin-left:6px}
.ri-grund[open] summary{margin-bottom:8px}
.ri-grund h4{margin:10px 0 6px;font-size:13.5px}
.ri-matrix td,.ri-matrix th{text-align:center}.ri-matrix tbody th{text-align:left}
.ri-matrix td.k1{background:#fdecea;color:#991b1b;font-weight:700}.ri-matrix td.k2{background:#fff4e5;color:#92400e;font-weight:700}.ri-matrix td.k3{background:#e8f5ee;color:#166534;font-weight:700}
.ri-def{margin:10px 0 0 18px;font-size:13px}.ri-def li{margin:3px 0}

/* 0.2.47 (Nutzer 09.11.2026 13:44 «hier fehlt das Farbrechteck»): Viewer magenta wie die Portale (Support rot, Training grün). */
.kopf-rail{flex:0 0 52px;align-self:stretch;margin:-12px 4px -12px 0;background:#c026d3;border-right:1px solid rgba(255,255,255,.08)}
@media (max-width:680px){.kopf-rail{flex-basis:8px;margin:-10px 0 -10px -16px}}

/* 0.2.50 Navigation (Unternehmensmodell): volle Breite, Wort «Navigation», Spaltenköpfe oberhalb, Pfeile, Farben erklärt */
.karte-knoepfe{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}
.nav-rahmen{display:flex;gap:10px;align-items:stretch}
.nav-wort{writing-mode:vertical-rl;transform:rotate(180deg);font-weight:800;font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:#c9d6e6;align-self:center;user-select:none}
.nav-rahmen .spalten-huelle{flex:1 1 auto;min-width:0}
.spalten-kopf{display:flex;gap:2px;width:max-content;min-width:100%;padding:0 0 6px;background:var(--navy)}
.spalten-kopf .sk{width:268px;flex:0 0 268px;display:flex;align-items:baseline;gap:7px;padding:0 14px;box-sizing:border-box;white-space:nowrap}
.spalten-kopf .sk:last-child{flex:1 0 268px}
.spalten-kopf .sk b{font-size:14.5px;color:#fff;overflow:hidden;text-overflow:ellipsis}
.spalten-kopf .sk small{font-size:11.5px;color:#8ea3c0;font-weight:500}
.spalten-kopf .sk em{font-style:normal;margin-left:auto;color:#5aa9f0;font-size:17px;line-height:1}
.spalte h3{display:none}
.spalten{border-radius:12px;overflow:hidden}
.spalte li button{grid-template-columns:auto minmax(0,1fr) auto 12px}
.spalte li button .zahl{white-space:nowrap}
.spalte li button .pfeil{font-size:17px;line-height:1;color:#6f88aa;text-align:center}
.spalte li button:hover .pfeil{color:#fff}
.spalte li button[aria-selected=true] .pfeil{color:var(--navy)}
.spalte li button .ampel{grid-column:2/5}
.spalten.neu .spalte:last-child li button .pfeil{animation:tpvPfeil 1.4s ease-in-out infinite}
@keyframes tpvPfeil{0%,100%{transform:translateX(0);opacity:.55}50%{transform:translateX(4px);opacity:1;color:#5aa9f0}}
@media (prefers-reduced-motion:reduce){.spalten.neu .spalte:last-child li button .pfeil{animation:none;color:#5aa9f0}}
.nav-legende{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;margin:10px 0 0 32px;font-size:12.5px;color:#c9d6e6}
.nav-legende[hidden]{display:none}
.nav-legende b{color:#fff}
.nav-legende span{display:inline-flex;align-items:center;gap:6px}
.nav-legende i{display:inline-block;width:14px;height:4px;border-radius:2px}
@media (min-width:1500px){.karte-innen{max-width:1720px}}
@media (max-width:680px){.nav-wort{display:none}.nav-legende{margin-left:0}}

/* 0.2.50 Kopf: alle Bedienelemente gleich hoch (38 px), Kürzel mit Kontokarte, «Ansicht als» ohne Wort */
.kopf .zum-editor,.kopf .zum-mehr,.kopf-knopf,.kopf-rechts select,.kopf-rechts select.kopf-sprache,.suche input{height:38px;box-sizing:border-box}
.kopf .zum-editor,.kopf .zum-mehr{padding-top:0;padding-bottom:0}
.kopf-knopf{display:inline-flex;align-items:center;padding:0 14px}
.suche input{padding:0 18px 0 44px}
.kopf-rechts select{padding:0 8px}
.person-gruppe{position:relative;display:inline-flex}
/* 0.2.55 (Nutzer 11.11.2026 01:01 «wie im Editor, überall gleich»): 52 x 30 px, Ecken 8 px, Navy - wie der Kontoknopf im Editor */
.person-knopf{all:unset;cursor:pointer;border-radius:8px}
.person-knopf i{height:38px;min-width:60px;padding:0 14px;border-radius:8px;background:#16305a;border:1px solid #26456f;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;font:normal 600 12.5px/1 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#dbe6f7;letter-spacing:.02em}
.person-knopf:hover i,.person-knopf[aria-expanded=true] i{border-color:#3b6ea8;color:#fff}
.person-knopf:focus-visible{outline:3px solid #5aa9f0;outline-offset:2px}
.person-karte{position:absolute;right:0;top:calc(100% + 8px);z-index:40;background:#fff;color:var(--text);border-radius:12px;box-shadow:0 14px 36px rgba(10,20,35,.3);padding:12px 14px;min-width:260px;max-width:340px;display:flex;flex-direction:column;gap:8px}
.person-karte[hidden]{display:none}
/* 0.2.52 Profilbild im Kopf und auf der Karte */
.person-knopf i.mit-bild{background:#16305a;overflow:hidden;padding:0;width:60px}
.person-knopf i.mit-bild img{width:100%;height:100%;object-fit:cover;border-radius:7px;display:block;background:transparent}
.person-karte .pk-kopf{display:flex;align-items:center;gap:10px;padding-bottom:8px;border-bottom:1px solid #e3e9f2}
.pk-kopf img,.pk-kopf i{width:48px;height:48px;border-radius:50%;flex:0 0 48px;object-fit:cover;background:transparent;border:0}
.pk-kopf i{display:grid;place-items:center;font-style:normal;font-weight:700;font-size:16px;color:#fff;background:#2c4568;border-color:#3c5a82}
.pk-kopf b{font-weight:600;word-break:break-word}
.pk-z{display:flex;flex-direction:column;gap:1px}
.pk-z small{font-size:11.5px;color:var(--grau);font-weight:600}
.pk-z b{font-size:13.5px;font-weight:600;word-break:break-word}
.person.besuch i{width:38px;height:38px}

/* 0.2.51 (Nutzer 22:59): Wort weiter gesperrt; Zeilen ohne Überlappung (Zahl unter dem Namen); Breite wie der Inhalt darunter
   (Startseite 1400 px, Ebenen 1720 px); zugeklappt: Wort, Spaltenköpfe, Farben und Legende weg. */
.nav-wort{letter-spacing:.42em;font-size:12.5px}
.spalte li button{grid-template-columns:auto minmax(0,1fr) 14px;row-gap:1px}
.spalte li button .nm{overflow-wrap:anywhere}
.spalte li button .zahl{grid-column:2/3;grid-row:2;font-size:11px;line-height:1.2}
.spalte li button .zahl:empty{display:none}
.spalte li button .pfeil{grid-column:3;grid-row:1}
.spalte li button .ampel{grid-column:2/4;grid-row:3}
body.ist-start .karte-innen{max-width:1400px}
.karte.zu .nav-rahmen,.karte.zu .nav-legende,.karte.zu #farbenKnopf{display:none!important}

/* 0.2.53: Inhalte von TAOM – nicht drucken */
@media print{body.tpv-kein-druck>*{display:none!important}body.tpv-kein-druck::before{content:"Drucken ist für Inhalte von TAOM nicht erlaubt – bitte im Viewer ansehen. · Printing TAOM content is not permitted – please view it in the viewer.";display:block;padding:40px;font:16px/1.5 sans-serif;color:#000}}
.druck-hinweis{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:99999;background:#16305a;color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;box-shadow:0 6px 24px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:opacity .2s}
.druck-hinweis.an{opacity:1}

/* 0.2.54 Kontokarte: Anmeldungen und Abmelden */
.person-karte .pk-anm-l{margin:4px 0 0;padding:0 0 0 14px;font-size:12px;font-weight:400;color:#42526e}
.person-karte .pk-warn{display:block;margin-top:6px;font-style:normal;font-size:12px;font-weight:600;color:#a8321f;background:#fdecea;border-radius:6px;padding:6px 8px}
.person-karte .pk-knoepfe{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;margin-top:8px;padding-top:8px;border-top:1px solid #e3e9f2}
.person-karte .pk-knoepfe button{font:inherit;font-size:12.5px;font-weight:600;border-radius:6px;padding:5px 10px;cursor:pointer;border:1px solid #c9d1dc;background:#fff;color:#172b4d}
.person-karte .pk-knoepfe button[hidden]{display:none}
.person-karte .pk-knoepfe .pk-ab{background:#0a6ed1;border-color:#0a6ed1;color:#fff}
/* 0.2.59 (Nutzer 11.11.2026 09:55): Darstellung 1 : 1 aus dem Profil – quadratischer Knopf, ganzes Bild */
.person-knopf i.mit-bild.bild-1x1{width:38px;min-width:38px}
/* 0.2.60 Hinweis «Arbeitsstände» als Kasten auf der Startseite (statt Band oben) */
.kasten.hinweis-stand{background:#fff7e0;border-color:#f0dca8}
.kasten.hinweis-stand h4{color:#6b4a00}
.kasten.hinweis-stand p{margin:0;color:#6b4a00;font-size:13.5px;line-height:1.45}
/* 0.2.61 Systemkennzeichen in der Kontokarte */
.person-karte .pk-sys{display:inline-flex;align-self:flex-start;font:700 11px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.03em;padding:4px 9px;border-radius:999px;margin:-2px 0 4px}

/* 0.2.68 Kontextmenü (rechte Maustaste) */
.kmenue{position:fixed;z-index:13000;min-width:240px;max-width:340px;background:#fff;color:var(--text);border:1px solid var(--linie);border-radius:12px;box-shadow:0 16px 40px rgba(19,35,58,.24);padding:6px;font-size:14px;line-height:1.3}
.kmenue .km-sys{margin:-6px -6px 6px;padding:8px 12px;border-radius:12px 12px 0 0;font-size:12px;font-weight:700;letter-spacing:.02em}
.kmenue .km-gruppe{padding:6px 10px 2px;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#13233a}
.kmenue button[data-km-nav]{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:7px 10px;border:0;background:none;border-radius:8px;color:var(--text);font:inherit;cursor:pointer}
.kmenue button[data-km-nav]:hover,.kmenue button[data-km-nav]:focus-visible{background:var(--blau-hell);outline:none}
.kmenue .km-farbe{display:flex;justify-content:center;align-items:center}
.kmenue .km-kopf{padding:6px 10px 8px;font-size:12px;font-weight:700;color:var(--grau);border-bottom:1px solid var(--linie);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kmenue button[data-km]{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:7px 10px;border:0;background:none;border-radius:8px;color:var(--text);font:inherit;cursor:pointer}
.kmenue button[data-km]:hover,.kmenue button[data-km]:focus-visible{background:var(--blau-hell);outline:none}
.kmenue button[aria-disabled="true"]{color:#97a3b6;cursor:default;background:none}
.kmenue .km-sym{flex:0 0 18px;text-align:center;color:var(--blau)}
.kmenue .km-trenner{height:1px;background:var(--linie);margin:5px 4px}
.kmenue .km-fuss{padding:6px 10px 2px;font-size:11px;color:#97a3b6;border-top:1px solid var(--linie);margin-top:4px}
.kmenue .km-form{display:flex;flex-direction:column;gap:8px;padding:4px 6px 6px}
.kmenue .km-form input{width:100%;padding:7px 9px;border:1px solid var(--linie);border-radius:8px;font:inherit}
.kmenue .km-form-k{display:flex;gap:6px;flex-wrap:wrap}
.km-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:var(--navy);color:#fff;padding:9px 16px;border-radius:999px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:13001}
.km-toast.an{opacity:1;transform:translateX(-50%) translateY(0)}

/* 0.2.69 Kontextmenü: Kennzahlen und Steckbrief */
.kmenue .km-info{padding:4px 10px 8px;border-bottom:1px solid var(--linie);margin-bottom:4px;font-size:12.5px;color:var(--grau);display:grid;gap:4px}
.kmenue .km-info small{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#97a3b6;font-weight:700}
.kmenue .km-info span{color:var(--text)}
.kmenue .km-balken{display:flex;height:6px;border-radius:999px;overflow:hidden;background:#e8edf3;margin-top:2px}
.kmenue .km-balken i{display:block;height:100%}
.kmenue .km-leg{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;font-size:11.5px;color:var(--grau)}
.kmenue .km-leg i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:2px}
.kmenue .km-info dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 10px}
.kmenue .km-info dt{color:#97a3b6;font-weight:600}
.kmenue .km-info dd{margin:0;color:var(--text);overflow-wrap:anywhere}
.km-detail{max-width:760px;margin:0 auto;background:#fff;border-radius:12px;padding:18px 20px;color:var(--text)}
