







.nkv.nkv .nkv-svg .nkv-fa-treff { fill: transparent; stroke: none; pointer-events: all; }
.nkv .nkv-pille .nkv-ic { color: var(--ton, var(--text-3)); }


.nkv .nkv-fg { display: flex; flex-direction: column; gap: 10px; }
.nkv .nkv-fg-bild { min-width: 0; }
.nkv .nkv-svg .nkv-fg-tick { font-size: 11.5px; fill: var(--text-3); }
.nkv .nkv-svg .nkv-fg-ax { font-size: 13px; font-style: italic; fill: var(--text-2); }
.nkv .nkv-svg .nkv-fg-achse { stroke: var(--text-3); stroke-width: 1.2; }
.nkv .nkv-svg .nkv-fg-spitze { fill: var(--text-3); stroke: none; }
.nkv .nkv-svg .nkv-fg-kurve { fill: none; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.nkv .nkv-svg .nkv-fg-name {
  font-size: 13px; font-weight: 600; font-style: italic; paint-order: stroke; stroke: var(--nkv-grund); stroke-width: 3.5px;
  stroke-linejoin: round;
}
.nkv .nkv-svg .nkv-fg-null circle { fill: var(--nkv-grund); stroke-width: 2; }
.nkv .nkv-svg .nkv-fg-schnitt path { fill: var(--text); stroke: var(--nkv-grund); stroke-width: 1.5; }
.nkv .nkv-svg .nkv-fg-punkt circle { fill: var(--text); stroke: var(--nkv-grund); stroke-width: 1.5; }
.nkv .nkv-svg .nkv-fg-plabel {
  font-size: 12px; font-weight: 600; fill: var(--text); paint-order: stroke; stroke: var(--nkv-grund); stroke-width: 3.5px;
  stroke-linejoin: round;
}
.nkv.nkv .nkv-fg-leg { display: flex; flex-direction: column; gap: 3px; font-size: 12.5px; }
.nkv.nkv :is(.nkv-fg-l, .nkv-fg-s) { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 10px; padding: 2px 4px; }
.nkv .nkv-fg-sw { width: 26px; height: 8px; flex: none; fill: none; stroke-width: 2.4; stroke-linecap: round; }
.nkv .nkv-fg-term { font-size: 13.5px; color: var(--text); white-space: nowrap; }
.nkv .nkv-fg-term i { font-family: Georgia, "Times New Roman", serif; font-size: 14.5px; }
.nkv .nkv-fg-term sup { font-size: .72em; line-height: 0; }
.nkv .nkv-fg-nst { color: var(--text-2); }
.nkv .nkv-fg-hin { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 11.5px; color: var(--text-3); }
.nkv .nkv-fg-hin > span { display: inline-flex; align-items: center; gap: 5px; }
.nkv .nkv-fg-zeichen { display: inline-block; flex: none; width: 9px; height: 9px; box-sizing: border-box; }
.nkv .nkv-fg-kreis { border: 2px solid var(--text-2); border-radius: 50%; }
.nkv .nkv-fg-voll { background: var(--text); border-radius: 50%; }
.nkv .nkv-fg-raute { background: var(--text); transform: rotate(45deg) scale(.85); }


.nkv .nkv-mr { display: flex; flex-direction: column; gap: 10px; }
.nkv .nkv-mr-kenn { display: grid; grid-template-columns: repeat(auto-fit, minmax(118px, 1fr)); gap: 8px; }
.nkv .nkv-mr-k {
  display: flex; flex-direction: column; gap: 1px; min-width: 0; padding: 7px 10px; border: 1px solid var(--linie);
  border-radius: var(--r-1); background: var(--nkv-karte);
}
.nkv .nkv-mr-k:first-child { border-color: var(--p-linie); background: var(--p-flaeche); }
.nkv .nkv-mr-l { font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--text-3); }
.nkv .nkv-mr-w { font-size: 16px; font-weight: 600; color: var(--text); overflow-wrap: anywhere; }
.nkv .nkv-mr-z { font-size: 11.5px; color: var(--text-3); overflow-wrap: anywhere; }
.nkv .nkv-mr-bild { min-width: 0; }
.nkv .nkv-svg .nkv-mr-tick { font-size: 11.5px; fill: var(--text-3); }
.nkv .nkv-svg .nkv-mr-ml { font-size: 12px; font-weight: 600; fill: var(--p-tief); }
.nkv .nkv-svg .nkv-mr-band { fill: var(--p-flaeche); stroke: none; }
.nkv .nkv-svg .nkv-mr-mittel { stroke: var(--p); stroke-width: 1.6; stroke-dasharray: 6 4; }
.nkv .nkv-svg .nkv-mr-p circle { fill: var(--nkv-c1); stroke: var(--nkv-grund); stroke-width: 1.5; }
.nkv .nkv-svg .nkv-mr-auff path { fill: var(--fehler); stroke: var(--nkv-grund); stroke-width: 1.5; }
.nkv .nkv-mr-leg { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 11.5px; color: var(--text-3); }
.nkv .nkv-mr-leg > span { display: inline-flex; align-items: center; gap: 6px; }
.nkv .nkv-mr-sw { display: inline-block; flex: none; width: 10px; height: 10px; box-sizing: border-box; }
.nkv .nkv-mr-sw-p { border-radius: 50%; background: var(--nkv-c1); }
.nkv .nkv-mr-sw-m { width: 18px; height: 0; border-top: 2px dashed var(--p); }
.nkv .nkv-mr-sw-b { width: 18px; background: var(--p-flaeche); border: 1px solid var(--p-linie); }
.nkv .nkv-mr-sw-a { background: var(--fehler); transform: rotate(45deg) scale(.85); }


.nkv .nkv-re { display: flex; flex-direction: column; gap: 12px; }
.nkv .nkv-re-rolle { overflow-x: auto; overscroll-behavior-x: contain; }
.nkv .nkv-re-gl {
  display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: center; gap: 6px 12px; padding: 14px 12px 10px;
  border: 1px solid var(--linie); border-radius: var(--r-1); background: var(--nkv-karte);
}
.nkv .nkv-re-st { display: inline-flex; flex-direction: column; align-items: center; gap: 2px; padding: 2px 4px; }
.nkv .nkv-re-f { font-size: 22px; line-height: 1.25; color: var(--text); white-space: nowrap; font-variant-numeric: lining-nums; }
.nkv .nkv-re-f sub, .nkv .nkv-re-f sup { font-size: .62em; line-height: 0; }
.nkv .nkv-re-n { margin-right: 4px; font-weight: 700; color: var(--p-tief); }
.nkv .nkv-re-z { margin-left: 3px; font-size: 13px; color: var(--text-3); }
.nkv .nkv-re-name { font-size: 11.5px; color: var(--text-3); text-align: center; max-width: 16ch; }
.nkv .nkv-re-plus { align-self: flex-start; padding-top: 3px; font-size: 20px; color: var(--text-2); }
.nkv .nkv-re-pfeil { display: inline-flex; flex-direction: column; align-items: center; min-width: 64px; padding: 0 2px; }
.nkv .nkv-re-bed { max-width: 22ch; font-size: 11.5px; line-height: 1.3; text-align: center; color: var(--text-2); }
.nkv .nkv-re-p { font-size: 26px; line-height: 1; color: var(--text); }
.nkv .nkv-re-fuss { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.nkv.nkv .nkv-re-bil { display: flex; flex-wrap: wrap; gap: 6px; }
.nkv.nkv .nkv-re-b {
  display: inline-flex; align-items: baseline; gap: 6px; padding: 1px 9px; border: 1px solid var(--linie);
  border-radius: var(--r-rund); background: var(--nkv-karte); font-size: 12px; color: var(--text-2);
}
.nkv .nkv-re-el { font-weight: 700; color: var(--text); }


.nkv .nkv-el { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 14px 18px; align-items: start; }
.nkv .nkv-el-kachel {
  position: relative; display: grid; grid-template-rows: auto 1fr auto; justify-items: center; width: 132px; min-height: 140px;
  box-sizing: border-box; padding: 26px 10px 12px; border: 1.5px solid color-mix(in srgb, var(--c, var(--p)) 60%, var(--linie));
  border-radius: var(--r-1); background: color-mix(in srgb, var(--c, var(--p)) 13%, var(--nkv-karte));
}
.nkv .nkv-el-z { position: absolute; top: 6px; left: 9px; font-size: 14px; font-weight: 700; color: var(--text); }
.nkv .nkv-el-m { position: absolute; top: 7px; right: 9px; font-size: 11px; color: var(--text-2); }
.nkv .nkv-el-sym { font-size: 46px; font-weight: 700; line-height: 1.05; color: var(--text); }
.nkv .nkv-el-name { font-size: 13px; font-weight: 600; color: var(--text); text-align: center; overflow-wrap: anywhere; }
.nkv .nkv-el-rechts { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.nkv .nkv-el-pse {
  display: grid; grid-template-columns: repeat(18, 11px); grid-template-rows: repeat(7, 11px) 5px repeat(2, 11px); gap: 2px;
  align-self: flex-start;
}
.nkv .nkv-el-c { border-radius: 2px; background: var(--flaeche-3); }
.nkv .nkv-el-linie { background: color-mix(in srgb, var(--p) 22%, var(--flaeche-3)); }
.nkv .nkv-el-platz { background: repeating-linear-gradient(45deg, var(--flaeche-3) 0 2px, transparent 2px 4px); }
.nkv .nkv-el-hier { background: var(--p); box-shadow: 0 0 0 2px var(--p-linie); }
.nkv .nkv-el-lage { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; font-size: 12.5px; color: var(--text-2); }
.nkv .nkv-el-art { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; color: var(--text); }
.nkv .nkv-el-dot { width: 10px; height: 10px; border-radius: 3px; background: var(--c, var(--p)); }
.nkv.nkv .nkv-el-fakten { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 6px 14px; }
.nkv.nkv .nkv-el-f { display: flex; flex-direction: column; padding: 4px 0; border-top: 1px solid var(--linie); }
.nkv.nkv .nkv-el-f dt { font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--text-3); }
.nkv.nkv .nkv-el-f dd { color: var(--text); overflow-wrap: anywhere; }
@container (max-width: 440px) {
  .nkv .nkv-el { grid-template-columns: minmax(0, 1fr); }
  .nkv .nkv-el-kachel { justify-self: start; }
}


.nkv.nkv .nkv-ex { position: relative; display: flex; flex-direction: column; gap: 10px; }

.nkv.nkv .nkv-ex::before {
  content: ""; position: absolute; top: 14px; bottom: 14px; left: 13px; width: 1px; background: var(--linie-stark);
}
.nkv.nkv .nkv-ex-ph { position: relative; display: grid; grid-template-columns: 28px minmax(0, 1fr); column-gap: 10px; align-items: start; }
.nkv .nkv-ex-ic {
  display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; box-sizing: border-box;
  border: 1px solid var(--linie-stark); border-radius: 50%; background: var(--nkv-karte); color: var(--text-2);
}
.nkv .nkv-ex-ic .nkv-ic { width: 15px; height: 15px; }
.nkv .nkv-ex-inhalt { min-width: 0; padding: 5px 12px 7px; border: 1px solid var(--linie); border-radius: var(--r-1); background: var(--nkv-karte); }
.nkv .nkv-ex-l { margin-bottom: 2px; font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--text-3); }
.nkv .nkv-ex-t { color: var(--text); overflow-wrap: anywhere; }
.nkv .nkv-ex-p-hypothese .nkv-ex-inhalt { border-color: var(--s-linie); background: var(--s-flaeche); }
.nkv .nkv-ex-p-ergebnis .nkv-ex-inhalt { border-color: var(--p-linie); background: var(--p-flaeche); }
.nkv .nkv-ex-p-ergebnis .nkv-ex-ic { border-color: var(--p-linie); color: var(--p-tief); }
.nkv.nkv .nkv-ex-mat { display: flex; flex-wrap: wrap; gap: 5px; }
.nkv.nkv .nkv-ex-mat li { padding: 0 9px; border: 1px solid var(--linie-stark); border-radius: var(--r-rund); font-size: 12px; line-height: 1.7; }
.nkv.nkv .nkv-ex-schritte { display: flex; flex-direction: column; gap: 3px; }
.nkv.nkv .nkv-ex-schritte li { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 6px; align-items: baseline; }
.nkv .nkv-ex-nr { font-size: 12px; font-weight: 700; color: var(--text-3); text-align: right; }
.nkv .nkv-ex-urteil { margin-top: 6px; }


.nkv .nkv-be { display: flex; flex-direction: column; gap: 10px; }
.nkv .nkv-be-kenn { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; }
.nkv .nkv-be-k {
  display: flex; flex-direction: column; gap: 1px; min-width: 0; padding: 7px 10px; border: 1px solid var(--linie);
  border-radius: var(--r-1); background: var(--nkv-karte);
}
.nkv .nkv-be-gross { border-color: var(--p-linie); background: var(--p-flaeche); }
.nkv .nkv-be-l { font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--text-3); }
.nkv .nkv-be-w { font-size: 16px; font-weight: 600; color: var(--text); }
.nkv .nkv-be-gross .nkv-be-w { font-size: 19px; color: var(--p-tief); }
.nkv .nkv-be-z { font-size: 11.5px; color: var(--text-3); }
.nkv .nkv-be-bild { min-width: 0; }
.nkv .nkv-svg .nkv-be-tick { font-size: 11.5px; fill: var(--text-3); }
.nkv .nkv-svg .nkv-be-ax { font-size: 12px; fill: var(--text-2); }
.nkv .nkv-svg .nkv-be-verlust { fill: var(--fehler-flaeche); stroke: none; }
.nkv .nkv-svg .nkv-be-gewinn { fill: var(--ok-flaeche); stroke: none; }
.nkv .nkv-svg .nkv-be-fl { font-size: 12.5px; font-weight: 600; fill: var(--text-2); }
.nkv .nkv-svg .nkv-be-fix { stroke: var(--text-3); stroke-width: 1.2; stroke-dasharray: 3 4; }
.nkv .nkv-svg .nkv-be-kosten { stroke: var(--nkv-c2); stroke-width: 2.4; stroke-dasharray: 8 4; stroke-linecap: round; }
.nkv .nkv-svg .nkv-be-erloes { stroke: var(--nkv-c1); stroke-width: 2.4; stroke-linecap: round; }
.nkv .nkv-svg .nkv-be-lbl { font-size: 12px; fill: var(--text-2); }
.nkv .nkv-svg .nkv-be-lbl-e { fill: var(--p-tief); font-weight: 600; }
.nkv .nkv-svg .nkv-be-lbl-k { fill: var(--s-tief); font-weight: 600; }
.nkv .nkv-svg .nkv-be-lot { stroke: var(--text-3); stroke-width: 1; stroke-dasharray: 2 3; }
.nkv .nkv-svg .nkv-be-punkt circle { fill: var(--text); stroke: var(--nkv-grund); stroke-width: 2; }
.nkv .nkv-svg .nkv-be-bpl {
  font-size: 12.5px; font-weight: 600; fill: var(--text); paint-order: stroke; stroke: var(--nkv-grund); stroke-width: 3.5px;
  stroke-linejoin: round;
}
.nkv .nkv-be-leg { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 11.5px; color: var(--text-3); }
.nkv .nkv-be-leg > span { display: inline-flex; align-items: center; gap: 6px; }
.nkv .nkv-be-sw { display: inline-block; width: 18px; height: 0; border-top: 2.5px solid var(--nkv-c1); }
.nkv .nkv-be-sw-k { border-top: 2.5px dashed var(--nkv-c2); }
.nkv .nkv-be-fsw { display: inline-block; width: 14px; height: 10px; border-radius: 2px; border: 1px solid var(--linie); }
.nkv .nkv-be-fsw-v { background: var(--fehler-flaeche); border-color: var(--fehler-linie); }
.nkv .nkv-be-fsw-g { background: var(--ok-flaeche); border-color: var(--ok-linie); }


.nkv .nkv-kb-rolle { overflow-x: auto; overscroll-behavior-x: contain; padding-bottom: 2px; }
.nkv .nkv-kb-rolle:focus-visible { outline: 2px solid var(--p); outline-offset: 2px; }
.nkv.nkv .nkv-kb-baum { display: flex; }
.nkv.nkv .nkv-kb-ast { position: relative; display: flex; align-items: center; }
.nkv .nkv-kb-k {
  display: flex; flex-direction: column; gap: 1px; flex: none; width: 168px; box-sizing: border-box; padding: 7px 10px;
  border: 1px solid var(--linie); border-radius: var(--r-1); background: var(--nkv-karte);
}
.nkv .nkv-kb-spitze { border-color: var(--p-linie); background: var(--p-flaeche); }
.nkv .nkv-kb-n { font-size: 12.5px; font-weight: 600; color: var(--text); overflow-wrap: anywhere; }
.nkv .nkv-kb-w { font-size: 16px; font-weight: 600; color: var(--text); }
.nkv .nkv-kb-spitze .nkv-kb-w { font-size: 19px; color: var(--p-tief); }
.nkv .nkv-kb-f { font-size: 11.5px; color: var(--text-3); overflow-wrap: anywhere; }
.nkv .nkv-kb-m { display: inline-flex; align-items: center; gap: 3px; align-self: flex-start; font-size: 11px; color: var(--text-3); font-style: italic; }
.nkv .nkv-kb-ok { font-style: normal; color: var(--ok-tief); }
.nkv .nkv-kb-ok .nkv-ic { width: 12px; height: 12px; color: var(--ok); stroke-width: 2; }

.nkv.nkv .nkv-kb-kinder { position: relative; display: flex; flex-direction: column; justify-content: center; gap: 4px; margin-left: 30px; padding-left: 16px; }
.nkv.nkv .nkv-kb-kinder::before { content: ""; position: absolute; left: -30px; top: 50%; width: 30px; height: 1px; background: var(--linie-stark); }
.nkv.nkv .nkv-kb-kinder > .nkv-kb-ast::before {
  content: ""; position: absolute; left: -16px; top: 50%; width: 16px; height: 1px; background: var(--linie-stark);
}
.nkv.nkv .nkv-kb-kinder > .nkv-kb-ast::after {
  content: ""; position: absolute; left: -16px; top: 0; bottom: 0; width: 1px; background: var(--linie-stark);
}
.nkv.nkv .nkv-kb-kinder > .nkv-kb-ast:first-child::after { top: 50%; }
.nkv.nkv .nkv-kb-kinder > .nkv-kb-ast:last-child::after { bottom: 50%; }
.nkv.nkv .nkv-kb-op { position: relative; display: flex; align-items: center; height: 18px; }
.nkv.nkv .nkv-kb-op::after { content: ""; position: absolute; left: -16px; top: -4px; bottom: -4px; width: 1px; background: var(--linie-stark); }
.nkv .nkv-kb-op span {
  display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; margin-left: 74px;
  border: 1px solid var(--linie-stark); border-radius: 50%; background: var(--nkv-grund); font-size: 13px; font-weight: 700; color: var(--text-2);
}
@container (max-width: 560px) {
  .nkv.nkv .nkv-kb-baum, .nkv.nkv .nkv-kb-ast { flex-direction: column; align-items: stretch; }
  .nkv .nkv-kb-k { width: auto; }
  .nkv.nkv .nkv-kb-kinder { margin: 4px 0 0 12px; padding-left: 16px; }
  .nkv.nkv .nkv-kb-kinder::before { left: 0; top: -4px; width: 1px; height: 4px; }
  .nkv.nkv .nkv-kb-kinder > .nkv-kb-ast::before { top: 18px; }
  .nkv.nkv .nkv-kb-kinder > .nkv-kb-ast:first-child::after { top: 0; }
  .nkv.nkv .nkv-kb-kinder > .nkv-kb-ast:last-child::after { bottom: auto; height: 18px; }
  .nkv .nkv-kb-op span { margin-left: 8px; }
}


.nkv .nkv-sl { display: flex; flex-direction: column; gap: 8px; }
.nkv.nkv .nkv-sl-tab { font-size: 12.5px; }
.nkv.nkv .nkv-sl-tab th {
  padding: 4px 10px 5px 0; border-bottom: 1.5px solid var(--linie-stark); font-size: 11px; font-weight: 600; letter-spacing: .04em;
  text-transform: uppercase; color: var(--text-3); white-space: nowrap;
}
.nkv.nkv .nkv-sl-tab td { padding: 5px 10px 5px 0; border-bottom: 1px solid var(--linie); vertical-align: middle; }
.nkv.nkv .nkv-sl-p { width: 1%; }
.nkv .nkv-sl-pos {
  display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; padding: 0 4px; box-sizing: border-box;
  border: 1.5px solid var(--text-2); border-radius: var(--r-rund); font-size: 11.5px; font-weight: 700; color: var(--text);
}
.nkv.nkv .nkv-sl-m { width: 1%; white-space: nowrap; color: var(--text-2); }
.nkv.nkv .nkv-sl-b { color: var(--text); font-weight: 500; overflow-wrap: anywhere; }
.nkv.nkv :is(.nkv-sl-w, .nkv-sl-n) { font-family: var(--mono); font-size: 12px; color: var(--text-2); white-space: nowrap; }
.nkv .nkv-sl-lbl { display: none; }
.nkv .nkv-sl-sum { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 12px; color: var(--text-2); }
.nkv .nkv-sl-sum .nkv-zahl { font-weight: 700; color: var(--text); }
@container (max-width: 560px) {
  .nkv.nkv .nkv-sl-tab thead { display: none; }
  .nkv.nkv .nkv-sl-tab tr { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; column-gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--linie); }
  .nkv.nkv .nkv-sl-tab td { padding: 0; border: 0; width: auto; }
  .nkv.nkv .nkv-sl-p { grid-row: 1 / span 3; }
  .nkv.nkv .nkv-sl-b { grid-column: 2; grid-row: 1; }
  .nkv.nkv .nkv-sl-m { grid-column: 3; grid-row: 1; }
  .nkv.nkv :is(.nkv-sl-w, .nkv-sl-n) { grid-column: 2 / -1; white-space: normal; overflow-wrap: anywhere; }
  .nkv.nkv :is(.nkv-sl-w, .nkv-sl-n):empty { display: none; }
  .nkv .nkv-sl-lbl { display: inline; font-family: var(--sans, inherit); color: var(--text-3); }
}


.nkv .nkv-ap { display: flex; flex-direction: column; gap: 8px; }
.nkv.nkv .nkv-ap-tab { font-size: 12.5px; }
.nkv.nkv .nkv-ap-tab th {
  padding: 4px 8px 5px 0; border-bottom: 1.5px solid var(--linie-stark); font-size: 11px; font-weight: 600; letter-spacing: .04em;
  text-transform: uppercase; color: var(--text-3); white-space: nowrap;
}
.nkv.nkv .nkv-ap-tab td { padding: 5px 8px 5px 0; border-bottom: 1px solid var(--linie); vertical-align: middle; }
.nkv.nkv .nkv-ap-nr { width: 1%; font-weight: 700; color: var(--text-2); }
.nkv.nkv .nkv-ap-v { min-width: 0; }
.nkv .nkv-ap-vg { display: block; font-weight: 600; color: var(--text); overflow-wrap: anywhere; }
.nkv .nkv-ap-pl { display: block; font-size: 11.5px; color: var(--text-3); overflow-wrap: anywhere; }
.nkv.nkv .nkv-ap-tab .nkv-ap-t { width: 1%; padding-left: 12px; text-align: right; white-space: nowrap; }
.nkv.nkv .nkv-ap-tab td.nkv-ap-b { padding-left: 12px; }
.nkv.nkv .nkv-ap-ta { font-weight: 700; color: var(--text); }
.nkv.nkv .nkv-ap-b { width: 30%; min-width: 70px; }
.nkv .nkv-ap-balken { display: flex; height: 12px; border-radius: 3px; overflow: hidden; background: var(--flaeche-3); }
.nkv .nkv-ap-r { display: block; height: 100%; background: repeating-linear-gradient(135deg, var(--nkv-c2) 0 3px, color-mix(in srgb, var(--nkv-c2) 35%, transparent) 3px 6px); }
.nkv .nkv-ap-a { display: block; height: 100%; background: var(--nkv-c1); }
.nkv .nkv-ap-sum { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; font-size: 12.5px; color: var(--text-2); }
.nkv .nkv-ap-sum strong { font-size: 15px; }
.nkv .nkv-ap-formel { font-family: var(--mono); font-size: 12px; }
.nkv .nkv-ap-leg { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 11.5px; color: var(--text-3); }
.nkv .nkv-ap-leg > span { display: inline-flex; align-items: center; gap: 6px; }
.nkv .nkv-ap-sw { display: inline-block; width: 16px; height: 10px; border-radius: 2px; }
@container (max-width: 520px) {
  .nkv.nkv .nkv-ap-b { min-width: 48px; width: 22%; }
}


.nkv .nkv-tl { display: grid; grid-template-columns: minmax(200px, 280px) minmax(0, 1fr); gap: 12px 18px; align-items: start; }
.nkv .nkv-tl-bild { min-width: 0; }
.nkv .nkv-svg .nkv-tl-tick { font-size: 11px; fill: var(--text-3); }
.nkv .nkv-svg .nkv-tl-name { font-size: 12px; font-weight: 600; fill: var(--text); }
.nkv .nkv-svg .nkv-tl-wert { font-size: 11.5px; fill: var(--text-2); }
.nkv .nkv-svg .nkv-tl-null { stroke: var(--text); stroke-width: 1.6; }
.nkv .nkv-svg .nkv-tl-feld rect { fill: color-mix(in srgb, var(--c, var(--p)) 24%, transparent); stroke: var(--c, var(--p)); stroke-width: 1.6; }
.nkv .nkv-tl-rechts { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.nkv .nkv-tl-rolle { overflow-x: auto; overscroll-behavior-x: contain; }
.nkv.nkv .nkv-tl-tab { font-size: 12.5px; }
.nkv.nkv .nkv-tl-tab th {
  padding: 3px 10px 4px 0; border-bottom: 1.5px solid var(--linie-stark); font-size: 11px; font-weight: 600; letter-spacing: .03em;
  color: var(--text-3); white-space: nowrap; text-align: right;
}
.nkv.nkv .nkv-tl-tab th:first-child, .nkv.nkv .nkv-tl-tab tbody th { text-align: left; }
.nkv.nkv .nkv-tl-tab tbody th { font-size: 12.5px; font-weight: 600; letter-spacing: 0; color: var(--text); border-bottom: 1px solid var(--linie); }
.nkv.nkv .nkv-tl-tab td { padding: 4px 10px 4px 0; border-bottom: 1px solid var(--linie); text-align: right; white-space: nowrap; }
.nkv .nkv-tl-kurz { font-family: var(--mono); font-weight: 600; color: var(--p-tief); }
.nkv .nkv-tl-ein { margin-top: 3px; font-size: 11px; color: var(--text-3); }
.nkv .nkv-tl-pass { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; padding: 8px 10px; border: 1px solid var(--linie); border-radius: var(--r-1); background: var(--nkv-karte); }
.nkv .nkv-tl-pw { font-size: 12.5px; color: var(--text-2); }
@container (max-width: 620px) {
  .nkv .nkv-tl { grid-template-columns: minmax(0, 1fr); }
  .nkv .nkv-tl-bild { max-width: 280px; }
}


.nkv .nkv-wk { display: flex; flex-direction: column; gap: 8px; }
.nkv .nkv-wk-kopf {
  display: flex; flex-direction: column; gap: 2px; padding: 10px 14px; border: 1px solid var(--linie-stark); border-radius: var(--r-1);
  background: var(--nkv-karte);
}
.nkv .nkv-wk-titel { font-family: Georgia, "Times New Roman", serif; font-size: 19px; font-style: italic; line-height: 1.25; color: var(--text); overflow-wrap: anywhere; }
.nkv .nkv-wk-autor { font-size: 13px; color: var(--text-2); }
.nkv .nkv-wk-jahr { margin-left: 4px; padding: 0 7px; border: 1px solid var(--linie-stark); border-radius: var(--r-rund); font-size: 12px; }
.nkv .nkv-wk-marken { display: flex; flex-wrap: wrap; gap: 6px; }
.nkv .nkv-wk-ab { margin-top: 4px; font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--text-3); }
.nkv.nkv .nkv-wk-themen { display: flex; flex-wrap: wrap; gap: 5px; }
.nkv.nkv .nkv-wk-thema { padding: 0 10px; border: 1px solid var(--linie-stark); border-radius: var(--r-rund); background: var(--nkv-karte); font-size: 12px; line-height: 1.8; }
.nkv.nkv .nkv-wk-figuren { display: flex; flex-direction: column; }
.nkv.nkv .nkv-wk-fig { display: grid; grid-template-columns: minmax(110px, max-content) minmax(0, 1fr); gap: 2px 12px; padding: 4px 0; border-top: 1px solid var(--linie); }
.nkv.nkv .nkv-wk-fig:first-child { border-top: 0; }
.nkv.nkv .nkv-wk-fig dt { font-weight: 600; color: var(--text); }
.nkv.nkv .nkv-wk-fig dd { color: var(--text-2); overflow-wrap: anywhere; }
.nkv .nkv-wk-zeit { display: flex; flex-direction: column; gap: 4px; margin-top: 4px; }
.nkv .nkv-wk-zl { font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--text-3); }
.nkv .nkv-wk-feld { position: relative; display: flex; flex-direction: column; gap: 3px; padding: 4px 0 20px; }
.nkv .nkv-wk-reihe { position: relative; height: 22px; }
.nkv .nkv-wk-ep {
  position: absolute; top: 0; bottom: 0; display: flex; align-items: center; gap: 6px; min-width: 0; padding: 0 7px; box-sizing: border-box;
  overflow: hidden; border: 1px solid var(--linie); border-radius: 5px; background: var(--flaeche-3); font-size: 11.5px; color: var(--text-2);
  white-space: nowrap;
}
.nkv .nkv-wk-diese { border: 1.5px solid var(--ton); background: var(--ton-f); color: var(--ton-t); font-weight: 600; }
.nkv .nkv-wk-epn { overflow: hidden; text-overflow: ellipsis; }
.nkv .nkv-wk-epj { flex: none; font-weight: 400; opacity: .85; }

.nkv .nkv-wk-strich {
  position: absolute; top: 0; bottom: 14px; width: 2px; margin-left: -1px;
  background: repeating-linear-gradient(to bottom, var(--text) 0 4px, transparent 4px 7px);
}
.nkv .nkv-wk-jm { position: absolute; bottom: 0; transform: translateX(-50%); font-size: 11.5px; font-weight: 700; line-height: 1.2; color: var(--text); }
@container (max-width: 520px) {
  .nkv.nkv .nkv-wk-fig { grid-template-columns: minmax(0, 1fr); }
  .nkv .nkv-wk-epj { display: none; }
}


.nkv .nkv-ag { display: flex; flex-direction: column; gap: 8px; }
.nkv .nkv-ag-l { display: inline-flex; align-items: center; gap: 5px; margin-bottom: 2px; font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--text-3); }
.nkv .nkv-ag-l .nkv-ic { width: 13px; height: 13px; }
.nkv .nkv-ag-t { color: var(--text); overflow-wrap: anywhere; }
.nkv .nkv-ag-these { padding: 9px 14px; border: 1px solid var(--ton-l); border-radius: var(--r-1); background: var(--ton-f); }
.nkv .nkv-ag-these .nkv-ag-l { color: var(--ton-t); }
.nkv .nkv-ag-these .nkv-ag-t { font-size: 15px; font-weight: 600; }
.nkv .nkv-ag-stuetzt { display: inline-flex; align-items: center; gap: 5px; align-self: center; font-size: 11.5px; color: var(--text-3); }
.nkv .nkv-ag-stuetzt .nkv-ic { width: 13px; height: 13px; }
.nkv.nkv .nkv-ag-args { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 8px; }
.nkv.nkv .nkv-ag-arg { display: flex; flex-direction: column; gap: 4px; padding: 8px 12px; border: 1px solid var(--linie); border-radius: var(--r-1); background: var(--nkv-karte); }
.nkv .nkv-ag-nr {
  display: inline-flex; align-items: center; justify-content: center; width: 17px; height: 17px; border-radius: 50%;
  background: var(--text-2); color: var(--auf-farbe); font-size: 11px; font-weight: 700; letter-spacing: 0;
}
.nkv .nkv-ag-beleg, .nkv .nkv-ag-entk { padding-top: 4px; border-top: 1px dashed var(--linie-stark); font-size: 12.5px; color: var(--text-2); overflow-wrap: anywhere; }
.nkv .nkv-ag-bl { margin-right: 6px; font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--text-3); }
.nkv .nkv-ag-gegen { display: flex; flex-direction: column; gap: 4px; padding: 8px 12px; border: 1px solid var(--ton-l); border-radius: var(--r-1); background: var(--ton-f); }
.nkv .nkv-ag-gegen .nkv-ag-l { color: var(--ton-t); }
.nkv .nkv-ag-gegen .nkv-ic { color: var(--ton); }
.nkv .nkv-ag-schluss { padding: 8px 12px; border: 1.5px solid var(--linie-stark); border-radius: var(--r-1); background: var(--nkv-karte); }
.nkv .nkv-ag-schluss .nkv-ag-t { font-weight: 600; }


.nkv.nkv :is(.nkv-fg-l, .nkv-fg-s, .nkv-el-f, .nkv-wk-fig)[data-nkv-bezug]:hover { background: var(--flaeche-3); }
.nkv.nkv :is(.nkv-sl-tab, .nkv-ap-tab, .nkv-tl-tab) tr[data-nkv-bezug]:hover > * { background: var(--flaeche-3); }
