/* Tool „Umfrage“ – baut auf /tools/assets/tools.css auf (Farben, Karten, Felder, Knöpfe). Ruhig wie die übrigen Tools.
   Ja = grün, Vielleicht = gelb, Nein = grau (nie Farbe allein: immer mit Symbol bzw. Text). */

.um-meldung { display: flex; gap: .7rem; align-items: flex-start; margin: 0 0 1.4rem; padding: .85rem 1rem; border-radius: 14px; background: rgba(52, 211, 153, .1); border: 1px solid rgba(52, 211, 153, .35); font-weight: 600; }
.um-meldung i { margin-top: .25rem; color: var(--gruen); }
.um-meldung p { margin: 0; }
.um-meldung.fehler { background: rgba(251, 113, 133, .1); border-color: rgba(251, 113, 133, .4); }
.um-meldung.fehler i { color: var(--rot); }
.t-karte > .um-meldung { margin-top: -.2rem; }

.um-breit { width: 100%; }
.um-trenner { height: 1px; margin: 1.4rem 0; background: var(--rand); }
.t-feld > span em { font-style: normal; font-weight: 500; color: var(--text-3); }
.t-karte > h2 { margin-bottom: 1.1rem; }
.um-karte-kopf { display: flex; align-items: center; justify-content: space-between; gap: .6rem; flex-wrap: wrap; margin-bottom: 1rem; }
.um-karte-kopf h2, .um-karte-kopf .ueber { margin: 0; }
.um-unsichtbar { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* Pillen */
.um-pille { display: inline-flex; align-items: center; gap: .4rem; padding: .28rem .7rem; border-radius: 99px; background: rgba(255, 198, 26, .12); color: var(--gelb); font-weight: 700; font-size: .82rem; box-shadow: inset 0 0 0 1px rgba(255, 198, 26, .25); white-space: nowrap; }
.um-pille.leise { background: var(--flaeche-2); color: var(--text-2); box-shadow: none; font-weight: 600; }
.um-pille.gruen { background: rgba(52, 211, 153, .12); color: var(--gruen); box-shadow: inset 0 0 0 1px rgba(52, 211, 153, .3); }
.um-pille.rot { background: rgba(251, 113, 133, .12); color: var(--rot); box-shadow: inset 0 0 0 1px rgba(251, 113, 133, .3); }
.um-pille.gelb { background: var(--gelb); color: #111; box-shadow: none; }
.t-symbol.rot { background: rgba(251, 113, 133, .12); color: var(--rot); box-shadow: inset 0 0 0 1px rgba(251, 113, 133, .3); }

/* ---------- Startseite ---------- */
.um-meine { margin: -.6rem 0 1.6rem; }
.um-meine ul { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.um-meine a { display: inline-flex; align-items: center; gap: .55rem; max-width: 100%; padding: .5rem .9rem; border-radius: 12px; background: var(--flaeche); border: 1px solid var(--rand); color: var(--text); font-weight: 600; font-size: .92rem; transition: border-color .2s, background .2s; }
.um-meine a:hover { border-color: rgba(255, 198, 26, .45); background: var(--flaeche-2); color: #fff; }
.um-meine a i { color: var(--gelb); }
.um-meine a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.um-meine a small { color: var(--text-3); font-weight: 600; white-space: nowrap; }

.um-arten { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem; margin: 0 0 1.3rem; padding: 0; border: 0; }
.um-arten legend, .um-segment legend { margin-bottom: .5rem; padding: 0; color: var(--text-2); font-weight: 600; font-size: .9rem; }
.um-art { position: relative; cursor: pointer; }
.um-art input { position: absolute; opacity: 0; pointer-events: none; }
.um-art > span { display: grid; gap: .25rem; height: 100%; padding: .9rem .95rem; border-radius: 16px; border: 1px solid var(--rand-2); background: var(--flaeche); transition: border-color .2s, background .2s, transform .3s var(--feder); }
.um-art i { color: var(--text-2); font-size: 1.2rem; margin-bottom: .2rem; transition: color .2s; }
.um-art b { color: #fff; font-size: .98rem; }
.um-art small { color: var(--text-3); font-size: .8rem; line-height: 1.4; }
.um-art:hover > span { border-color: rgba(255, 198, 26, .4); }
.um-art input:checked + span { border-color: var(--gelb); background: rgba(255, 198, 26, .09); box-shadow: 0 0 0 3px rgba(255, 198, 26, .12); }
.um-art input:checked + span i { color: var(--gelb); }
.um-art input:focus-visible + span { outline: 2px solid var(--gelb); outline-offset: 3px; }
@media (max-width: 620px) { .um-arten { grid-template-columns: minmax(0, 1fr); } .um-art > span { grid-template-columns: auto 1fr; column-gap: .8rem; } .um-art i { grid-row: span 2; align-self: center; margin: 0; width: 1.6rem; text-align: center; } }

/* Optionen */
.um-optionen { margin: 0 0 1.2rem; }
.um-optionen-kopf { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem; margin-bottom: .5rem; color: var(--text-2); font-weight: 600; font-size: .9rem; }
.um-zeilen { display: grid; grid-template-columns: minmax(0, 1fr); gap: .5rem; margin: 0 0 .6rem; padding: 0; list-style: none; counter-reset: z; }
.um-zeile { min-width: 0; display: flex; gap: .45rem; align-items: center; counter-increment: z; }
.um-zeile::before { content: counter(z); flex: none; width: 1.6rem; color: var(--text-3); font-weight: 700; font-size: .85rem; text-align: center; }
.um-zeile input { min-width: 0; padding: .7rem .85rem; border-radius: 12px; border: 1px solid var(--rand-2); background: rgba(0, 0, 0, .25); color: #fff; font: 500 15.5px 'Exo 2', sans-serif; color-scheme: dark; transition: border-color .2s, box-shadow .2s; }
.um-zeile input:focus { outline: 0; border-color: var(--gelb); box-shadow: 0 0 0 4px rgba(255, 198, 26, .15); }
.um-zeile input::placeholder { color: var(--text-3); }
.um-zeile .um-text { flex: 1; }
.um-zeile .um-datum { flex: 0 1 9.6rem; }
.um-zeile .um-datum.leer { color: var(--text-3); }
.um-zeile .um-zeit { flex: 0 1 11rem; }
.um-optionen[data-art="termin"] .um-text { flex: 1 1 8rem; }
.um-weg { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border: 0; border-radius: 10px; background: none; color: var(--text-3); cursor: pointer; transition: background .2s, color .2s; }
.um-weg:hover { background: rgba(251, 113, 133, .12); color: var(--rot); }
@media (max-width: 620px) {
    .um-optionen[data-art="termin"] .um-zeile { flex-wrap: wrap; padding: .55rem; border-radius: 14px; background: var(--flaeche); border: 1px solid var(--rand); }
    .um-optionen[data-art="termin"] .um-zeile::before { display: none; }
    .um-optionen[data-art="termin"] .um-datum, .um-optionen[data-art="termin"] .um-zeit { flex: 1 1 40%; }
    .um-optionen[data-art="termin"] .um-text { flex: 1 1 60%; }
}
.um-mini { display: inline-flex; align-items: center; gap: .45rem; padding: .45rem .8rem; border: 1px dashed var(--rand-2); border-radius: 10px; background: none; color: var(--text-2); font: 600 14px 'Exo 2', sans-serif; cursor: pointer; transition: border-color .2s, color .2s, background .2s; }
.um-mini:hover { border-color: var(--gelb); color: #fff; background: rgba(255, 198, 26, .06); }

/* Mini-Kalender zur Mehrfachauswahl von Tagen */
.um-kalender { margin: .2rem 0 .8rem; padding: .9rem; border-radius: 16px; background: rgba(0, 0, 0, .22); border: 1px solid var(--rand); }
.um-kal-kopf { display: flex; align-items: center; justify-content: space-between; margin-bottom: .6rem; font-weight: 700; }
.um-kal-kopf button { width: 34px; height: 34px; border: 0; border-radius: 10px; background: var(--flaeche-2); color: #fff; cursor: pointer; }
.um-kal-kopf button:disabled { opacity: .3; cursor: default; }
.um-kal-raster { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .25rem; text-align: center; }
.um-kal-raster > span { color: var(--text-3); font-size: .74rem; font-weight: 700; text-transform: uppercase; padding-bottom: .2rem; }
.um-kal-raster button { aspect-ratio: 1; max-height: 44px; border: 1px solid transparent; border-radius: 10px; background: var(--flaeche); color: var(--text); font: 600 14px 'Exo 2', sans-serif; cursor: pointer; transition: background .15s, border-color .15s, color .15s; }
.um-kal-raster button:hover:not(:disabled) { border-color: rgba(255, 198, 26, .5); }
.um-kal-raster button[aria-pressed="true"] { background: var(--gelb); color: #111; }
.um-kal-raster button:disabled { opacity: .25; cursor: default; }
.um-kal-raster button.heute { border-color: var(--rand-2); }
.um-kal-fuss { display: flex; justify-content: space-between; align-items: center; gap: .6rem; margin-top: .7rem; color: var(--text-3); font-size: .85rem; }

/* Einstellungen */
.um-einstellungen { display: grid; gap: .9rem; padding-top: 1.2rem; border-top: 1px solid var(--rand); }
.um-einstellungen .ueber { margin: 0; }
.um-einstellungen .t-feld, .um-einstellungen .t-zwei { margin: 0; }
.um-einstellungen .t-klein { margin: 0; }
.um-segment { display: flex; flex-wrap: wrap; gap: .35rem; margin: 0; padding: 0; border: 0; }
.um-segment legend { width: 100%; }
.um-segment label { position: relative; cursor: pointer; }
.um-segment input { position: absolute; opacity: 0; pointer-events: none; }
.um-segment span { display: inline-block; padding: .5rem .9rem; border-radius: 99px; border: 1px solid var(--rand); background: var(--flaeche); color: var(--text-2); font-weight: 600; font-size: .92rem; transition: all .2s; }
.um-segment input:checked + span { background: var(--gelb); border-color: var(--gelb); color: #111; }
.um-segment input:focus-visible + span { outline: 2px solid var(--gelb); outline-offset: 2px; }
.um-segment:disabled { opacity: .6; }
.um-max input { max-width: 8rem; }
.um-schalter { display: flex; align-items: flex-start; gap: .8rem; cursor: pointer; }
.um-schalter input { position: absolute; opacity: 0; pointer-events: none; }
.um-schalter-bahn { flex: none; position: relative; width: 44px; height: 26px; margin-top: .1rem; border-radius: 99px; background: rgba(255, 255, 255, .14); transition: background .25s; }
.um-schalter-bahn::after { content: ''; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: transform .3s var(--feder); }
.um-schalter input:checked + .um-schalter-bahn { background: var(--gelb); }
.um-schalter input:checked + .um-schalter-bahn::after { transform: translateX(18px); }
.um-schalter input:focus-visible + .um-schalter-bahn { outline: 2px solid var(--gelb); outline-offset: 3px; }
.um-schalter b { display: block; color: #fff; font-size: .96rem; }
.um-schalter small { display: block; color: var(--text-3); font-size: .84rem; }
.um-chips { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem; margin-top: -.4rem; }
.um-chips span { color: var(--text-3); font-size: .84rem; margin-right: .2rem; }
.um-chips button { padding: .3rem .7rem; border: 1px solid var(--rand); border-radius: 99px; background: none; color: var(--text-2); font: 600 13px 'Exo 2', sans-serif; cursor: pointer; transition: all .2s; }
.um-chips button:hover { border-color: var(--gelb); color: #fff; }
input[type="datetime-local"] { color-scheme: dark; }

.um-haken { display: flex; gap: .7rem; align-items: flex-start; margin: 0 0 1.1rem; color: var(--text-2); font-size: .88rem; line-height: 1.5; cursor: pointer; }
.um-haken input { flex: none; width: 20px; height: 20px; margin: .1rem 0 0; accent-color: var(--gelb); }

.um-schritte { list-style: none; margin: 0; padding: 0; counter-reset: s; display: grid; gap: 1rem; }
.um-schritte li { counter-increment: s; position: relative; display: grid; padding-left: 3rem; }
.um-schritte li::before { content: counter(s); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--flaeche-2); border: 1px solid var(--rand-2); color: var(--gelb); font-weight: 800; }
.um-schritte b { color: #fff; }
.um-schritte span { color: var(--text-2); font-size: .92rem; }
.um-liste-haken { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; color: var(--text-2); font-size: .93rem; }
.um-liste-haken i { width: 1.2rem; color: var(--gruen); }
.um-liste-haken em { font-style: normal; color: #fff; font-weight: 700; }

/* ---------- Umfrage ---------- */
.um-kopfzeile { display: flex; flex-wrap: wrap; gap: .4rem; margin: .4rem 0 1rem; }
.um-beschreibung { max-width: 760px; color: var(--text); font-size: 1.05rem; }
.um-ersteller { display: flex; gap: .6rem; max-width: 760px; margin: 0 0 1.8rem; color: var(--text-3); font-size: .84rem; line-height: 1.55; }
.um-ersteller > i { margin-top: .22rem; }
.um-ersteller b { color: var(--text-2); word-break: break-all; }
.um-ersteller a { color: var(--text-2); text-decoration: underline; text-underline-offset: 2px; }
.um-ok { color: var(--gruen); font-size: .85em; }
.um-raster { grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr); }
@media (max-width: 860px) { .um-raster { grid-template-columns: minmax(0, 1fr); } }
.um-raster > div > .t-karte + .t-karte, .um-raster > div > form + .t-karte { margin-top: 16px; }
.um-seite > * + * { margin-top: 16px; }

.um-leer { max-width: 620px; margin: 2rem auto; text-align: center; display: grid; justify-items: center; gap: .3rem; }
.um-leer .t-symbol { margin-bottom: .6rem; }
.um-leer h1 { font-size: clamp(1.7rem, 4vw, 2.3rem); }
.um-leer p { color: var(--text-2); }

/* Option: Datum als Kachel */
.um-wahl-titel { display: flex; align-items: center; gap: .8rem; min-width: 0; }
.um-tag { flex: none; display: grid; justify-items: center; width: 52px; padding: .3rem 0 .35rem; border-radius: 12px; background: rgba(255, 255, 255, .06); border: 1px solid var(--rand-2); line-height: 1.1; }
.um-tag small { color: var(--text-3); font-size: .66rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.um-tag small:first-child { color: var(--gelb); }
.um-tag b { color: #fff; font-size: 1.3rem; font-weight: 800; }
.um-tag.klein { width: 44px; padding: .2rem 0; }
.um-tag.klein b { font-size: 1.05rem; }
.um-opt-text { display: grid; min-width: 0; overflow-wrap: anywhere; color: #fff; font-weight: 600; }
.um-opt-text b { font-weight: 700; }
.um-opt-text small { color: var(--text-2); font-weight: 500; font-size: .86rem; }

/* Abstimmen: Ja / Vielleicht / Nein */
.um-legende { display: flex; flex-wrap: wrap; gap: 1rem; margin: -.4rem 0 .8rem; }
.um-legende .j i { color: var(--gruen); } .um-legende .v i { color: var(--gelb); } .um-legende .n i { color: var(--text-2); }
.um-wahl-liste { list-style: none; margin: 0 0 .8rem; padding: 0; display: grid; gap: .5rem; }
.um-wahl { display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: .6rem .6rem .6rem .8rem; border-radius: 16px; background: rgba(255, 255, 255, .035); border: 1px solid var(--rand); transition: border-color .2s, background .2s; }
.um-wahl:has(input[value="j"]:checked) { border-color: rgba(52, 211, 153, .45); background: rgba(52, 211, 153, .06); }
.um-wahl:has(input[value="v"]:checked) { border-color: rgba(255, 198, 26, .45); background: rgba(255, 198, 26, .05); }
.um-drei { flex: none; display: flex; gap: .3rem; }
.um-drei label { position: relative; cursor: pointer; }
.um-drei input { position: absolute; opacity: 0; pointer-events: none; }
.um-drei span { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 12px; border: 1px solid var(--rand-2); background: rgba(0, 0, 0, .2); color: var(--text-3); font-size: 1.05rem; transition: all .2s, transform .3s var(--feder); }
.um-drei em { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.um-drei label:hover span { color: #fff; border-color: rgba(255, 255, 255, .3); }
.um-drei input:focus-visible + span { outline: 2px solid var(--gelb); outline-offset: 2px; }
.um-drei .j input:checked + span { background: var(--gruen); border-color: var(--gruen); color: #05291c; transform: scale(1.06); }
.um-drei .v input:checked + span { background: var(--gelb); border-color: var(--gelb); color: #111; transform: scale(1.06); }
.um-drei .n input:checked + span { background: rgba(255, 255, 255, .22); border-color: rgba(255, 255, 255, .4); color: #fff; transform: scale(1.06); }
@media (max-width: 460px) { .um-wahl { flex-wrap: wrap; } .um-drei { width: 100%; } .um-drei label { flex: 1; } .um-drei span { width: 100%; } }
.um-alle { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem; margin-bottom: 1.2rem; color: var(--text-3); font-size: .85rem; }
.um-alle button { padding: .25rem .65rem; border: 1px solid var(--rand); border-radius: 99px; background: none; color: var(--text-2); font: 600 13px 'Exo 2', sans-serif; cursor: pointer; }
.um-alle button:hover { border-color: var(--gelb); color: #fff; }

/* Abstimmen: eine / mehrere Stimmen */
.um-karten-wahl { list-style: none; margin: 0 0 1.2rem; padding: 0; display: grid; gap: .5rem; }
.um-karten-option { position: relative; display: flex; align-items: center; gap: .85rem; padding: .85rem 1rem; border-radius: 16px; border: 1px solid var(--rand); background: rgba(255, 255, 255, .035); cursor: pointer; transition: border-color .2s, background .2s; }
.um-karten-option:hover { border-color: rgba(255, 198, 26, .4); }
.um-karten-option input { position: absolute; opacity: 0; pointer-events: none; }
.um-marke { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; border: 2px solid var(--rand-2); transition: all .2s; }
.um-karten-option input[type="checkbox"] + .um-marke { border-radius: 7px; }
.um-karten-option input:checked + .um-marke { border-color: var(--gelb); background: var(--gelb); }
.um-karten-option input:checked + .um-marke::after { content: '\f00c'; font: 900 12px 'Font Awesome 6 Free'; color: #111; }
.um-karten-option:has(input:checked) { border-color: var(--gelb); background: rgba(255, 198, 26, .07); }
.um-karten-option:has(input:focus-visible) { outline: 2px solid var(--gelb); outline-offset: 2px; }
.um-karten-wahl.voll .um-karten-option:has(input:not(:checked)) { opacity: .5; }

.um-name { margin-top: .2rem; }
.um-geheim-hinweis { display: flex; gap: .6rem; margin: 0 0 1.1rem; color: var(--text-2); font-size: .88rem; }
.um-geheim-hinweis i { margin-top: .2rem; color: var(--gelb); }
.um-zurueckziehen { margin: .6rem 0 0; text-align: right; }
.um-zurueckziehen button, .um-text-knopf { display: inline-flex; align-items: center; gap: .4rem; padding: .3rem .4rem; border: 0; background: none; color: var(--text-3); font: 600 13.5px 'Exo 2', sans-serif; cursor: pointer; }
.um-zurueckziehen button:hover, .um-text-knopf:hover { color: #fff; }
.um-text-knopf.rot:hover, .um-zurueckziehen button:hover { color: var(--rot); }

/* Ergebnis */
.um-verdeckt { display: flex; gap: .6rem; align-items: center; margin: 0; padding: 1.1rem; border-radius: 14px; background: rgba(0, 0, 0, .2); color: var(--text-2); }
.um-balken-liste { list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem; }
.um-balken-kopf { display: flex; align-items: center; justify-content: space-between; gap: .8rem; margin-bottom: .4rem; }
.um-zahl { flex: none; color: var(--text-2); font-size: .88rem; white-space: nowrap; }
.um-zahl b { color: #fff; font-size: 1rem; }
.um-zahl .fa-crown { color: var(--gelb); }
.um-balken { display: flex; gap: 2px; height: 10px; border-radius: 99px; background: rgba(255, 255, 255, .07); overflow: hidden; }
.um-balken span { width: var(--anteil); border-radius: 99px; transition: width .9s var(--kurve); }
.um-balken .j { background: var(--gruen); }
.um-balken .v { background: repeating-linear-gradient(135deg, var(--gelb) 0 4px, #d9a50c 4px 8px); }
.um-balken span[style*="--anteil:0%"] { display: none; }
.js .um-ergebnis:not(.gezeigt) .um-balken span { width: 0; }
.um-balken-liste li.beste .um-balken .j { box-shadow: 0 0 14px rgba(52, 211, 153, .5); }

.um-tabelle-auf { margin-top: 1.4rem; border-top: 1px solid var(--rand); padding-top: 1rem; }
.um-tabelle-auf summary { display: inline-flex; align-items: center; gap: .5rem; color: var(--text-2); font-weight: 700; cursor: pointer; list-style: none; }
.um-tabelle-auf summary::-webkit-details-marker { display: none; }
.um-tabelle-auf summary::after { content: '\f078'; font: 900 11px 'Font Awesome 6 Free'; transition: transform .25s; }
.um-tabelle-auf[open] summary::after { transform: rotate(180deg); }
.um-tabelle-rahmen { position: relative; margin-top: .9rem; overflow-x: auto; border-radius: 14px; border: 1px solid var(--rand); }
.um-tabelle { width: 100%; border-collapse: collapse; font-size: .9rem; }
.um-tabelle th, .um-tabelle td { padding: .55rem .6rem; border-bottom: 1px solid var(--rand); text-align: center; }
.um-tabelle thead th { vertical-align: bottom; background: rgba(0, 0, 0, .2); font-weight: 600; }
.um-tabelle thead th .um-opt-text { font-size: .8rem; font-weight: 600; }
.um-tabelle thead th .um-opt-text small { display: none; }
.um-tabelle thead th:not(:first-child) { min-width: 64px; }
.um-tabelle thead th .um-tag { margin: 0 auto .25rem; }
.um-tabelle th[scope="row"], .um-tabelle thead th:first-child { position: sticky; left: 0; z-index: 1; min-width: 9rem; max-width: 14rem; text-align: left; background: #0d1230; color: #fff; overflow-wrap: anywhere; }
.um-tabelle th[scope="row"] small { color: var(--text-3); font-weight: 500; }
.um-tabelle .um-kommentar { display: block; margin-top: .15rem; color: var(--text-3); font-size: .78rem; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 13rem; }
.um-tabelle td.j { color: var(--gruen); background: rgba(52, 211, 153, .1); }
.um-tabelle td.v { color: var(--gelb); background: rgba(255, 198, 26, .08); }
.um-tabelle td.n { color: var(--text-3); }
.um-tabelle td span { color: var(--text-3); }
.um-tabelle tr.ich th[scope="row"] { box-shadow: inset 3px 0 0 var(--gelb); }
.um-tabelle .beste { box-shadow: inset 0 3px 0 var(--gelb); }
.um-tabelle tfoot td.beste, .um-tabelle tbody td.beste { box-shadow: none; }
.um-tabelle tfoot th, .um-tabelle tfoot td { border-bottom: 0; background: rgba(0, 0, 0, .2); }
.um-tabelle tfoot th[scope="row"] { background: #0b0f29; }
.um-tabelle tfoot td b { color: #fff; }
.um-tabelle tfoot td.beste b { color: var(--gelb); }
.um-tabelle tfoot small { display: block; color: var(--text-3); font-size: .75rem; }
.um-aus button { border: 0; background: none; color: var(--text-3); cursor: pointer; padding: .2rem .4rem; border-radius: 8px; }
.um-aus button:hover { color: var(--rot); background: rgba(251, 113, 133, .1); }
.um-aus form { margin: 0; }

/* Teilen */
.um-link { display: flex; gap: .3rem; padding: .3rem; margin-bottom: .7rem; border-radius: 14px; background: rgba(0, 0, 0, .3); border: 1px solid var(--rand-2); }
.um-link input { flex: 1; min-width: 0; padding: .45rem .6rem; border: 0; background: none; color: var(--text); font: 500 14px ui-monospace, Menlo, monospace; }
.um-link input:focus { outline: 0; }
.um-link button { flex: none; display: inline-flex; align-items: center; gap: .4rem; padding: .45rem .8rem; border: 0; border-radius: 10px; background: var(--gelb); color: #111; font: 700 13.5px 'Exo 2', sans-serif; cursor: pointer; }
.um-teilen [data-teilen-system] { margin-bottom: .7rem; }
.um-kanaele { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .35rem; }
.um-kanaele a, .um-kanaele button { display: grid; justify-items: center; gap: .3rem; padding: .65rem .2rem .55rem; border: 1px solid var(--rand); border-radius: 14px; background: var(--flaeche); color: var(--text-2); font: 600 11.5px 'Exo 2', sans-serif; cursor: pointer; transition: border-color .2s, color .2s, transform .3s var(--feder); }
.um-kanaele i { font-size: 1.25rem; color: #fff; }
.um-kanaele a:hover, .um-kanaele button:hover { border-color: rgba(255, 198, 26, .45); color: #fff; transform: translateY(-2px); }
.um-kanaele [data-kanal="whatsapp"] i { color: #25d366; }
.um-kanaele [data-kanal="telegram"] i { color: #2aabee; }
.um-kanaele button[aria-expanded="true"] { border-color: var(--gelb); color: #fff; }
.um-qr { display: grid; justify-items: center; gap: .6rem; margin-top: .8rem; padding: 1rem; border-radius: 16px; background: rgba(0, 0, 0, .2); }
.um-qr img { width: 200px; height: 200px; border-radius: 12px; background: #fff; padding: 6px; }
.um-teilen-hinweis { display: flex; gap: .55rem; margin: 1rem 0 0; padding-top: .9rem; border-top: 1px solid var(--rand); color: var(--text-3); font-size: .8rem; line-height: 1.5; }
.um-teilen-hinweis i { margin-top: .2rem; }
.um-teilen-hinweis b { color: var(--text-2); word-break: break-all; }

/* Verwaltung */
.um-verwaltung { border-color: rgba(255, 198, 26, .3); }
.um-verwaltung .ueber i { margin-right: .3rem; }
.um-admin-knoepfe { display: flex; flex-wrap: wrap; gap: .45rem; margin: .8rem 0; }
.um-admin-knoepfe form { display: contents; }
.um-admin-knoepfe .t-knopf { flex: 1 1 auto; padding: .6rem .9rem; font-size: 14px; }
.um-admin-unten { display: flex; justify-content: space-between; gap: .5rem; padding-top: .6rem; border-top: 1px solid var(--rand); }
.um-admin-unten form { margin: 0; }
.um-anmelden summary { display: flex; align-items: center; gap: .55rem; color: var(--text-2); font-weight: 700; cursor: pointer; list-style: none; }
.um-anmelden summary::-webkit-details-marker { display: none; }
.um-anmelden summary i { color: var(--gelb); }
.um-anmelden form { margin-top: .9rem; }
.um-bearbeiten { margin-top: 24px; scroll-margin-top: 90px; border-color: rgba(255, 198, 26, .3); }
.um-bearbeiten h2 i { color: var(--gelb); font-size: .9em; margin-right: .3rem; }
.um-bearbeiten .t-hinweis { margin: 0 0 1rem; }

/* Bestätigen per zweitem Klick */
button.um-sicher { background: var(--rot) !important; color: #fff !important; }
