/* cf-beschluss.css — Bereich "Beschlüsse" (Scheibe 1, 2026-07-31).
 *
 * Baut auf dem Higgsfield-Sektionsmuster aus cf-intel.css auf (.ig-sec/.ig-grid/.ig-tile) und
 * ergaenzt nur, was ein Rechtsdokument braucht und dort nicht vorkommt: die Erkennungskarte des
 * Copiloten, die Pruefhinweise in drei Stufen, das Dokument selbst (Serifenlose in Dokument-Mass,
 * nicht in App-Mass) und die Stimmverteilung.
 *
 * ABSTANDS-VERTRAG wie im Intelligenz-Bereich: 56 px ueber jedem Sektionskopf, 22 px zwischen Kopf
 * und Raster, 18 px Kachel-Gap, 24 px Kachel-Polster. Alle Farben kommen aus den Theme-Variablen,
 * damit beide Themes ohne Sonderfall tragen — EIN Akzent (--lime), nie zwei.
 *
 * WARUM EIGENE KLASSEN UND KEINE UEBERNAHME DER QUELL-NAMEN: das Verwaltungs-Cockpit nutzt kurze
 * Namen (.dok, .pill, .chip), die in dieser Konsole bereits belegt sind. Jede Klasse hier traegt
 * das Praefix bs-, damit nichts aus dem Bestand still ueberschrieben wird. */

/* ---------- Copilot: Eingabe ---------- */
.bs-intent{padding:24px;display:flex;flex-direction:column;gap:14px}
.bs-intent textarea{width:100%;min-height:120px;padding:14px 16px;border-radius:var(--r-in,12px);
  border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);
  font-family:inherit;font-size:1rem;line-height:1.55;resize:vertical}
.bs-intent textarea:focus{outline:none;border-color:var(--lime);background:var(--surface);
  box-shadow:0 0 0 3px rgba(207,221,40,.18)}
.bs-bsp{display:flex;flex-wrap:wrap;gap:8px}
.bs-bsp button{border:1px solid var(--line);background:var(--surface-2);color:var(--ink-soft);
  padding:7px 12px;border-radius:20px;font-size:.82rem;font-weight:600;font-family:inherit;
  cursor:pointer;text-align:left;transition:.15s}
.bs-bsp button:hover{border-color:var(--line-strong);color:var(--ink)}

/* Fehlendes Pflichtfeld: Marke am Etikett UND Rahmen am Feld. Der Platzhalter im leeren Feld sieht
   sonst aus wie ein eingetragener Wert — die Zaehlung meldet "es fehlen vier Angaben", waehrend
   vier Felder gefuellt WIRKEN. Beides zeigt jetzt dasselbe an. */
.bs-fehlt{display:inline-block;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  padding:2px 7px;border-radius:20px;background:var(--warn-bg);color:var(--warn);margin-left:6px;vertical-align:1px}
.inp.bs-leer{border-color:var(--warn);border-style:dashed}
.inp.bs-leer::placeholder{color:var(--ink-faint);opacity:.75;font-style:italic}

/* ---------- Copilot: Erkennung ---------- */
.bs-erk{padding:24px;display:flex;flex-direction:column;gap:16px}
.bs-erk-top{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}
.bs-erk-top h3{font-family:var(--disp);font-size:1.3rem;font-weight:900;letter-spacing:-.02em;margin:0}
.bs-erk-kurz{color:var(--ink-soft);font-size:.9rem;margin-top:4px}
.bs-konf{flex:none;min-width:190px}
.bs-konf-zahl{font-family:var(--disp);font-size:1.9rem;font-weight:900;line-height:1}
.bs-konf-bar{height:7px;border-radius:5px;background:var(--surface-3);overflow:hidden;margin-top:8px}
.bs-konf-bar i{display:block;height:100%;background:var(--lime);border-radius:5px}
.bs-konf-txt{font-size:.78rem;color:var(--ink-faint);margin-top:7px;line-height:1.4}

/* Merkmale: worauf die Erkennung beruht — ohne diese Liste ist die Konfidenz eine Behauptung */
.bs-merk{display:flex;flex-wrap:wrap;gap:6px}
.bs-merk span{font-size:.75rem;font-weight:700;padding:3px 9px;border-radius:20px;
  background:var(--surface-3);color:var(--ink-soft)}

/* Formale Eckdaten des Dokuments: Gremium, Form, Register, Mehrheit */
.bs-eck{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.bs-eck div{padding:12px 14px;border-radius:var(--r-sm);background:var(--surface-2);
  border:1px solid var(--line)}
.bs-eck b{display:block;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-faint);margin-bottom:5px}
.bs-eck i{font-style:normal;font-size:.9rem;font-weight:700;color:var(--ink)}

/* Alternativen: die zweit- und drittbeste Deutung, umschaltbar. Ein Klassifikator ohne sichtbare
   Alternativen zwingt den Nutzer, seine Lage neu zu tippen, wenn er anders gemeint war. */
.bs-alt{display:flex;flex-wrap:wrap;gap:8px}
.bs-alt button{border:1px solid var(--line);background:none;color:var(--ink-soft);padding:7px 12px;
  border-radius:20px;font-size:.82rem;font-weight:700;font-family:inherit;cursor:pointer;transition:.15s}
.bs-alt button:hover{border-color:var(--lime);color:var(--ink)}

/* ---------- Pruefhinweise in drei Stufen ---------- */
.bs-hw{display:flex;flex-direction:column;gap:10px}
.bs-hw-row{display:flex;gap:11px;align-items:flex-start;padding:13px 15px;border-radius:var(--r-sm);
  font-size:.88rem;line-height:1.5}
.bs-hw-row .ic{width:16px;height:16px;flex:none;margin-top:2px}
.bs-hw-row b{font-weight:800}
.bs-hw-row.h-stop{background:var(--bad-bg);color:var(--bad)}
.bs-hw-row.h-warn{background:var(--warn-bg);color:var(--warn)}
.bs-hw-row.h-info{background:var(--info-bg);color:var(--info)}

/* ---------- Dokument ----------
   Bewusst ruhiger als die Konsole: das hier verlaesst spaeter das Haus. Kein Akzent, keine
   Kachel-Optik, groessere Zeilenhoehe, klare Absatzfolge. */
.bs-dok{padding:32px 34px;line-height:1.62;font-size:.95rem;color:var(--ink)}
@media(max-width:640px){.bs-dok{padding:22px 20px}}
.bs-dok h3{font-family:var(--disp);font-size:1.25rem;font-weight:900;letter-spacing:-.02em;
  margin:0 0 18px;line-height:1.25;text-wrap:balance}
.bs-dok-abs{white-space:pre-wrap;margin-bottom:18px;color:var(--ink-soft)}
.bs-dok-inh{white-space:pre-wrap;margin:18px 0;padding:18px 20px;border-left:3px solid var(--lime);
  background:var(--surface-2);border-radius:0 var(--r-sm) var(--r-sm) 0}
.bs-dok-fuss{white-space:pre-wrap;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);
  font-size:.85rem;color:var(--ink-faint)}
.bs-dok-ent{display:inline-flex;align-items:center;gap:7px;font-size:.72rem;font-weight:800;
  letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:20px;
  background:var(--warn-bg);color:var(--warn);margin-bottom:14px}

/* ---------- Vorgangs-Liste ---------- */
.bs-vg{display:flex;flex-direction:column;gap:12px}
.bs-vg-row{padding:18px 20px;display:flex;flex-direction:column;gap:12px}
.bs-vg-kopf{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}
.bs-vg-mid{flex:1;min-width:220px;display:flex;flex-direction:column;gap:4px}
.bs-vg-mid b{font-size:.99rem;letter-spacing:-.01em}
.bs-vg-sub{font-size:.83rem;color:var(--ink-faint)}
.bs-vg-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.bs-st{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:800;
  padding:3px 10px;border-radius:20px;white-space:nowrap}
.bs-st .dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.bs-st.s-entwurf{color:var(--ink-soft);background:var(--surface-3)}
.bs-st.s-freigegeben{color:var(--info);background:var(--info-bg)}
.bs-st.s-abstimmung{color:var(--warn);background:var(--warn-bg)}
.bs-st.s-beschlossen{color:var(--good);background:var(--good-bg)}
.bs-st.s-abgelehnt{color:var(--bad);background:var(--bad-bg)}
.bs-st.s-abgelaufen{color:var(--bad);background:var(--bad-bg)}
.bs-st.s-archiviert{color:var(--ink-faint);background:var(--surface-3)}

/* ---------- Stimmverteilung ----------
   Ja/Nein/offen als eine Leiste. Der Schwellenstrich sitzt an der noetigen Mehrheit — man sieht,
   ob es traegt, ohne zu rechnen. */
.bs-stim{display:flex;flex-direction:column;gap:10px;padding:16px 18px;border-radius:var(--r-sm);
  background:var(--surface-2);border:1px solid var(--line)}
.bs-bal{position:relative;height:12px;border-radius:6px;background:var(--surface-3);overflow:hidden;display:flex}
.bs-bal i{display:block;height:100%}
.bs-bal .b-ja{background:var(--good)}
.bs-bal .b-nein{background:var(--bad)}
.bs-schw{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--ink);opacity:.75}
.bs-bal-wrap{position:relative;padding:4px 0}
.bs-stim-leg{display:flex;gap:16px;flex-wrap:wrap;font-size:.82rem;color:var(--ink-soft)}
.bs-stim-leg b{color:var(--ink)}
.bs-mitg{display:flex;flex-direction:column;gap:8px}
.bs-mitg-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:.87rem}
.bs-mitg-row .nm{flex:1;min-width:150px}
.bs-mitg-row .nm i{font-style:normal;color:var(--ink-faint);font-size:.8rem;display:block}
.bs-verbot{font-size:.74rem;font-weight:700;color:var(--bad);background:var(--bad-bg);
  padding:2px 8px;border-radius:20px}

/* ---------- Gremien-Tafel ----------
   Kapitalanteil und Stimmanteil stehen NEBENEINANDER. Ein Feld fuer beides zaehlt jede
   Satzungsgestaltung falsch aus und faellt nie auf, weil es im Normalfall stimmt. */
.bs-tab{width:100%;border-collapse:collapse;font-size:.88rem}
.bs-tab th{text-align:left;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-faint);padding:0 12px 10px 0;border-bottom:1px solid var(--line)}
.bs-tab td{padding:12px 12px 12px 0;border-bottom:1px solid var(--line);vertical-align:top}
.bs-tab tr:last-child td{border-bottom:0}
.bs-tab .num{text-align:right;font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.bs-tab-wrap{overflow-x:auto}

/* ---------- Fristen ---------- */
.bs-fr-row{display:flex;gap:14px;align-items:center;padding:16px 18px;flex-wrap:wrap}
.bs-fr-mid{flex:1;min-width:200px;display:flex;flex-direction:column;gap:3px}
.bs-fr-mid b{font-size:.94rem}
.bs-fr-tage{flex:none;text-align:right;font-variant-numeric:tabular-nums}
.bs-fr-tage b{font-family:var(--disp);font-size:1.15rem;font-weight:900;display:block}
.bs-fr-tage.t-rot b{color:var(--bad)}
.bs-fr-tage.t-gelb b{color:var(--warn)}
.bs-fr-tage span{font-size:.76rem;color:var(--ink-faint)}

/* ---------- Journal ---------- */
.bs-log{display:flex;flex-direction:column}
.bs-log-row{display:flex;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);font-size:.88rem;
  align-items:flex-start}
.bs-log-row:last-child{border-bottom:0}
.bs-log-t{flex:none;width:130px;font-size:.8rem;color:var(--ink-faint);font-variant-numeric:tabular-nums}
.bs-log-art{flex:none;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  padding:2px 8px;border-radius:20px;background:var(--surface-3);color:var(--ink-soft);min-width:92px;
  text-align:center}
.bs-log-txt{flex:1;min-width:0;line-height:1.45;color:var(--ink-soft)}
@media(max-width:640px){.bs-log-row{flex-wrap:wrap}.bs-log-t{width:auto}}

/* ---------- Katalog / Ausbaustufen ---------- */
.bs-kat-grund{font-size:.78rem;color:var(--ink-faint);line-height:1.4;margin-top:2px}
.bs-stufe{display:inline-flex;align-items:center;gap:6px;font-size:.68rem;font-weight:800;
  letter-spacing:.04em;padding:3px 9px;border-radius:20px;white-space:nowrap}
.bs-stufe .dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.bs-stufe.p-laeuft{color:var(--good);background:var(--good-bg)}
.bs-stufe.p-phase2{color:var(--info);background:var(--info-bg)}
.bs-stufe.p-offen{color:var(--ink-soft);background:var(--surface-3)}
