/* KI-Check „Was weiß ChatGPT über dich?“ (P32-2, 25.10.2026, Tor D-KS Variante B „Steckbrief mit Prüfstempeln“). Child assets/ki-check/,
   geladen nur auf Seiten mit [snf_ki_check] (inc/snf-ki-check.php). Grundlage: Prototyp bauplan/ki-sichtbarkeitscheck/vorschau/ki-check-tor-d.html.
   1rem = 10 px wie im Theme. Steht im dunklen Stockwerk (grund="dunkel", Block 3a): Eingabe, Karten, Zitat und Schritte weiß, Protokoll dunkel.
   Rückbau: Datei löschen (das Modul lädt sie nur, wenn sie da ist). */
.snf-kic { --kic-rot: #b3131b; --kic-rot-d: #8b0d14; --kic-gruen: #0f7a3d; --kic-gelb: #b86e00; --kic-grau: #5f5f5a; --kic-linie: #e3e1dc; --kic-flaeche: #f7f7f5; --kic-tinte: #111;
	position: relative; text-align: left; font-size: 1.7rem; line-height: 1.6; container: snf-kic / inline-size; }
.snf-kic *, .snf-kic *::before, .snf-kic *::after { box-sizing: border-box; }
.snf-kic [hidden] { display: none !important; }
.snf-kic ul, .snf-kic ol { list-style: none; margin: 0; padding: 0; }
.snf-kic ul li, .snf-kic ol li { margin: 0; padding-left: 0; }
.snf-kic ul li::before, .snf-kic ol li::before { content: none; }
.snf-kic h3, .snf-kic h4 { text-transform: none; letter-spacing: normal; }
.snf-kic-einleitung { max-width: 72rem; margin: 0 0 2.8rem; }
.snf-kic-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.snf-kic input:focus-visible, .snf-kic button:focus-visible, .snf-kic a:focus-visible, .snf-kic summary:focus-visible { outline: 3px solid var(--kic-rot); outline-offset: 2px; }

/* Eingabe */
.snf-kic-eingabe { background: #fff; color: var(--kic-tinte); border: 2px solid var(--kic-rot); border-radius: 1.6rem; padding: 2.4rem; position: relative; margin: 0; }
.snf-kic-eingabe label.snf-kic-aufruf { display: flex; align-items: center; gap: .8rem; font: 700 1.9rem/1.3 "Space Grotesk", Inter, system-ui, sans-serif; margin: 0 0 1.2rem; color: var(--kic-tinte); }
.snf-kic-pfeil { display: inline-block; flex: 0 0 auto; width: 2.6rem; height: 2.6rem; border-radius: 50%; background: var(--kic-rot); color: #fff; text-align: center; line-height: 2.6rem; font-size: 1.6rem; animation: kic-wipp 1.6s ease-in-out infinite; }
@keyframes kic-wipp { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(4px); } }
.snf-kic-zeile { display: flex; gap: 1rem; flex-wrap: wrap; }
.snf-kic input.snf-kic-url { flex: 1 1 28rem; min-width: 0; width: auto; height: auto; margin: 0; padding: 1.4rem 1.6rem; border: 2px solid var(--kic-linie); border-radius: 1.2rem; font: 400 1.8rem/1.3 Inter, system-ui, sans-serif; background: #fff; color: var(--kic-tinte); box-shadow: none; }
.snf-kic input.snf-kic-url:focus, .snf-kic-felder input:focus { border-color: var(--kic-rot); }
.snf-kic-hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.snf-kic .snf-kic-knopf { display: inline-block; flex: 0 0 auto; margin: 0; padding: 1.4rem 2.6rem; border: 2px solid var(--kic-rot); border-radius: 1.2rem; background: var(--kic-rot); color: #fff; font: 700 1.7rem/1.3 Inter, system-ui, sans-serif; text-decoration: none; text-align: center; cursor: pointer; transition: background .15s, transform .15s; }
.snf-kic .snf-kic-knopf:hover { background: var(--kic-rot-d); border-color: var(--kic-rot-d); color: #fff; transform: translateY(-1px); }
.snf-kic .snf-kic-knopf[disabled] { background: #8d8d89; border-color: #8d8d89; cursor: wait; transform: none; }
.snf-kic .snf-kic-knopf.zweit { background: #fff; color: var(--kic-tinte); border-color: var(--kic-tinte); }
.snf-kic .snf-kic-knopf.zweit:hover { background: var(--kic-tinte); color: #fff; }
.snf-kic-hinweis { font-size: 1.4rem; color: #555; margin: 1rem 0 0; }
.snf-kic-hinweis a { color: inherit; text-decoration: underline; }
.snf-kic-status { margin: .8rem 0 0; font-size: 1.5rem; font-weight: 600; color: var(--kic-rot-d); }
.snf-kic-status:empty { display: none; }
.snf-kic-status.info { color: #333; font-weight: 400; background: var(--kic-flaeche); border-radius: 1rem; padding: .8rem 1.2rem; }
.snf-kic-status a { color: inherit; }

/* Vorschlag und Index-Treffer */
.snf-kic-vorschlag { margin-top: 1.8rem; padding-top: 1.8rem; border-top: 1px dashed #cfccc5; }
.snf-kic-vorschlag p { margin: 0 0 1rem; }
.snf-kic-treffer { background: #fff4f4; border: 1px solid #f1c9cb; border-radius: 1.2rem; padding: 1.2rem 1.6rem; font-size: 1.55rem; }
.snf-kic-treffer b { color: var(--kic-rot-d); }
.snf-kic-felder { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem 1.2rem; margin: 0 0 1.2rem; }
.snf-kic-felder label { display: flex; flex-direction: column; gap: .4rem; font-size: 1.35rem; font-weight: 600; color: var(--kic-grau); margin: 0; }
.snf-kic-felder input { width: 100%; height: auto; margin: 0; padding: 1rem 1.2rem; border: 2px solid var(--kic-linie); border-radius: 1rem; font: 400 1.6rem/1.3 Inter, system-ui, sans-serif; color: var(--kic-tinte); background: #fff; box-shadow: none; }
.snf-kic-v-hinweis { font-size: 1.45rem; color: #444; }
.snf-kic-knoepfe { display: flex; flex-wrap: wrap; gap: .8rem 1rem; align-items: center; }
.snf-kic-vorschlag .snf-kic-knopf { padding: 1rem 2rem; font-size: 1.6rem; }
.snf-kic .snf-kic-aendern { background: none; border: 0; padding: .4rem; margin: 0; color: var(--kic-tinte); font: 600 1.5rem Inter, system-ui, sans-serif; text-decoration: underline; cursor: pointer; }
.snf-kic-meldung { margin-top: 1.6rem; padding: 1.4rem 1.6rem; border-radius: 1.2rem; background: var(--kic-flaeche); font-size: 1.55rem; }
.snf-kic-meldung p { margin: 0 0 1rem; }
.snf-kic-meldung p:last-child { margin-bottom: 0; }

/* Live-Protokoll */
.snf-kic-protokoll { margin-top: 2rem; background: #1c1c1c; color: #888; border: 1px solid #333; border-radius: 1.6rem; padding: 2rem 2.2rem; }
.snf-kic-p-kopf { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; margin: 0 0 1.2rem; font: 700 1.3rem "Space Grotesk", Inter, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: #aaa; }
.snf-kic .snf-kic-p-auf { background: none; border: 0; padding: 0; margin: 0; color: #bbb; text-decoration: underline; cursor: pointer; font: 400 1.3rem Inter, system-ui, sans-serif; text-transform: none; letter-spacing: 0; }
.snf-kic-protokoll li { display: grid; grid-template-columns: 2.2rem 5.4rem minmax(0, 1fr); gap: .2rem 1rem; padding: .8rem 0; border-top: 1px solid #2a2a2a; color: #8e8e8e; font-size: 1.5rem; line-height: 1.5; animation: kic-ein .35s ease; }
.snf-kic-protokoll li:first-child { border-top: 0; }
.snf-kic-protokoll ol li::before { content: ""; width: 1.2rem; height: 1.2rem; margin-top: .55rem; border-radius: 50%; border: 2px solid #888; border-right-color: transparent; animation: kic-dreh 1s linear infinite; }
.snf-kic-protokoll li.da { color: #fff; }
.snf-kic-protokoll ol li.da::before { animation: none; border: 0; background: #3fbf7f; box-shadow: inset 0 0 0 .3rem #1c1c1c; }
.snf-kic-protokoll ol li.nein::before { animation: none; border: 0; background: #8e8e8e; box-shadow: inset 0 0 0 .3rem #1c1c1c; }
.snf-kic-protokoll .zeit { font-variant-numeric: tabular-nums; color: #8e8e8e; }
.snf-kic-protokoll .antwort { grid-column: 3; color: #d6d6d6; font-size: 1.45rem; }
.snf-kic-protokoll .antwort:empty { display: none; }
.snf-kic-protokoll .antwort.zitat { color: #fff; font-style: italic; }
.snf-kic-protokoll.zu li:not(:last-child) { display: none; }
@keyframes kic-dreh { to { transform: rotate(360deg); } }
@keyframes kic-ein { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* Ergebnis */
.snf-kic-ergebnis { margin-top: 2.4rem; animation: kic-ein .5s ease; }
.snf-kic-ergebnis:focus { outline: none; }
.snf-kic-kopfzeile { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: .6rem 1.6rem; margin: 0 0 1.4rem; }
.snf-kic-kopfzeile h3 { font: 700 2.8rem/1.15 "Space Grotesk", Inter, sans-serif; margin: 0; color: inherit; }
.snf-kic-kopfzeile .snf-kic-datum { font-size: 1.4rem; color: #555; }
.snf-kic-band { border-radius: 1.2rem; padding: 1.2rem 1.6rem; margin: 0 0 1.6rem; font-size: 1.55rem; background: var(--kic-flaeche); color: var(--kic-tinte); }
.snf-kic-band.verlauf { background: #1f3a2b; border: 1px solid #2e6b4a; color: #dff3e8; }
.snf-kic-band.fehlt { background: #fff8ec; border: 1px solid #f0d6a8; }
.snf-kic-karte { background: #fff; color: var(--kic-tinte); border-radius: 1.6rem; padding: 2.2rem; box-shadow: 0 1px 0 rgba(255, 255, 255, .08) inset, 0 6px 18px rgba(0, 0, 0, .18); min-width: 0; }
.snf-kic-karte h4 { font: 700 1.3rem "Space Grotesk", Inter, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--kic-grau); margin: 0 0 .8rem; }
.snf-kic-karte p { margin: 0 0 .8rem; }
.snf-kic-kern { font: 700 3.4rem/1.1 "Space Grotesk", Inter, sans-serif; margin: .2rem 0; }
.snf-kic-kern small { font: 400 1.5rem/1.5 Inter, system-ui, sans-serif; color: #444; display: block; margin-top: .4rem; }
.snf-kic-kern a { color: inherit; }
.snf-kic-stempel { display: inline-flex; align-items: center; gap: .4rem; font: 700 1.25rem/1.4 Inter, system-ui, sans-serif; padding: .25rem .8rem; border-radius: 99rem; white-space: nowrap; }
.snf-kic-stempel.ok { background: #e3f3ea; color: var(--kic-gruen); }
.snf-kic-stempel.ab { background: #fbe3e4; color: var(--kic-rot-d); }
.snf-kic-stempel.kk { background: #fdf0dc; color: #8a5300; }
.snf-kic-stempel.nb { background: #eeede9; color: #55554f; }
.snf-kic-sonder { border-top: 6px solid var(--kic-rot); margin: 0 0 1.6rem; }
.snf-kic-sonder h4 { color: var(--kic-rot-d); }
.snf-kic-sonder p.titel { font: 700 2.4rem/1.2 "Space Grotesk", Inter, sans-serif; margin: 0 0 .6rem; }

/* Zitat */
.snf-kic-zitat { background: #fff; color: var(--kic-tinte); border-radius: 1.6rem; padding: 2.4rem 2.8rem; margin: 0 0 1.6rem; }
.snf-kic-zitat .quelle { font: 700 1.3rem "Space Grotesk", Inter, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--kic-rot-d); margin: 0 0 .8rem; }
.snf-kic-zitat blockquote { margin: 0; padding: 0; border: 0; background: none; font: 500 2.2rem/1.4 "Space Grotesk", Inter, sans-serif; color: inherit; quotes: none; }
.snf-kic-zitat blockquote::before { content: "„"; position: static; } .snf-kic-zitat blockquote::after { content: "“"; position: static; }
.snf-kic-zitat details { margin-top: 1.2rem; font-size: 1.45rem; }
.snf-kic-zitat summary { cursor: pointer; font-weight: 600; }
.snf-kic-zitat .voll { white-space: pre-wrap; overflow-wrap: anywhere; font: 400 1.45rem/1.55 Inter, system-ui, sans-serif; background: var(--kic-flaeche); border-radius: 1rem; padding: 1.4rem; margin: 1rem 0 0; max-height: 32rem; overflow: auto; }

/* Variante B: Steckbrief mit Prüfstempeln */
.snf-kic-raster { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 1.6rem; align-items: start; }
.snf-kic-steckbrief { position: relative; padding: 2.6rem 2.6rem 2rem; border-top: 6px solid var(--kic-rot); }
.snf-kic-steckbrief .wer-sagt { font: 700 1.2rem "Space Grotesk", Inter, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--kic-rot-d); margin: 0 0 .4rem; }
.snf-kic-steckbrief h3 { font: 700 2.8rem/1.15 "Space Grotesk", Inter, sans-serif; margin: 0; color: var(--kic-tinte); overflow-wrap: anywhere; }
.snf-kic-steckbrief .unter { color: #444; margin: .2rem 0 1.4rem; font-size: 1.5rem; }
.snf-kic-profil { display: inline-flex; gap: .6rem; align-items: center; font-size: 1.4rem; background: var(--kic-flaeche); border-radius: 99rem; padding: .3rem 1rem; margin: 0 0 1.2rem; }
.snf-kic-sb { display: grid; grid-template-columns: 12rem minmax(0, 1fr) auto; gap: .4rem 1.2rem; padding: 1rem 0; border-top: 1px dashed #dedbd4; align-items: start; }
.snf-kic-sb .was { font-size: 1.3rem; font-weight: 700; color: var(--kic-grau); text-transform: uppercase; letter-spacing: .05em; padding-top: .2rem; }
.snf-kic-sb .wert { font-size: 1.6rem; overflow-wrap: anywhere; }
.snf-kic-sb .gegen { grid-column: 1 / -1; font-size: 1.4rem; background: #fff6f6; border-left: 3px solid var(--kic-rot); padding: .6rem 1rem; border-radius: 0 .8rem .8rem 0; }
.snf-kic-sb .gegen.kk { background: #fff8ec; border-color: var(--kic-gelb); }
.snf-kic-sb .gegen div { display: flex; gap: .8rem; } .snf-kic-sb .gegen div b { flex: 0 0 13rem; }
.snf-kic-leist { display: flex; flex-wrap: wrap; gap: .6rem; }
.snf-kic-leist span { font-size: 1.4rem; padding: .3rem .9rem; border-radius: 99rem; border: 1px solid #d9d6cf; }
.snf-kic-leist span.ok::before { content: "✓ "; color: var(--kic-gruen); font-weight: 700; }
.snf-kic-leist span.nb { border-style: dashed; color: #555; } .snf-kic-leist span.nb::before { content: "? "; font-weight: 700; }
.snf-kic-steckbrief .stand { font-size: 1.3rem; color: var(--kic-grau); margin: 1.2rem 0 0; }
.snf-kic-kacheln { display: grid; gap: 1.6rem; min-width: 0; }
.snf-kic-zaehler { display: flex; gap: .5rem; margin: 1rem 0 .4rem; }
.snf-kic-zaehler i { flex: 1; height: 1rem; border-radius: 99rem; background: #e7e5df; }
.snf-kic-zaehler i.ja { background: var(--kic-rot); }
.snf-kic-unter { font-size: 1.45rem; margin: 1.2rem 0 .2rem; }
.snf-kic-liste { font-size: 1.5rem; margin: .4rem 0 0; }
.snf-kic-liste li { display: flex; justify-content: space-between; gap: 1rem; padding: .55rem 0; border-bottom: 1px solid #efede8; }
.snf-kic-liste li > span:last-child { text-align: right; flex: 0 0 auto; }
.snf-kic-liste .art { display: block; font-size: 1.25rem; color: var(--kic-grau); }
.snf-kic-art { font-size: 1.25rem; font-weight: 400; color: var(--kic-grau); }
.snf-kic-liste.wer li { display: block; }
.snf-kic-liste.wer i { display: block; color: #444; font-size: 1.4rem; }
.snf-kic-vergleich { background: #fff4f4; border: 1px solid #f1c9cb; border-radius: 1.2rem; padding: 1.2rem 1.6rem; margin: 1.2rem 0 0; font-size: 1.5rem; }
.snf-kic-netz svg { width: 100%; height: auto; display: block; }
.snf-kic-netz .lg { display: flex; gap: .4rem 1.4rem; font-size: 1.25rem; color: var(--kic-grau); margin: .4rem 0 0; flex-wrap: wrap; }
.snf-kic-netz .lg span::before { content: ""; display: inline-block; width: 2.2rem; height: 0; border-top: 2px solid #111; vertical-align: middle; margin-right: .5rem; }
.snf-kic-netz .lg span.ohne::before { border-top-style: dashed; border-color: #999; }

/* Drei Schritte, Termin */
.snf-kic-schritte { background: #fff; color: var(--kic-tinte); border-radius: 1.6rem; padding: 2.4rem 2.8rem; margin-top: 1.6rem; }
.snf-kic-schritte h4 { font: 700 2rem "Space Grotesk", Inter, sans-serif; margin: 0 0 1.2rem; color: var(--kic-tinte); }
.snf-kic-schritte ol { counter-reset: kic-s; }
.snf-kic-schritte ol li { counter-increment: kic-s; display: grid; grid-template-columns: 3.6rem minmax(0, 1fr); gap: 1.2rem; padding: 1.2rem 0; border-top: 1px solid #efede8; }
.snf-kic-schritte ol li:first-child { border-top: 0; }
.snf-kic-schritte ol li::before { content: counter(kic-s); width: 3.6rem; height: 3.6rem; border-radius: 50%; background: var(--kic-rot); color: #fff; font: 700 1.7rem/3.6rem "Space Grotesk", Inter, sans-serif; text-align: center; }
.snf-kic-schritte li b { display: block; }
.snf-kic-rest { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.2rem; margin-top: 1.4rem; padding-top: 1.6rem; border-top: 2px solid var(--kic-tinte); }
.snf-kic-rest p { margin: 0; font: 700 1.9rem "Space Grotesk", Inter, sans-serif; }
.snf-kic-formular { background: #fff; color: var(--kic-tinte); border-radius: 1.6rem; padding: 2.4rem 2.8rem; margin-top: 1.6rem; }
.snf-kic-formular h3 { font: 700 2rem "Space Grotesk", Inter, sans-serif; margin: 0 0 .8rem; color: var(--kic-tinte); }
.snf-kic-vorbelegt { font-size: 1.4rem; color: #444; background: var(--kic-flaeche); border-radius: 1rem; padding: 1rem 1.4rem; overflow-wrap: anywhere; }
.snf-kic-fuss { font-size: 1.35rem; color: #555; margin: 1.6rem 0 0; }
.snf-kic-fuss p { margin: 0 0 .8rem; }
.snf-kic-fuss a { color: inherit; }
.snf-kic-methode { margin-top: 1.6rem; font-size: 1.4rem; }
.snf-kic-methode summary { cursor: pointer; text-decoration: underline; }
.snf-kic-methode p { margin: .8rem 0 0; max-width: 80rem; }

/* Spiel zur Wartezeit (Daniel, 25.10.2026 abends): Knopf oben rechts im Protokoll, Kuckuck-Spiel des Gesamt-Checks darunter */
.snf-kic-p-knoepfe { display: flex; flex-wrap: wrap; gap: .6rem 1.4rem; align-items: center; justify-content: flex-end; }
.snf-kic .snf-kic-spielen { margin: 0; padding: .7rem 1.4rem; border: 2px solid #ff8a8f; border-radius: 99rem; background: transparent; color: #fff; cursor: pointer;
	font: 700 1.35rem/1.2 Inter, system-ui, sans-serif; text-transform: none; letter-spacing: 0; transition: background .15s, border-color .15s; }
.snf-kic .snf-kic-spielen:hover { background: var(--kic-rot); border-color: var(--kic-rot); }
.snf-kic-spiel { position: relative; margin-top: 1.6rem; background: #cfe8f5; border: 3px solid #c4252f; border-radius: 1.6rem; overflow: hidden; box-shadow: 0 0 0 6px rgba(196, 37, 47, .25), 0 18px 40px rgba(0, 0, 0, .5); }
.snf-kic-spiel canvas { display: block; width: 100%; height: 32rem; cursor: pointer; touch-action: none; -webkit-user-select: none; user-select: none; -webkit-tap-highlight-color: transparent; }
.snf-kic-spiel-leiste { display: flex; justify-content: space-between; align-items: center; gap: 1rem; font-size: 1.3rem; color: #b5b5b5; margin: .6rem .4rem 0; }
.snf-kic .snf-kic-spiel-zu { background: none; border: 0; padding: 0; margin: 0; color: #b5b5b5; text-decoration: underline; cursor: pointer; font: inherit; }
.snf-kic-spiel-leiste.fertig { justify-content: center; margin-top: 1.2rem; }
.snf-kic-spiel-leiste.fertig > span { display: none; }
.snf-kic .snf-kic-spiel-leiste.fertig .snf-kic-spiel-zu { padding: 1rem 2.2rem; border: 2px solid var(--kic-rot); border-radius: 99rem; background: var(--kic-rot); color: #fff; text-decoration: none; font-weight: 700; font-size: 1.5rem; }
/* Abschlusskarte des Spiels, Kopie aus assets/gesamt-check/snf-gesamt-check.css (das Spiel baut sie mit snf-gc-Klassen) */
.snf-kic .snf-gc-ende { position: absolute; inset: 0; display: grid; grid-template-columns: 1.1fr 1fr; gap: 2rem; align-items: start; padding: 2rem 2.4rem; overflow: auto;
	background: rgba(17, 17, 17, .9); color: #fff; text-align: left; animation: kic-ein .35s ease; }
.snf-kic .snf-gc-ende p { margin: 0 0 .6rem; }
.snf-kic .snf-gc-ende-auge { font-size: 1.2rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #ffd27a; }
.snf-kic .snf-gc-ende-kopf { font: 700 2.4rem/1.15 "Space Grotesk", Inter, sans-serif; }
.snf-kic .snf-gc-ende-punkte { font: 700 3.2rem/1.1 "Space Grotesk", Inter, sans-serif; color: #ffb3b8; }
.snf-kic .snf-gc-ende-satz, .snf-kic .snf-gc-ende-klein { font-size: 1.35rem; color: #d0d0d0; }
.snf-kic .snf-gc-ende-ok { font-weight: 700; color: #7be0a4; }
.snf-kic .snf-gc-ende-name { margin: 1rem 0; }
.snf-kic .snf-gc-ende-name label { display: block; font-size: 1.4rem; font-weight: 700; color: #fff; margin: 0 0 .6rem; }
.snf-kic .snf-gc-ende-name input { display: block; width: 100%; max-width: 26rem; height: auto; margin: .4rem 0 .6rem; padding: .9rem 1.2rem; border: 2px solid #fff; border-radius: 1rem; font: 400 1.6rem/1.3 Inter, sans-serif; color: #111; background: #fff; }
.snf-kic .snf-gc-ende-name button, .snf-kic .snf-gc-ende-neu { margin: .4rem .6rem .4rem 0; padding: 1rem 2.2rem; border: 2px solid #fff; border-radius: 99rem; background: var(--kic-rot-d); color: #fff; font: 700 1.5rem/1 Inter, sans-serif; cursor: pointer; }
.snf-kic .snf-gc-ende-neu { background: #fff; color: #111; }
.snf-kic .snf-gc-ende-liste li { display: flex; gap: .8rem; padding: .35rem 0; border-bottom: 1px solid rgba(255, 255, 255, .12); font-size: 1.4rem; }
.snf-kic .snf-gc-ende-liste li .r { width: 2.4rem; color: #b5b5b5; }
.snf-kic .snf-gc-ende-liste li .n { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.snf-kic .snf-gc-ende-liste li.du { color: #ffd27a; font-weight: 700; }
.snf-kic .snf-gc-ende-liste li.leer { color: #b5b5b5; }

/* Abschluss: Strategie-Session mit Daniels Foto (Daniel, 25.10.2026 abends: „Den Rest machen wir mit dir“ war zu unsichtbar) */
.snf-kic-cta { display: grid; grid-template-columns: 16rem minmax(0, 1fr); gap: 2.4rem 3.2rem; align-items: start; margin-top: 1.6rem; padding: 3.2rem;
	border-radius: 1.6rem; background: #8b0d14; color: #fff; box-shadow: 0 0 0 .6rem rgba(196, 37, 47, .25), 0 20px 50px rgba(0, 0, 0, .45); }
.snf-kic-cta-bild { text-align: center; }
.snf-kic .snf-kic-cta-foto { display: block; width: 14rem; height: 14rem; margin: 0 auto 1rem; border-radius: 50%; object-fit: cover; object-position: 50% 20%; border: 4px solid #fff; }
.snf-kic-cta-bild p { margin: 0; font: 700 1.6rem/1.3 "Space Grotesk", Inter, sans-serif; }
.snf-kic-cta-bild p span { display: block; font: 400 1.35rem/1.4 Inter, system-ui, sans-serif; color: #ffd6d8; margin-top: .2rem; }
.snf-kic-cta-auge { margin: 0 0 .6rem; font: 700 1.3rem "Space Grotesk", Inter, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #ffb3b8; }
.snf-kic .snf-kic-cta h3 { margin: 0 0 1rem; font: 700 3rem/1.15 "Space Grotesk", Inter, sans-serif; color: #fff; }
.snf-kic-cta-text > p { margin: 0 0 1.2rem; max-width: 72rem; }
.snf-kic .snf-kic-cta-liste-kopf { margin: 1.6rem 0 .6rem; font-weight: 700; }
.snf-kic .snf-kic-cta ul li { position: relative; padding: .5rem 0 .5rem 3.2rem; }
.snf-kic .snf-kic-cta ul li::before { content: "✓"; position: absolute; left: 0; top: .6rem; width: 2.2rem; height: 2.2rem; border-radius: 50%; background: #fff; color: #8b0d14;
	font: 700 1.3rem/2.2rem Inter, system-ui, sans-serif; text-align: center; }
.snf-kic-cta-knopf { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.6rem; margin-top: 2rem; }
.snf-kic-cta-knopf span { font-size: 1.4rem; color: #ffd6d8; }
.snf-kic .snf-kic-cta .snf-kic-knopf { background: #fff; color: #8b0d14; border-color: #fff; }
.snf-kic .snf-kic-cta .snf-kic-knopf:hover { background: #111; color: #fff; border-color: #111; }
@container snf-kic (max-width: 640px) {
	.snf-kic-cta { grid-template-columns: minmax(0, 1fr); padding: 2.4rem 1.8rem; }
	.snf-kic .snf-kic-cta-foto { width: 11rem; height: 11rem; }
	.snf-kic .snf-kic-cta h3 { font-size: 2.4rem; }
	.snf-kic .snf-gc-ende { grid-template-columns: 1fr; gap: 1.2rem; padding: 1.4rem 1.6rem; }
	.snf-kic .snf-gc-ende-kopf { font-size: 2rem; }
	.snf-kic .snf-gc-ende-punkte { font-size: 2.6rem; }
	.snf-kic-spiel canvas { height: 30rem; }
}

/* Dunkles Stockwerk (Shortcode grund="dunkel", wie der Gesamt-Check P27-2b). Färbt den umgebenden Block 3a mit.
   Rückbau: grund="dunkel" aus dem Shortcode nehmen. */
section:has(.snf-kic.snf-kic-dunkel) { --block-bg-color: #111; --block-font-color: #fff; background-color: #111; color: #fff; }
section:has(.snf-kic.snf-kic-dunkel) h2 { color: #fff; }
section:has(.snf-kic.snf-kic-dunkel) .small { color: #ff9aa0; }
.snf-kic-dunkel { color: #e6e6e6; }
.snf-kic-dunkel .snf-kic-einleitung { color: #ddd; }
.snf-kic-dunkel .snf-kic-eingabe { box-shadow: 0 0 0 .6rem rgba(139, 13, 20, .25), 0 20px 50px rgba(0, 0, 0, .45); }
.snf-kic-dunkel .snf-kic-kopfzeile h3 { color: #fff; }
.snf-kic-dunkel .snf-kic-kopfzeile .snf-kic-datum, .snf-kic-dunkel .snf-kic-fuss, .snf-kic-dunkel .snf-kic-methode { color: #b5b5b5; }
.snf-kic-dunkel .snf-kic-fuss a, .snf-kic-dunkel .snf-kic-methode summary { color: #fff; }
.snf-kic-dunkel .snf-kic-karte { box-shadow: 0 1px 0 rgba(255, 255, 255, .08) inset, 0 6px 18px rgba(0, 0, 0, .25); }

/* Spalten richten sich nach der Breite des Werkzeugs, nicht des Fensters: Block 3a ist auf Laptops nur rund 770 px breit. */
@container snf-kic (max-width: 860px) {
	.snf-kic-raster { grid-template-columns: minmax(0, 1fr); }
	.snf-kic-kacheln { grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr)); align-items: start; }
}
@container snf-kic (max-width: 560px) {
	.snf-kic-felder { grid-template-columns: minmax(0, 1fr); }
	.snf-kic-sb { grid-template-columns: minmax(0, 1fr) auto; }
	.snf-kic-sb .was { grid-column: 1 / 3; }
	.snf-kic-sb .gegen div { flex-direction: column; gap: 0; } .snf-kic-sb .gegen div b { flex: none; }
	.snf-kic-kacheln { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 900px) {
	.snf-kic-raster { grid-template-columns: minmax(0, 1fr); }
	.snf-kic-zitat { padding: 2rem; } .snf-kic-zitat blockquote { font-size: 1.9rem; }
	.snf-kic-steckbrief, .snf-kic-karte, .snf-kic-schritte, .snf-kic-formular { padding: 2rem 1.8rem; }
	.snf-kic-eingabe { padding: 2rem 1.6rem; }
	.snf-kic-protokoll { padding: 1.6rem; }
	.snf-kic-protokoll li { grid-template-columns: 2.2rem minmax(0, 1fr); }
	.snf-kic-protokoll .zeit { display: none; }
	.snf-kic-protokoll .antwort { grid-column: 2; }
	.snf-kic-kopfzeile h3 { font-size: 2.4rem; }
}
@media (prefers-reduced-motion: reduce) {
	.snf-kic-pfeil, .snf-kic-protokoll ol li::before, .snf-kic-protokoll li, .snf-kic-ergebnis { animation: none; }
}
