/* clg-comunitate · Ergänzungen zu app.css (aus clg-vorbim übernommen): Feed, Beiträge, Kommentare. */
.cm-layout { display: grid; gap: 8px; }
@media (min-width: 1000px) { .cm-layout { grid-template-columns: minmax(0, 1fr) 340px; align-items: start; } .cm-seite { position: sticky; top: 90px; } }
.cm-haupt, .cm-seite, .cm-liste { display: grid; gap: 8px; }
.cm-hero { padding: 26px 20px 20px; }
@media (min-width: 760px) { .cm-hero { padding: 34px 32px 26px; } }
.cm-h1 { font-size: clamp(26px, 5vw, 38px); margin-top: 12px; }
.cm-composer { margin-top: 18px; display: grid; gap: 10px; }
.cm-composer textarea { width: 100%; resize: vertical; min-height: 86px; border: 0; border-radius: 18px; padding: 14px 16px; font: 500 16px/1.5 var(--font-body); color: #0d1f3c; background: rgba(255,255,255,.96); box-shadow: 0 0 0 1px rgba(255,255,255,.2) inset; }
.cm-composer textarea:focus { outline: 2px solid var(--gold); }
.cm-composer-fuss { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.cm-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.cm-chips button { border: 0; cursor: pointer; padding: 8px 12px; border-radius: 999px; background: rgba(255,255,255,.1); color: rgba(255,255,255,.8); font: 600 13px/1 var(--font-body); box-shadow: 0 0 0 1px rgba(255,255,255,.14) inset; }
.cm-chips button[aria-checked="true"] { background: var(--gold); color: var(--navy-900); box-shadow: none; }
.cm-composer-knoepfe { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.cm-foto { width: 40px; height: 40px; border-radius: 50%; border: 0; display: grid; place-items: center; background: rgba(255,255,255,.12); color: #fff; cursor: pointer; }
.cm-filter { display: flex; gap: 6px; overflow-x: auto; padding: 6px 2px 2px; scrollbar-width: none; }
.cm-filter button { flex: none; border: 0; cursor: pointer; padding: 10px 14px; border-radius: 999px; background: var(--surface); color: var(--ink-2); box-shadow: 0 0 0 1px var(--line) inset; font: 700 13.5px/1 var(--font-display); }
.cm-filter button[aria-selected="true"] { background: var(--strong); color: #fff; box-shadow: none; }

/* Beitrag */
.cm-post { background: var(--surface); border-radius: var(--r-panel); padding: 16px; box-shadow: 0 0 0 1px var(--line) inset, var(--shadow-resting); display: grid; gap: 12px; }
.cm-post.fix { box-shadow: 0 0 0 1.5px rgba(239,189,116,.6) inset, var(--shadow-resting); background: linear-gradient(180deg, var(--gold-soft), transparent 60%), var(--surface); }
.cm-post-kopf { display: grid; grid-template-columns: 42px 1fr auto; gap: 10px; align-items: center; }
.cm-post-wer { display: grid; gap: 2px; min-width: 0; }
.cm-name { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.cm-name b { font: 700 15px/1.2 var(--font-display); }
.cm-ort { font-size: 12.5px; color: var(--ink-3); }
.cm-zeit { font-size: 12.5px; color: var(--ink-3); }
.cm-fix { display: inline-flex; align-items: center; gap: 3px; color: var(--gold-ink); font-weight: 600; }
.cm-badge { display: inline-flex; align-items: center; gap: 4px; padding: 3px 8px; border-radius: 999px; font: 700 11px/1.2 var(--font-display); white-space: nowrap; }
.cm-badge.ai { background: rgba(141,170,244,.18); color: #3a5bb8; }
.cm-badge.team { background: var(--gold-soft); color: var(--gold-ink); }
html[data-tema="dark"] .cm-badge.ai { color: #b9cbfa; }
.cm-text { font-size: 15.5px; line-height: 1.6; color: var(--ink); overflow-wrap: anywhere; }
.cm-text p + p { margin-top: 8px; }
.cm-bild { width: 100%; max-height: 420px; object-fit: cover; border-radius: 16px; display: block; box-shadow: 0 0 0 1px var(--line) inset; }
.cm-reluare { display: flex; align-items: center; gap: 14px; padding: 14px; border-radius: 16px; background: var(--navy-950); color: #fff; }
.cm-reluare b { display: block; font: 700 15px/1.25 var(--font-display); }
.cm-reluare span span { font-size: 12.5px; color: rgba(255,255,255,.65); }
.cm-play { flex: none; width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; background: var(--gold); color: var(--navy-900); }
.cm-play.klein { width: 36px; height: 36px; }
.cm-post-fuss { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
.cm-reakt { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.cm-r { display: inline-flex; align-items: center; gap: 5px; height: 32px; padding: 0 10px; border-radius: 999px; border: 0; cursor: pointer; background: var(--paper); color: var(--ink-2); box-shadow: 0 0 0 1px var(--line) inset; font: 600 13px/1 var(--font-body); }
.cm-r.mein { background: var(--gold-soft); box-shadow: 0 0 0 1.5px var(--gold) inset; color: var(--ink); }
.cm-r.leer { width: 32px; justify-content: center; padding: 0; font-size: 17px; }
.cm-r-plus { position: relative; }
.cm-r-wahl { position: absolute; bottom: 40px; left: 0; z-index: 5; display: flex; gap: 2px; padding: 6px; border-radius: 999px; background: var(--surface); box-shadow: 0 0 0 1px var(--line) inset, var(--menu-shadow); }
.cm-r-wahl[hidden] { display: none; }
.cm-r-wahl button { border: 0; background: none; cursor: pointer; font-size: 20px; width: 36px; height: 36px; border-radius: 50%; }
.cm-r-wahl button:hover { background: var(--hover); }
.cm-komm { display: inline-flex; align-items: center; gap: 7px; font: 700 13.5px/1 var(--font-display); color: var(--ink-2); }
.cm-komm:hover { color: var(--ink); }
.cm-vorschau { display: grid; grid-template-columns: 32px 1fr; gap: 10px; padding: 12px; border-radius: 16px; background: var(--paper); }
.cm-vorschau .cm-av { width: 32px; height: 32px; font-size: 12px; }
.cm-vorschau-kopf { display: block; margin-bottom: 3px; }
.cm-vorschau-text { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 14px; line-height: 1.5; color: var(--ink-2); }

/* Avatare */
.cm-av { position: relative; width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; flex: none; background: var(--strong); color: var(--gold); font: 800 14px/1 var(--font-display); }
.cm-av.gross { width: 64px; height: 64px; font-size: 20px; }
.cm-av.ai { background: linear-gradient(140deg, #8daaf4, #1055ac); color: #fff; }
.cm-av.team { background: var(--navy-900); box-shadow: 0 0 0 1.5px rgba(239,189,116,.55); }
.cm-wappen { width: 70%; height: 70%; background: var(--gold); -webkit-mask: url('/logo.png') center / contain no-repeat; mask: url('/logo.png') center / contain no-repeat; }
.cm-av-funke { position: absolute; right: -3px; bottom: -3px; width: 18px; height: 18px; border-radius: 50%; display: grid; place-items: center; background: var(--gold); color: var(--navy-900); box-shadow: 0 0 0 2px var(--surface); }

/* Seitenleiste */
.cm-live-titel { display: block; font: 800 17px/1.25 var(--font-display); }
.cm-live-zeit { display: block; margin-top: 4px; font-size: 14px; color: var(--ink-2); }
.cm-profs { list-style: none; margin: 0 0 6px; padding: 0; display: grid; gap: 10px; }
.cm-profs li { display: grid; grid-template-columns: 42px 1fr; gap: 10px; align-items: center; }
.cm-profs b { display: block; font: 700 14.5px/1.2 var(--font-display); }
.cm-profs span span { font-size: 13px; color: var(--ink-3); }

/* Detail und Kommentare */
.cm-detail { max-width: 760px; margin: 0 auto; display: grid; gap: 8px; }
.cm-kommentare { background: var(--surface); border-radius: var(--r-panel); padding: 16px; box-shadow: 0 0 0 1px var(--line) inset; display: grid; gap: 12px; }
.cm-k-titel { font-size: 16px; }
.cm-k { display: grid; grid-template-columns: 42px 1fr; gap: 10px; align-items: start; }
.cm-k-blase { padding: 12px 14px; border-radius: 4px 18px 18px 18px; background: var(--paper); display: grid; gap: 6px; }
.cm-k.ai .cm-k-blase { background: rgba(141,170,244,.12); box-shadow: 0 0 0 1px rgba(141,170,244,.25) inset; }
.cm-k-kopf { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px; }
.cm-tippt { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.cm-tippt .cm-k-kopf { width: 100%; }
.cm-punkte { display: inline-flex; gap: 4px; }
.cm-punkte i { width: 7px; height: 7px; border-radius: 50%; background: #3a5bb8; opacity: .4; animation: cm-tipp 1.2s infinite; }
.cm-punkte i:nth-child(2) { animation-delay: .2s; } .cm-punkte i:nth-child(3) { animation-delay: .4s; }
@keyframes cm-tipp { 50% { opacity: 1; transform: translateY(-2px); } }
.cm-antwort { display: grid; grid-template-columns: 42px 1fr; gap: 10px; align-items: start; padding-top: 12px; border-top: 1px solid var(--line); }
.cm-antwort textarea { width: 100%; resize: vertical; border: 0; border-radius: 16px; padding: 12px 14px; font: 500 15px/1.5 var(--font-body); background: var(--field); color: var(--ink); box-shadow: 0 0 0 1px var(--line) inset; }
.cm-antwort button { grid-column: 2; justify-self: end; }

/* Live, Reluări, Mitglieder */
.cm-ev, .cm-rel { list-style: none; margin: 0; padding: 0; }
.cm-ev li { display: grid; grid-template-columns: 56px 1fr; gap: 6px 14px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--line); }
.cm-ev li > :last-child { grid-column: 2; justify-self: start; }
@media (min-width: 640px) { .cm-ev li { grid-template-columns: 56px 1fr auto; } .cm-ev li > :last-child { grid-column: 3; } }
.cm-ev li:last-child, .cm-rel li:last-child { border-bottom: 0; }
.cm-ev-datum { display: grid; place-items: center; height: 56px; border-radius: 16px; background: var(--paper); line-height: 1; }
.cm-ev-datum b { font: 800 20px/1 var(--font-display); }
.cm-ev-datum span { font: 700 10px/1 var(--font-display); letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); margin-top: -8px; }
.cm-ev-text { display: grid; gap: 3px; }
.cm-ev-text b { font: 700 15.5px/1.25 var(--font-display); }
.cm-ev-text > span { font-size: 13.5px; color: var(--ink-2); }
.cm-rel li { display: grid; grid-template-columns: 36px 1fr; gap: 12px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--line); }
.cm-rel b { display: block; font: 700 14.5px/1.2 var(--font-display); }
.cm-rel span span { font-size: 12.5px; color: var(--ink-3); }
.cm-mgrid { display: grid; gap: 8px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 760px) { .cm-mgrid { grid-template-columns: repeat(4, 1fr); } }
.cm-m { display: grid; justify-items: center; gap: 6px; text-align: center; padding: 18px 12px; border-radius: var(--r-panel); background: var(--surface); box-shadow: 0 0 0 1px var(--line) inset; }
.cm-m b { font: 700 14.5px/1.2 var(--font-display); }
.cm-m > span:not(.vb-badge):not(.cm-badge) { font-size: 13px; color: var(--ink-3); }
.vb-badge.cm-tag-intrebare { background: rgba(16,85,172,.1); color: var(--blue); }
.vb-badge.cm-tag-tema { background: var(--gold-soft); color: var(--gold-ink); }
.vb-badge.cm-tag-germania { background: rgba(29,122,79,.1); color: var(--gruen); }
html[data-tema="dark"] .vb-badge.cm-tag-intrebare { background: rgba(157,183,247,.14); color: #b9cbfa; }

/* automatische Einordnung, KI-Schalter */
.cm-auto-hinweis { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: rgba(255,255,255,.7); }
.cm-auto-hinweis svg { color: var(--gold); }
.cm-einordnung { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 10px 14px; border-radius: 16px; background: var(--surface); box-shadow: 0 0 0 1px var(--line) inset; font-size: 14px; color: var(--ink-2); }
.cm-einordnung svg { color: var(--gold-ink); }
.cm-einordnung select { height: 34px; border-radius: 999px; border: 0; padding: 0 12px; background: var(--paper); color: var(--ink); box-shadow: 0 0 0 1px var(--line) inset; font: 600 13.5px/1 var(--font-body); }
.cm-ai-schalter { cursor: pointer; align-items: center; }
.cm-ai-schalter > span:first-child { display: grid; gap: 2px; }
.cm-ai-erkl { font-size: 12px; color: var(--ink-3); }
.cm-ai-schalter .vb-schalter { padding: 0; }

/* Kategorien-Knopf und -Fenster */
.cm-leiste { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 4px 2px 0; }
.cm-kat-wrap { display: inline-flex; align-items: center; gap: 6px; }
.cm-kat-knopf { display: inline-flex; align-items: center; gap: 9px; height: 44px; padding: 0 16px 0 14px; border: 0; border-radius: 999px; cursor: pointer; background: var(--strong); color: #fff; font: 700 14px/1 var(--font-display); box-shadow: var(--shadow-raised); transition: transform 500ms var(--ease-spring); }
.cm-kat-knopf:active { transform: scale(.96); }
.cm-kat-knopf svg { color: var(--gold); }
.cm-kat-zahl { min-width: 24px; height: 22px; padding: 0 7px; border-radius: 999px; display: grid; place-items: center; background: rgba(255,255,255,.14); font: 700 12px/1 var(--font-body); }
.cm-kat-weg { width: 34px; height: 34px; border-radius: 50%; border: 0; cursor: pointer; background: var(--surface); color: var(--ink-2); box-shadow: 0 0 0 1px var(--line) inset; font-size: 18px; line-height: 1; }
.cm-sortinfo { font-size: 13px; color: var(--ink-3); font-weight: 600; }
.cm-kat-schleier { position: fixed; inset: 0; z-index: 70; display: grid; place-items: end center; padding: 10px; background: rgba(8,19,38,0); backdrop-filter: blur(0); -webkit-backdrop-filter: blur(0); transition: background 260ms, backdrop-filter 260ms; }
.cm-kat-schleier.offen { background: rgba(8,19,38,.45); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.cm-kat-schleier[hidden] { display: none; }
.cm-kat-panel { width: min(460px, 100%); padding: 10px 18px calc(18px + env(safe-area-inset-bottom, 0px)); border-radius: 30px; background: var(--surface); color: var(--ink); box-shadow: 0 0 0 1px var(--line) inset, 0 30px 80px rgba(0,0,0,.3); transform: translateY(40px) scale(.96); opacity: 0; transition: transform 520ms var(--ease-spring), opacity 220ms; }
.cm-kat-schleier.offen .cm-kat-panel { transform: none; opacity: 1; }
@media (min-width: 760px) { .cm-kat-schleier { place-items: center; } }
.cm-kat-griff { width: 40px; height: 5px; border-radius: 5px; background: var(--line); margin: 0 auto 12px; }
.cm-kat-panel h3 { font-size: 20px; letter-spacing: -0.02em; }
.cm-kat-panel .vb-klein { margin-top: 4px; }
.cm-kat-liste { display: grid; gap: 6px; margin-top: 14px; }
.cm-kat { display: grid; grid-template-columns: 14px 1fr auto; gap: 12px; align-items: center; width: 100%; padding: 13px 14px; border: 0; border-radius: 18px; cursor: pointer; text-align: left; background: var(--paper); color: var(--ink); font: inherit; box-shadow: 0 0 0 1px var(--line) inset; opacity: 0; transform: translateY(10px); transition: box-shadow 160ms, background 160ms; }
.cm-kat-schleier.offen .cm-kat { animation: cm-kat-ein 460ms var(--ease-spring) forwards; animation-delay: calc(var(--i) * 45ms + 60ms); }
@keyframes cm-kat-ein { to { opacity: 1; transform: none; } }
.cm-kat:hover { box-shadow: 0 0 0 1.5px var(--gold) inset; }
.cm-kat.aktiv { background: var(--gold-soft); box-shadow: 0 0 0 1.5px var(--gold) inset; }
.cm-kat-text b { display: block; font: 700 15px/1.2 var(--font-display); }
.cm-kat-text span { font-size: 12.5px; color: var(--ink-3); }
.cm-kat-n { font: 700 13px/1 var(--font-display); color: var(--ink-3); }
.cm-kat-punkt { width: 12px; height: 12px; border-radius: 50%; }
.cm-kp-alle { background: linear-gradient(135deg, var(--peri), var(--gold)); }
.cm-kp-intrebare { background: var(--blue); } .cm-kp-tema { background: var(--gold); } .cm-kp-germania { background: var(--gruen); } .cm-kp-general { background: var(--ink-3); }
.cm-sort { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; margin-top: 14px; padding: 4px; border-radius: 999px; background: var(--paper); box-shadow: 0 0 0 1px var(--line) inset; }
.cm-sort button { height: 40px; border: 0; border-radius: 999px; cursor: pointer; background: none; color: var(--ink-2); font: 700 13.5px/1 var(--font-display); }
.cm-sort button[aria-checked="true"] { background: var(--strong); color: #fff; }
@media (prefers-reduced-motion: reduce) { .cm-kat { opacity: 1; transform: none; } }

/* KI-Kennzeichnung klein, Club-Teaser */
.cm-ki { display: inline-flex; align-items: center; gap: 3px; font: 600 11.5px/1 var(--font-body); color: #5b77c9; }
.cm-ki svg { width: 11px; height: 11px; color: var(--gold); }
html[data-tema="dark"] .cm-ki { color: #a9bdf5; }
.cm-club { position: relative; overflow: hidden; isolation: isolate; display: grid; gap: 6px; padding: 20px; border-radius: var(--r-surface); background: var(--navy-950); color: #fff; box-shadow: var(--shadow-raised); transition: transform 500ms var(--ease-spring); }
.cm-club::before { content: ''; position: absolute; inset: 0; z-index: -1; background: radial-gradient(80% 70% at 100% 0%, rgba(16,85,172,.55), transparent 60%), radial-gradient(60% 60% at 0% 100%, rgba(94,81,54,.5), transparent 65%); }
.cm-club:hover { transform: translateY(-2px); }
.cm-club-kopf { display: inline-flex; align-items: center; gap: 8px; font: 700 11px/1 var(--font-display); letter-spacing: .18em; text-transform: uppercase; color: var(--gold); }
.cm-club .cm-live-titel { margin-top: 6px; color: #fff; }
.cm-club .cm-live-zeit { color: rgba(255,255,255,.75); margin-top: 0; }
.cm-club-text { font-size: 13.5px; line-height: 1.5; color: rgba(255,255,255,.65); }
.cm-club-knopf { display: inline-flex; align-items: center; gap: 8px; justify-self: start; margin-top: 8px; padding: 10px 16px; border-radius: 999px; background: var(--gold); color: var(--navy-900); font: 700 13.5px/1 var(--font-display); }

/* Seit 15.11.2026 (echte Daten): Anhänge, Videos, Menü je Beitrag, Profil, Moderation */
.cm-av.bild { background: var(--paper); overflow: hidden; }
.cm-av img, .cm-kopf-av img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; display: block; }
.cm-kopf-av { overflow: hidden; }
.cm-anhang { position: relative; display: flex; align-items: center; gap: 10px; padding: 10px; border-radius: 16px; background: rgba(255,255,255,.1); color: inherit; font-size: 14px; }
.cm-anhang img { max-height: 160px; max-width: 100%; border-radius: 12px; display: block; }
.cm-anhang-video { color: rgba(255,255,255,.85); }
.cm-kommentare .cm-anhang, .cm-profil .cm-anhang { background: var(--paper); color: var(--ink-2); }
.cm-anhang-weg { position: absolute; top: 6px; right: 6px; width: 30px; height: 30px; border: 0; border-radius: 50%; display: grid; place-items: center; cursor: pointer; background: rgba(8,19,38,.75); color: #fff; }
.cm-laedt { font-weight: 600; }
.cm-video { position: relative; display: grid; place-items: center; width: 100%; aspect-ratio: 16 / 9; border: 0; padding: 0; cursor: pointer; overflow: hidden; border-radius: 16px; background: var(--navy-950); }
.cm-video img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.cm-video .cm-play { position: relative; }
.cm-video-rahmen { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: 16px; overflow: hidden; background: #000; }
.cm-video-rahmen iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.cm-kopf-rechts { display: flex; align-items: center; gap: 6px; }
.cm-menue { position: relative; }
.cm-menue-knopf { width: 32px; height: 32px; border: 0; border-radius: 50%; display: grid; place-items: center; cursor: pointer; background: none; color: var(--ink-3); }
.cm-menue-knopf:hover { background: var(--hover); color: var(--ink); }
.cm-menue-liste { position: absolute; right: 0; top: 36px; z-index: 6; min-width: 220px; display: grid; padding: 6px; border-radius: 16px; background: var(--surface); box-shadow: 0 0 0 1px var(--line) inset, var(--menu-shadow); }
.cm-menue-liste[hidden] { display: none; }
.cm-menue-liste button { border: 0; background: none; cursor: pointer; text-align: left; padding: 10px 12px; border-radius: 10px; font: 600 14px/1.3 var(--font-body); color: var(--ink); }
.cm-menue-liste button:hover { background: var(--hover); }
.cm-menue-liste button.rot { color: var(--rot); }
.cm-post.versteckt, .cm-k.versteckt { opacity: .62; }
.cm-versteckt-hinweis { font: 700 12px/1.2 var(--font-display); color: var(--rot); text-transform: uppercase; letter-spacing: .04em; }
.cm-mehr { justify-self: center; margin: 6px 0 4px; }
.cm-antwort-feld { display: grid; gap: 8px; }
.cm-antwort .cm-antwort-knoepfe { grid-column: 2; display: flex; justify-content: flex-end; align-items: center; gap: 8px; }
.cm-antwort .cm-antwort-knoepfe button { grid-column: auto; }
.cm-foto.klein { width: 36px; height: 36px; background: var(--paper); color: var(--ink-2); box-shadow: 0 0 0 1px var(--line) inset; }
.cm-zu { text-align: center; padding: 12px; }
.cm-suche { margin-bottom: 8px; }
.cm-m[hidden], .cm-mod-zeile[hidden] { display: none; }
.cm-profil { display: grid; gap: 6px; max-width: 620px; }
.cm-profil-bild { display: flex; align-items: center; gap: 16px; margin-bottom: 10px; }
.cm-profil-bild > div { display: grid; gap: 6px; justify-items: start; }
.cm-bild-weg { border: 0; background: none; cursor: pointer; padding: 0; font-size: 13px; }
.cm-mod-zahlen { margin-bottom: 8px; }
@media (min-width: 760px) { .cm-mod-zahlen { grid-template-columns: repeat(4, 1fr); } }
.cm-mod { display: grid; gap: 4px; margin-bottom: 8px; }
.cm-mod h2 { display: flex; align-items: center; gap: 8px; font: 800 18px/1.2 var(--font-display); margin-bottom: 6px; }
.cm-mod-zeile { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 14px; padding: 12px 0; border-top: 1px solid var(--line); color: inherit; }
.cm-mod-zeile > div:first-child { display: grid; gap: 3px; min-width: 0; flex: 1 1 320px; }
.cm-mod-grund { font: 700 14px/1.3 var(--font-display); }
.cm-mod-text { font-size: 14px; line-height: 1.45; color: var(--ink-2); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.cm-mod-knoepfe { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.cm-mod-knoepfe button.vb-link { border: 0; background: none; cursor: pointer; padding: 0; font: inherit; font-weight: 600; }
.cm-mod-mitglieder { max-height: 640px; overflow: auto; }

/* Erster Login: Hinweis auf die KI-Professoren (seit 15.11.2026) */
.cm-hinweis-schleier { place-items: center; }
.cm-hinweis { display: grid; gap: 12px; padding: 26px 22px calc(22px + env(safe-area-inset-bottom, 0px)); width: min(480px, 100%); }
.cm-hinweis h3 { font: 800 22px/1.2 var(--font-display); letter-spacing: -0.02em; }
.cm-hinweis-funke { width: 48px; height: 48px; border-radius: 16px; display: grid; place-items: center; background: linear-gradient(140deg, #8daaf4, #1055ac); color: #fff; }
.cm-hinweis-funke svg { width: 22px; height: 22px; }
.cm-hinweis .cm-profs { margin: 2px 0; }
.cm-hinweis .cm-ki { vertical-align: middle; }
.cm-hinweis-schalter { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 16px; border-radius: 18px; background: var(--paper); box-shadow: 0 0 0 1px var(--line) inset; cursor: pointer; }
.cm-hinweis-schalter > span:first-child { display: grid; gap: 3px; }
.cm-hinweis-schalter b { font: 700 15px/1.25 var(--font-display); }
.cm-hinweis-schalter span span { font-size: 13px; color: var(--ink-3); }
.cm-hinweis .lab-btn { margin-top: 4px; justify-content: center; }
.lab.cm-hinweis-schleier { background: rgba(8,19,38,0); min-height: 0; overflow: visible; }
.lab.cm-hinweis-schleier.offen { background: rgba(8,19,38,.5); }
