/* Zielbilder: Karte der RE:CHARGE29-Bestandteile, Abschnitte Z1 bis Z5, Lagezeichen. */
:root{--zb-voll:#502379;--zb-voll-ink:#fff;--zb-voll-sub:#e6d6f3;--zb-leer:#f1eff4}
:root[data-farbe=dark]{--zb-voll:#b58ce0;--zb-voll-ink:#1c0f29;--zb-voll-sub:#2e1a42;--zb-leer:#2a2531}
@media(prefers-color-scheme:dark){:root:not([data-farbe=light]){--zb-voll:#b58ce0;--zb-voll-ink:#1c0f29;--zb-voll-sub:#2e1a42;--zb-leer:#2a2531}}

.zb-kopf{align-items:flex-start;margin-bottom:10px}
.zb-kopf h1{font-size:40px;letter-spacing:-1.6px}
.zb-kopf .vs-sub{font-size:15px;max-width:62ch}
.zb-kopf-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.zb-primaer{background:#502379;border-color:#502379;color:#fff;font-weight:500}
.zb-primaer:hover{background:#3d1a5d;text-decoration:none}
.zb-datenart{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin:0 0 22px}
.zb-datenart:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--good);flex-shrink:0}
.zb-datenart-demo:before{background:var(--warn)}

/* Lagezeichen: gefüllt = Wert, Ring = Papier ohne Wert, gestrichelt = Vorschlag, hell = nichts */
.zb-lage{display:inline-block;width:12px;height:12px;border-radius:50%;flex-shrink:0;box-sizing:border-box}
.zb-lage-wert{background:var(--plot)}
.zb-lage-befund{border:1.5px solid var(--muted);background:radial-gradient(circle,var(--muted) 0 30%,transparent 34%)}
.zb-lage-papier{border:2px solid var(--plot)}
.zb-lage-vorschlag{border:2px dashed var(--plot)}
.zb-lage-leer{border:1.5px solid var(--muted)}
.zb-legende{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;margin:0 0 20px;padding:0 0 16px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line)}
.zb-legende li{display:flex;align-items:center;gap:7px}

.zb-karte{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:26px 26px 22px;box-shadow:var(--shadow);margin:0 0 40px}
.zb-karte-kopf{margin-bottom:14px}
.zb-karte-kopf h2{font-size:20px;margin-bottom:4px}
.zb-karte-kopf .vs-small{max-width:64ch}
.zb-zeilen{display:grid;gap:10px}
.zb-zeile{display:grid;grid-template-columns:200px minmax(0,1fr);gap:14px;align-items:stretch}
.zb-zeile-kopf{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);padding:6px 4px;border-radius:8px}
.zb-zeile-kopf:hover{text-decoration:none;background:var(--canvas)}
.zb-zeile-kopf strong{display:block;font-size:14px;font-weight:500;line-height:1.3}
.zb-zeile-kopf small{display:block;font-size:11px;color:var(--muted);margin-top:2px}
.zb-kennung{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:var(--tint);color:var(--brand);font-weight:700;font-size:13px;flex-shrink:0;letter-spacing:.2px}
.zb-kennung-gross{width:48px;height:48px;border-radius:12px;font-size:16px}
.zb-zellen{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;list-style:none;margin:0;padding:0}
.zb-zelle a{display:flex;flex-direction:column;justify-content:space-between;gap:10px;height:100%;min-height:76px;padding:11px 12px 10px;border-radius:9px;text-decoration:none;font-size:12px;line-height:1.38;color:var(--ink);box-sizing:border-box}
.zb-zelle a:hover{text-decoration:none;filter:brightness(.97)}
.zb-zelltext{font-size:13.5px;font-weight:500;line-height:1.3;hyphens:auto}
.zb-zellfuss{display:flex;align-items:center;gap:6px;font-size:10.5px;color:var(--muted)}
.zb-zelle-wert a{background:var(--zb-voll);color:var(--zb-voll-ink)}
.zb-zelle-wert .zb-zellfuss{color:var(--zb-voll-ink);opacity:.86}
.zb-zelle-wert .zb-lage-wert{background:var(--zb-voll-ink)}
.zb-zelle-befund a{background:var(--tint);border:1px solid var(--line)}
.zb-zelle-papier a{background:var(--paper);border:2px solid var(--plot)}
.zb-zelle-vorschlag a{background:var(--paper);border:2px dashed var(--plot)}
.zb-zelle-leer a{background:var(--zb-leer);color:var(--muted)}

.zb-abschnitt{margin:0 0 44px;scroll-margin-top:20px}
.zb-abschnitt-kopf{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:16px}
.zb-abschnitt-kopf h2{font-size:24px;letter-spacing:-.6px}
.zb-zaehler{font-size:12px;color:var(--muted);text-align:right}
.zb-zaehler strong{display:block;font-size:26px;font-weight:500;color:var(--ink);letter-spacing:-.8px;line-height:1.1}
.zb-leitsatz{margin:0 0 18px;padding:2px 0 2px 16px;border-left:3px solid var(--plot);max-width:74ch}
.zb-leitsatz p{font-size:16px;line-height:1.55;color:var(--ink)}
.zb-leitsatz footer{font-size:11.5px;color:var(--muted);margin-top:6px}
.zb-suche{align-items:flex-end}
.zb-suche .zb-leitsatz{margin:0}
.zb-teile{list-style:none;margin:0;padding:0;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}
.zb-teil{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:24px;padding:16px 20px;border-bottom:1px solid var(--line);scroll-margin-top:20px}
.zb-teil:last-child{border-bottom:0}
.zb-teil:target{background:var(--tint)}
.zb-teil-text p{font-size:14px;line-height:1.45}
.zb-teil-text small{display:block;font-size:11px;margin-top:4px}
.zb-teil-text small a{color:var(--muted)}
.zb-teil-kennzahlen .vs-kpi-row{padding:9px 0}
.zb-teil-kennzahlen .vs-kpi-row:first-child{padding-top:0}
.zb-kpi{gap:12px}
.zb-kpi>strong{white-space:nowrap}
.zb-tag{display:inline-block;font-size:10.5px;font-weight:400;padding:3px 8px;border-radius:999px;background:var(--canvas);border:1px solid var(--line);color:var(--muted);white-space:nowrap;line-height:1.4}
.zb-tag-vorschlag{background:transparent;border:1px dashed var(--plot);color:var(--brand)}
.zb-leer{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);padding:2px 0}
.zb-ohne-teil{background:var(--paper);border:1px solid var(--line);border-radius:12px;margin-top:10px}

@media(max-width:1150px){.zb-zeile{grid-template-columns:1fr}.zb-zeile-kopf{padding:0}}
@media(max-width:760px){
  .zb-kopf{flex-direction:column;gap:14px}
  .zb-kopf h1{font-size:30px}
  .zb-kopf-meta{justify-content:flex-start}
  .zb-karte{padding:18px 14px;border-radius:12px}
  .zb-karte-kopf{flex-direction:column;align-items:flex-start}
  .zb-zellen{grid-template-columns:1fr 1fr}
  .zb-zelle a{min-height:78px}
  .zb-abschnitt-kopf{grid-template-columns:auto minmax(0,1fr)}
  .zb-zaehler{grid-column:1/-1;text-align:left;display:flex;align-items:baseline;gap:6px}
  .zb-zaehler strong{display:inline;font-size:18px}
  .zb-teil{grid-template-columns:1fr;gap:10px;padding:14px}
  .zb-suche{flex-direction:column;align-items:stretch}
  .zb-kpi>strong{white-space:normal}
}
@media print{.zb-karte,.zb-teile{box-shadow:none}}
.kz-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:12px;margin:10px 0 4px}
.kz-meta a{color:var(--muted)}
.kz-vorschlag{border-left:3px dashed var(--plot)}
.kz-vorschlag p{font-size:13px}
.zb-kpi>.zb-tag{flex:0 0 auto}
.zb-quelle{margin-top:8px}
.vs-overview-grid{margin-bottom:44px}
.zb-stimmen{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:22px 22px 18px;box-shadow:var(--shadow);flex:1}
.zb-stimmen h2{font-size:17px}
.zb-sgruppe{margin-top:18px}
.zb-sgruppe h3{font-size:12px;font-weight:500;color:var(--muted);margin-bottom:6px}
.zb-sbalken{display:grid;grid-template-columns:34px minmax(0,1fr) 78px;align-items:center;gap:10px;font-size:12px;margin:5px 0}
.zb-sbalken span{color:var(--muted)}
.zb-sbalken i{display:block;height:14px;width:var(--anteil);min-width:3px;background:var(--bar);border-radius:0 4px 4px 0}
.zb-sbalken i.zb-neu{background:var(--plot)}
.zb-sbalken strong{font-weight:500;text-align:right}
