/* Farben und Schrift wie in der Dashboard-Vorlage (assets/dashboard.template.html). */
:root{
  /* ---- Gestaltungswerte: DIESELBEN Zeilen wie in app/vorlage/dashboard.template.html.
     tests/stiltest.php prüft, dass beide gleich bleiben. ---- */
  --font:'Plus Jakarta Sans','Helvetica Neue',Arial,sans-serif;
  --fs-2xs:11px; --fs-xs:12px; --fs-s:13px; --fs-m:14.5px; --fs-l:16px; --fs-xl:20px; --fs-2xl:24px; --fs-3xl:32px; --fs-4xl:40px;
  --fs-h2:22px; --fs-zahl:32px;
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px; --sp-6:24px; --sp-8:32px; --sp-10:40px; --sp-12:48px; --sp-16:64px;
  --r-xs:4px; --r-s:8px; --r-m:12px; --r-l:16px; --r-pill:999px;
  --bg:#f4f7fb; --surface:#fff; --text:#1b2637; --text-soft:#5a6b82; --text-mute:#64748b;
  --border:#e6ecf3; --border-soft:#eef2f8; --ink:#1b2637; --linie-stark:#d6dfea;
  --accent:#2a78d6; --accent-soft:#e9f2fd; --accent-deep:#1f5ea9; --accent-hell:#4b93e6;
  --teal:#1baf7a; --teal-soft:#e6f7f1;
  --gut:#1a7a43; --warn:#cc3333; --warn-soft:#fdecec;
  --radius:var(--r-l); --shadow:0 1px 2px rgba(27,38,55,.04), 0 14px 34px -26px rgba(27,38,55,.5);
  --shadow-lift:0 4px 10px rgba(27,38,55,.06), 0 22px 44px -26px rgba(27,38,55,.55);
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:var(--fs-m);line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh}
a{color:inherit}
button,input,select{font:inherit}

/* Anmeldung */
/* dvh: auf iOS ohne Sprung, wenn die Safari-Leiste ein- und ausfährt (Review 27.09.2026). */
.login{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--sp-6) var(--sp-4)}
.karte{background:var(--surface);border:0;border-radius:var(--r-l);box-shadow:var(--shadow-lift);padding:var(--sp-10) var(--sp-10);width:100%;max-width:430px}
.marke{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-8);text-decoration:none;color:var(--ink)}
.marke .logo{height:18px;width:auto;display:block}
.marke.gross .logo{height:24px}
.marke .zusatz{white-space:nowrap;font-size:var(--fs-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700;padding-left:var(--sp-3);border-left:1px solid var(--border);line-height:1.6}
h1{font-size:var(--fs-3xl);font-weight:800;letter-spacing:-.025em;line-height:1.2;margin-bottom:var(--sp-2)}
.leise{color:var(--text-soft);font-size:var(--fs-m)}
.mini{color:var(--text-mute);font-size:var(--fs-s)}
form.stapel{display:flex;flex-direction:column;gap:var(--sp-4);margin-top:var(--sp-6)}
label{font-size:var(--fs-s);color:var(--text-soft);font-weight:500}
input[type=email],input[type=text],input[type=password],input[type=date]{width:100%;padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-radius:var(--r-m);background:#fff;font-size:var(--fs-l);color:var(--text)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
input.code,input[type=text].code{font-family:ui-monospace,Menlo,Consolas,monospace;letter-spacing:.18em;text-transform:uppercase;text-align:center;font-size:var(--fs-xl)}
.knopf{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-5);border-radius:var(--r-m);border:0;background:linear-gradient(180deg,var(--accent-hell) 0%,var(--accent) 100%);color:#fff;font-weight:700;font-size:var(--fs-m);cursor:pointer;text-decoration:none;box-shadow:0 8px 18px -10px rgba(42,120,214,.9)}
.knopf:hover{filter:brightness(1.05)}
.knopf.hell{background:var(--surface);color:var(--text-soft);border:1px solid var(--border);box-shadow:none}
.knopf.hell:hover{color:var(--text);border-color:var(--text-mute);filter:none}
.knopf.hell.gefahr:hover{color:#b91c1c;border-color:#b91c1c;background:#fef2f2}
.fehler{background:var(--warn-soft);color:#8c2020;border-radius:var(--r-m);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-m)}
.fuss{margin-top:var(--sp-6);font-size:var(--fs-xs);color:var(--text-mute);display:flex;gap:var(--sp-4);flex-wrap:wrap}
.fuss a{color:var(--text-mute)}

/* Kopfzeile über jedem Board */
.kopf{position:sticky;top:0;z-index:50;background:var(--surface);color:var(--text);display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-6);min-height:64px;flex-wrap:wrap;box-shadow:0 1px 0 var(--border)}
.kopf .marke{margin:0;color:var(--text)}
.kopf .marke .logo{height:17px}
.kopf .marke .zusatz{border-left-color:var(--border)}
.kopf .platz{flex:1}
.kopf select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--r-m);padding:var(--sp-3) var(--sp-10) var(--sp-3) var(--sp-4);max-width:340px;min-width:0;appearance:none;font-weight:600;font-size:var(--fs-m);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235a6b82' stroke-width='2.4'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center}
.kopf select option{color:var(--text)}
.kopf .wer{font-size:var(--fs-m);color:var(--text-soft);font-weight:600}
.kopf form{display:inline}
.kopf .knopf{padding:var(--sp-2) var(--sp-4);font-size:var(--fs-s)}
.kopf .knopf:hover{filter:brightness(1.05)}
.kopf a.link{font-size:var(--fs-m);font-weight:600;color:var(--text-soft);text-decoration:none}
.kopf a.link:hover{color:var(--text)}

.inhalt{max-width:1100px;margin:0 auto;padding:var(--sp-10) var(--sp-5)}
.liste{margin-top:var(--sp-6);display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--sp-4)}
.eintrag{display:block;background:var(--surface);border:0;border-radius:var(--radius);padding:var(--sp-5) var(--sp-6);text-decoration:none;box-shadow:var(--shadow);transition:.15s}
.eintrag:hover{box-shadow:var(--shadow-lift);transform:translateY(-1px)}
.eintrag b{display:block;font-weight:700;font-size:var(--fs-l);letter-spacing:-.01em}
.eintrag span{font-size:var(--fs-s);color:var(--text-mute)}
.eintrag.aus{opacity:.55}
.suche{margin-top:var(--sp-5);max-width:360px}
.marke-aus{display:inline-block;font-size:var(--fs-2xs);font-weight:700;background:var(--warn-soft);color:#8c2020;padding:2px var(--sp-2);border-radius:var(--r-s);margin-left:var(--sp-2)}

@media (max-width:600px){
  .karte{padding:var(--sp-8) var(--sp-6)}
  .kopf{padding:var(--sp-3) var(--sp-4);gap:var(--sp-3)}
  .kopf .wer{display:none}
  .kopf select{order:5;flex:1 1 100%;max-width:none}
}

/* Verwaltung */
.inhalt.breit{max-width:1240px}
.reiterleiste{display:flex;gap:var(--sp-1);margin-bottom:var(--sp-6);overflow-x:auto;background:var(--surface);border-radius:var(--r-l);padding:var(--sp-1);box-shadow:var(--shadow);scrollbar-width:none}
.reiterleiste a{padding:var(--sp-3) var(--sp-4);text-decoration:none;color:var(--text-soft);font-weight:600;font-size:var(--fs-m);border-radius:var(--r-m);white-space:nowrap}
.reiterleiste a.hier{background:var(--accent);color:#fff;font-weight:700}
.kopfzeile{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--sp-4);flex-wrap:wrap;margin-bottom:var(--sp-3)}
.knopfreihe form{display:flex;gap:var(--sp-2);flex-wrap:wrap}
.erfolg{background:var(--teal-soft);color:#12603f;border-radius:var(--r-m);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-m);margin-bottom:var(--sp-5)}
.inhalt > .fehler{margin-bottom:var(--sp-5)}
.gruen{color:var(--gut)}.rot{color:var(--warn)}
.punkt{display:inline-block;width:9px;height:9px;border-radius:50%;vertical-align:middle}
.punkt.gruen{background:var(--gut)}.punkt.rot{background:var(--warn)}
.tabelle-rahmen{overflow-x:auto;background:var(--surface);border:0;border-radius:var(--radius);margin:var(--sp-4) 0;box-shadow:var(--shadow)}
.tabelle{width:100%;border-collapse:collapse;font-size:var(--fs-m)}
.tabelle th{text-align:left;font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);font-weight:700;padding:var(--sp-4) var(--sp-4);border-bottom:1px solid var(--border)}
.tabelle td{padding:var(--sp-4) var(--sp-4);border-bottom:1px solid var(--border-soft);vertical-align:top;font-weight:600}
.tabelle tr:last-child td{border-bottom:0}
.tabelle tr.aus{opacity:.6}
.tabelle tr.warn td{background:var(--warn-soft)}
.tabelle.kompakt td,.tabelle.kompakt th{padding:var(--sp-2) var(--sp-3)}
.tabelle a{color:inherit}
.aktionen{white-space:nowrap;text-align:right}
.aktionen form{display:inline-flex;gap:var(--sp-2);flex-wrap:wrap;justify-content:flex-end;align-items:center}
/* Einladungen (27.09.2026): alle Zellen mittig, Knöpfe mit Abstand */
.ei-tabelle td{vertical-align:middle}
.ei-link{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap}
.knopf.klein{padding:var(--sp-2) var(--sp-3);font-size:var(--fs-s);border-radius:var(--r-m);box-shadow:none}
.karte-breit{background:var(--surface);border:0;border-radius:var(--radius);padding:var(--sp-6) var(--sp-6);margin:var(--sp-5) 0;box-shadow:var(--shadow)}
.karte-breit h2{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.01em;margin-bottom:var(--sp-3)}
.reihe{display:flex;gap:var(--sp-3);flex-wrap:wrap;align-items:flex-end;margin-top:var(--sp-3)}
.reihe.eng{gap:var(--sp-1);margin-top:var(--sp-2)}
.reihe label{display:flex;flex-direction:column;gap:var(--sp-1);flex:1 1 180px}
.stapel label{display:flex;flex-direction:column;gap:var(--sp-1)}
input[type=text],input[type=email],input[type=password],input[type=date],select,textarea{padding:var(--sp-3) var(--sp-3);border:1px solid var(--border);border-radius:var(--r-m);background:#fff;font-size:max(16px, var(--fs-m));color:var(--text);font-family:inherit}
textarea{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:max(16px, var(--fs-s));line-height:1.5;width:100%}
fieldset.module{border:1px solid var(--border);border-radius:var(--r-m);padding:var(--sp-3) var(--sp-4);display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);flex:1 1 100%}
fieldset.module legend{font-size:var(--fs-s);color:var(--text-soft);padding:0 var(--sp-1)}
label.check{flex-direction:row !important;align-items:center;gap:var(--sp-2) !important;font-size:var(--fs-m);color:var(--text)}
label.check[hidden]{display:none}
ul.haken{list-style:none;display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-5);margin:var(--sp-2) 0 var(--sp-3)}
.karte-breit ul{margin-left:var(--sp-5)}
code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.9em;background:var(--border-soft);padding:1px var(--sp-1);border-radius:var(--r-xs)}
pre.log{background:#16233a;color:#e8e8e8;padding:var(--sp-4);border-radius:var(--r-m);font-size:var(--fs-xs);overflow-x:auto;margin-top:var(--sp-2);max-height:360px}
.umbruch{word-break:break-word;max-width:520px}
.inhalt h1{margin-bottom:var(--sp-2)}
@media (max-width:600px){ .aktionen{text-align:left} .aktionen form{justify-content:flex-start} .karte-breit{padding:var(--sp-5) var(--sp-4)} }
.karte-breit .knopf{align-self:flex-start}
.meldungen{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:var(--fs-xs);line-height:1.5;word-break:break-word}
.meldungen li{margin:var(--sp-2) 0}
.inhalt.schmal{max-width:560px}
.label{font-weight:600;font-size:var(--fs-m)}
.logo-arten{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);margin-bottom:var(--sp-2)}
@media(max-width:600px){.logo-arten{grid-template-columns:1fr}.marke .zusatz{letter-spacing:.06em;padding-left:var(--sp-2)}}
.logo-art{display:flex;flex-direction:column;gap:var(--sp-1);border:2px solid var(--border);border-radius:var(--radius);padding:var(--sp-3);background:#fff;cursor:pointer;font-weight:400}
.logo-art:has(input:checked){border-color:var(--accent)}
.logo-art input{position:absolute;opacity:0;pointer-events:none}
.logo-art strong{font-size:var(--fs-m);margin-top:var(--sp-2)}
.logo-art small{color:#6b6b6b;font-size:var(--fs-xs);line-height:1.4}
.logo-probe{display:flex;align-items:center;min-height:96px;border-radius:var(--r-m);padding:var(--sp-5)}
.logo-probe.dunkel{background:#16233a}
.logo-probe.hell{background:var(--bg);border:1px solid var(--border)}
.logo-probe .kachel-dunkel{display:flex;align-items:center;justify-content:flex-start;background:#1b2637;border-radius:var(--r-m);padding:var(--sp-3) var(--sp-4);min-height:58px;width:100%}
.logo-probe .kachel-dunkel b{color:#fff}
.logo-probe .flaeche{justify-content:flex-start}
.logo-probe img{max-height:44px;max-width:100%;display:block}
.logo-probe b{color:#fff;font-size:var(--fs-l)}
.logo-probe .flaeche{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:var(--r-m);padding:var(--sp-3) var(--sp-4);min-height:58px;width:100%}
.logo-probe .flaeche b{color:#1f1f1f}
input[type=file]{padding:var(--sp-3);border:1px dashed var(--border);border-radius:var(--r-m);background:#fff}

/* KI-Fragen */
.kf-hinweis{background:var(--accent-soft);border:0;border-radius:var(--r-l);padding:var(--sp-4) var(--sp-4);font-size:var(--fs-m);line-height:1.55;color:#15406e}
.kf-liste{margin:var(--sp-5) 0 0 var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-2);font-size:var(--fs-m)}
.kf-warnung{background:var(--warn-soft);color:#8c2020;border-radius:var(--r-l);padding:var(--sp-4) var(--sp-4);font-size:var(--fs-m);line-height:1.55}
.stapel .kf-check{flex-direction:row;align-items:flex-start;gap:var(--sp-3);margin-top:var(--sp-3);font-weight:500;color:var(--text)}
.kf-check input{margin-top:var(--sp-1);flex:none;width:18px;height:18px}
.tabelle-scroll{overflow-x:auto}
.tabelle .r{text-align:right}

/* Kosten (/admin/kosten) */
.ko-kopf{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--sp-4);flex-wrap:wrap;margin-bottom:var(--sp-2)}
.ko-monate{display:flex;gap:var(--sp-2);flex-wrap:wrap}
.ko-monate a{text-decoration:none;font-size:var(--fs-m);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-soft)}
.ko-monate a.hier{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}
.ko-kacheln{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--sp-4);margin:var(--sp-5) 0}
.ko-kachel{background:var(--surface);border:0;border-radius:var(--radius);padding:var(--sp-5) var(--sp-5);box-shadow:var(--shadow)}
.ko-kachel.ko-haupt{background:var(--accent-soft)}
.ko-label{font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);font-weight:600}
.ko-zahl{font-size:var(--fs-3xl);font-weight:700;letter-spacing:-.02em;line-height:1.2;margin-top:var(--sp-2);font-variant-numeric:tabular-nums}
.ko-zahl small{font-size:var(--fs-s);color:var(--text-mute);font-weight:400}
.ko-klein{font-size:var(--fs-s);margin-top:var(--sp-1)}
.ko-hoch{color:var(--warn)} .ko-runter{color:var(--gut)}
.ko-leiste{height:6px;border-radius:var(--r-xs);background:var(--border-soft);margin-top:var(--sp-3);overflow:hidden}
.ko-leiste span{display:block;height:100%;background:var(--accent);border-radius:var(--r-xs)}
.ko-leiste span.ko-warn{background:var(--warn)}
/* Zwei Spalten ab genug Breite, sonst untereinander: die Tabelle „Je Kunde“ braucht rund 620 px (Review 27.09.2026). */
.ko-raster{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(640px,100%),1fr));gap:var(--sp-5);align-items:start}
.ko-raster .karte-breit{margin:0}
@media (max-width:820px){ .ko-raster{grid-template-columns:minmax(0,1fr)} }
.ko-tab td,.ko-tab th{vertical-align:middle}
.ko-tab tfoot th{border-top:2px solid var(--border);padding-top:var(--sp-3);font-variant-numeric:tabular-nums}
.ko-tab .r{font-variant-numeric:tabular-nums;white-space:nowrap}
.ko-balkenzelle > div{display:flex;align-items:center;gap:var(--sp-3);min-width:0}
@media (max-width:600px){ .ko-balkenzelle .ko-balken{display:none} }
.ko-balkenzelle strong{font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums;min-width:64px;text-align:right}
.ko-balken{flex:1;height:8px;border-radius:var(--r-xs);background:var(--border-soft);overflow:hidden;min-width:32px;display:block}
.ko-balken span{display:block;height:100%;background:var(--accent);border-radius:var(--r-xs)}
.ko-ohne td{color:var(--text-mute)}
.ko-ohne .ko-balken span{background:var(--text-mute)}
.ko-zwecke{list-style:none;margin:0 !important;display:flex;flex-direction:column;gap:var(--sp-3)}
.ko-zwecke li{display:grid;grid-template-columns:minmax(0,160px) minmax(40px,1fr) auto;gap:var(--sp-3);align-items:center;font-size:var(--fs-m)}
.ko-zwecke .ko-balken span{background:var(--teal)}
.ko-zbetrag{font-variant-numeric:tabular-nums;white-space:nowrap}
.ko-kunde{border-top:1px solid var(--border-soft)}
.ko-kunde:first-of-type{border-top:0}
.ko-kunde summary{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0;cursor:pointer;list-style:none;flex-wrap:wrap}
.ko-kunde summary::-webkit-details-marker{display:none}
.ko-kunde summary::before{content:'›';display:inline-block;width:12px;color:var(--text-mute);transition:transform .15s}
.ko-kunde[open] summary::before{transform:rotate(90deg)}
.ko-kname{font-weight:500}
.ko-teile{display:flex;gap:var(--sp-2);flex-wrap:wrap;flex:1}
.ko-chip{font-size:var(--fs-xs);font-weight:600;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-s);background:var(--accent-soft);color:var(--accent-deep)}
.ko-chip.ko-frei{background:var(--border-soft);color:var(--text-mute)}
.ko-ksumme{font-weight:500;font-variant-numeric:tabular-nums}
.ko-kunde .tabelle-scroll{margin:0 0 var(--sp-3) var(--sp-6)}
.ko-kunde > .mini{margin:0 0 var(--sp-3) var(--sp-6)}
.ko-extra summary{cursor:pointer;list-style:none}
.ko-extra summary::-webkit-details-marker{display:none}
.ko-extra summary h2{display:inline;margin:0}
.ko-extra summary::after{content:' ›';color:var(--text-mute)}
.ko-extra h3{font-size:var(--fs-m);font-weight:500;margin:var(--sp-5) 0 var(--sp-2)}
@media (max-width:600px){
  .ko-kacheln{grid-template-columns:1fr 1fr;gap:var(--sp-3)}
  .ko-kachel{padding:var(--sp-3) var(--sp-4)}
  .ko-kachel.ko-haupt{grid-column:1 / -1}
  .ko-zahl{font-size:var(--fs-xl)}
  .ko-zahl small{display:block}
  .ko-balkenzelle{min-width:0;gap:var(--sp-2)}
  .ko-balkenzelle strong{min-width:0}
  .ko-balken{min-width:24px}
  .ko-tab th:nth-child(3),.ko-tab td:nth-child(3){display:none}
  .ko-zwecke li{grid-template-columns:minmax(90px,1fr) 1fr auto}
  .ko-kunde summary{flex-wrap:nowrap}
  .ko-teile{display:none}
  .ko-kname{flex:1}
  .ko-weg{display:none}
  .ko-kunde .tabelle-scroll,.ko-kunde > .mini{margin-left:0}
}

/* Zu pruefen: Zaehler im Menue, Uebersicht je Board, Sprung und Domainliste. */
.reiterleiste .zaehler{display:inline-block;min-width:19px;padding:1px var(--sp-2);margin-left:var(--sp-2);border-radius:var(--r-s);background:var(--warn);color:#fff;font-size:var(--fs-xs);font-weight:700;text-align:center;line-height:17px;vertical-align:1px}
.reiterleiste a.hier .zaehler{background:#fff;color:var(--accent)}
.fr-karte{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-5);flex-wrap:wrap}
.fr-karte h2{margin-bottom:2px}
.fr-karte .knopf{align-self:center;white-space:nowrap}
.fr-sprung{display:flex;align-items:baseline;gap:var(--sp-3);flex-wrap:wrap;margin:var(--sp-1) 0 var(--sp-3)}
.fr-sprung .alt{font-size:var(--fs-2xl);font-weight:700;color:var(--text-mute)}
.fr-sprung .pfeil{font-size:var(--fs-xl);color:var(--text-mute)}
.fr-sprung .neu{font-size:var(--fs-3xl);font-weight:800;letter-spacing:-.02em}
.fr-sprung .mehr{font-size:var(--fs-m);font-weight:700;color:#8c2020;background:var(--warn-soft);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-s)}
.fr-domains{list-style:none;margin:var(--sp-3) 0 0 !important;display:flex;flex-direction:column;gap:2px}
.fr-domains li{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-m)}
.fr-domains li:nth-child(odd){background:var(--border-soft)}
.fr-domains li > a{font-weight:600;word-break:break-all;min-height:28px;display:flex;align-items:center}
.fr-domains form{display:flex;gap:var(--sp-2);flex-shrink:0}
.fr-zurueck{display:inline-flex;align-items:center;min-height:28px;font-size:var(--fs-s);font-weight:600;color:var(--text-soft);text-decoration:none}
.fr-zurueck:hover{color:var(--accent)}
.fr-hinweis{margin-top:var(--sp-2)}
form.fr-tat{margin-top:var(--sp-4)}
.fr-titel{font-size:var(--fs-m);font-weight:700;margin-top:var(--sp-5)}
.fr-neu{list-style:none;margin:var(--sp-2) 0 0 !important;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(330px,100%),1fr));gap:2px var(--sp-8)}
.fr-neu li{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-1) 0;border-bottom:1px solid var(--border-soft)}
.fr-neu li > a{font-weight:600;word-break:break-all}
.fr-neu .mini{white-space:nowrap}
.fr-links{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-top:var(--sp-4)}

/* Außenabrufe (seit 24.09.2026): Zähler, „Braucht dich“, je Board eine Klappkarte */
.aa-zahlen{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.aa-zahlen .ko-zahl{font-size:var(--fs-2xl)}
.ko-kachel.aa-alarm{background:var(--warn-soft)}
.aa-alles-gut{color:var(--gut);font-weight:600}
.aa-ueber{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.01em;margin:var(--sp-8) 0 var(--sp-3)}
.karte-breit ul.aa-liste,.aa-liste{list-style:none;margin:0}
.aa-zeile{display:grid;grid-template-columns:12px minmax(150px,230px) 1fr auto;align-items:center;gap:var(--sp-2) var(--sp-4);padding:var(--sp-2) 0;border-bottom:1px solid var(--border-soft);min-height:48px}
.aa-zeile:last-child{border-bottom:0}
.aa-wer{font-weight:600}
.aa-wer b{font-weight:700}
.aa-text{min-width:0;overflow-wrap:anywhere}
.aa-text .mini{display:block}
.aa-punkt{width:10px;height:10px;border-radius:50%;background:var(--text-mute)}
.aa-punkt.s-ok{background:var(--gut)}
.aa-punkt.s-fehler{background:var(--warn)}
.aa-punkt.s-fehlt{background:transparent;border:2px solid var(--warn)}
.aa-punkt.s-wartet{background:transparent;border:2px solid var(--text-mute)}
.aa-punkt.s-pruefen{background:#e0a100}
.aa-neu{margin:0}
/* Der Knopf stoert nur, wo alles laeuft: dort erst beim Drueberfahren. Auf
   Geraeten ohne Maus und fuer die Tastatur bleibt er sichtbar. */
.aa-board .aa-zeile .aa-neu{opacity:0;transition:opacity .12s}
.aa-board .aa-zeile:hover .aa-neu,.aa-board .aa-zeile:focus-within .aa-neu{opacity:1}
@media (hover:none){ .aa-board .aa-zeile .aa-neu{opacity:1} }

.aa-board{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);margin:var(--sp-3) 0}
.aa-board > summary{display:grid;grid-template-columns:minmax(160px,260px) 1fr auto;align-items:center;gap:var(--sp-2) var(--sp-4);padding:var(--sp-4) var(--sp-6) var(--sp-4) var(--sp-12);cursor:pointer;list-style:none;position:relative}
.aa-board > summary::-webkit-details-marker{display:none}
.aa-board > summary::before{content:"";position:absolute;left:20px;top:50%;width:8px;height:8px;border-right:2px solid var(--text-mute);border-bottom:2px solid var(--text-mute);transform:translateY(-70%) rotate(-45deg);transition:transform .15s}
.aa-board[open] > summary::before{transform:translateY(-70%) rotate(45deg)}
.aa-board > summary:hover .aa-name{color:var(--accent)}
.aa-name{font-weight:700;font-size:var(--fs-l)}
.aa-marken{display:flex;gap:var(--sp-2);flex-wrap:wrap}
.aa-marke{font-size:var(--fs-xs);font-weight:700;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-pill);background:var(--border-soft);color:var(--text-soft);text-decoration:none;white-space:nowrap}
.aa-marke.s-ok{background:var(--teal-soft);color:#12603f}
.aa-marke.s-fehler{background:var(--warn-soft);color:#8c2020}
.aa-marke.s-fehlt{background:#fff;color:#8c2020;box-shadow:inset 0 0 0 1px #f0c4c4}
.aa-marke.s-pruefen{background:#fff4d6;color:#7a5600}
.aa-inhalt{padding:0 var(--sp-6) var(--sp-5) var(--sp-12);border-top:1px solid var(--border-soft)}
.aa-gruppe{font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);font-weight:700;margin:var(--sp-4) 0 2px}
.aa-gruppe .mini{text-transform:none;letter-spacing:0;font-weight:500;margin-left:var(--sp-2)}
.aa-links{margin-top:var(--sp-3)}
.aa-offen{font-weight:600}
.mini-inline{color:var(--text-mute);font-size:var(--fs-s)}
.aa-zahlen .ko-zahl small{margin-left:var(--sp-1)}
.aa-schluessel{margin-top:var(--sp-8)}
.aa-form{max-width:520px;margin-top:var(--sp-3)}
@media (max-width:820px){
  .aa-zeile{grid-template-columns:12px 1fr auto}
  .aa-zeile .aa-text{grid-column:2 / -1;grid-row:2}
  .aa-board > summary{grid-template-columns:1fr;padding-left:var(--sp-10)}
  .aa-board > summary::before{top:26px}
  .aa-inhalt{padding:0 var(--sp-4) var(--sp-4) var(--sp-4)}
}

/* Ausschläge: „Gesehen“ (seit 24.09.2026) */
.as-tabelle td:last-child{width:1%;white-space:nowrap}
.as-tabelle form{margin:0}
.tabelle tr.as-zeile-gesehen td{color:var(--text-mute);font-weight:500;background:none}
.karte-breit.as-gesehen{box-shadow:none;background:transparent;border:1px solid var(--border)}
.karte-breit.as-gesehen h2{color:var(--text-soft)}

/* Monatsbericht: je Monat eine Karte, Knopf bricht nie um (seit 24.09.2026). */
.mb-liste{list-style:none;display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-6)}
.mb-zeile{display:flex;align-items:center;gap:var(--sp-4);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--sp-4) var(--sp-4) var(--sp-4) var(--sp-4)}
.mb-symbol{width:40px;height:40px;flex:none;border-radius:var(--r-m);background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}
.mb-symbol svg{width:20px;height:20px}
.mb-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.mb-text b{font-size:var(--fs-m)}
.mb-status{font-size:var(--fs-s);color:var(--gut)}
.mb-status.laeuft{color:var(--text-mute)}
.mb-kurz{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--sp-5);border-left:4px solid var(--accent)}
.mb-kurz-kopf{font-size:var(--fs-s);font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.04em}
.mb-kurz p{margin-top:var(--sp-2);font-size:var(--fs-m);line-height:1.6}
.mb-herkunft{margin-top:var(--sp-3);font-size:var(--fs-xs);color:var(--text-mute)}
.mb-mehr summary{cursor:pointer;font-size:var(--fs-s);color:var(--accent)}
.mb-mehr p{margin-top:var(--sp-1);font-size:var(--fs-s);line-height:1.55}
.mb-fehler{font-size:var(--fs-xs);color:var(--warn)}
.mb-neu{display:inline}
.mb-knopf{flex:none;white-space:nowrap;padding:var(--sp-3) var(--sp-4)}
.mb-knopf svg{width:16px;height:16px}
@media (max-width:600px){.mb-zeile{flex-wrap:wrap}.mb-knopf{width:100%}}

/* ---- Hilfsklassen (seit 25.09.2026), dieselben Namen wie im Kundendashboard.
   Ersetzen die style-Attribute der Verwaltungsseiten. Gewinnen immer. ---- */
[hidden],.aus{display:none !important}
.d-inline{display:inline !important}
.o-75{opacity:.75 !important}
.c-gut{color:var(--gut) !important} .c-warn{color:var(--warn) !important} .fw-7{font-weight:700 !important}
.mt-3{margin-top:var(--sp-3) !important} .mt-4{margin-top:var(--sp-4) !important} .mt-5{margin-top:var(--sp-5) !important} .mt-6{margin-top:var(--sp-6) !important}
.mb-5{margin-bottom:var(--sp-5) !important}
.liste-eingerueckt{margin:var(--sp-2) 0 var(--sp-3) var(--sp-5)}
/* Warnmails (seit 27.09.2026) */
.wm-karte{margin-bottom:var(--sp-4)}
.wm-kopf{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center}
.wm-kopf .pill{display:inline-block;background:var(--accent-soft, #e9f2fd);color:var(--accent, #2a78d6);border-radius:var(--r-pill, 99px);padding:0 var(--sp-2);font-size:var(--fs-xs);font-weight:700}
.wm-karte textarea{font-family:inherit}

/* ================================================================ Verwaltung (neu seit 27.09.2026)
   Rahmen: Seitenleiste in drei Gruppen, Kopf mit „Kunde öffnen“, Handy mit Leiste unten.
   Inhalt: Karten, Kacheln, Pills in festen Rastern, damit am Handy nichts versetzt steht. */
.vw-body{background:var(--bg)}
.vw{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.vw-seite{position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--ink);color:#cdd7e6;padding:var(--sp-5) var(--sp-3);display:flex;flex-direction:column;gap:2px}
.vw-marke{display:flex;align-items:center;gap:var(--sp-3);color:#fff;text-decoration:none;padding:var(--sp-1) var(--sp-3) var(--sp-4);font-weight:700;font-size:var(--fs-m)}
.vw-marke .logo{height:16px;width:auto;filter:brightness(0) invert(1)}
.vw-marke span{padding-left:var(--sp-3);border-left:1px solid rgba(255,255,255,.2);font-size:var(--fs-2xs);letter-spacing:.14em;text-transform:uppercase;color:#a9cdf5}
.vw-seite-zu{display:none}
.vw-gruppe{font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:#7f8fa8;padding:var(--sp-4) var(--sp-3) var(--sp-1);font-weight:700}
.vw-nav{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-s);color:#cdd7e6;text-decoration:none;font-size:var(--fs-m);font-weight:500;line-height:1.3}
.vw-nav:hover{background:rgba(255,255,255,.06);color:#fff}
.vw-nav.an{background:rgba(42,120,214,.24);color:#fff;font-weight:700}
.vw-nav svg{width:17px;height:17px;flex:none;opacity:.85}
.vw-nav span{flex:1;min-width:0}
.vw-z{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:var(--r-pill);font-size:var(--fs-2xs);font-weight:800;padding:0 var(--sp-1);background:#e05d44;color:#fff;flex:none}
.vw-z.blau{background:var(--accent)}
.vw-seite-fuss{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding-top:var(--sp-2)}
.vw-haupt{display:flex;flex-direction:column;min-width:0}
.vw-kopf{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-6);background:var(--surface);box-shadow:0 1px 0 var(--border)}
.vw-suche{position:relative;flex:1;max-width:480px;display:flex;align-items:center;gap:var(--sp-2);border:1px solid var(--border);border-radius:var(--r-m);background:var(--bg);padding:0 var(--sp-3);min-width:0}
.vw-suche>svg{width:16px;height:16px;flex:none;color:var(--text-mute)}
.vw-suche input{flex:1;min-width:0;border:0;background:transparent;padding:var(--sp-2) 0;font-size:var(--fs-m);color:var(--text);outline:0}
.vw-suche input:focus{outline:0}
.vw-suche:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}
.vw-suche kbd{font:inherit;font-size:var(--fs-2xs);color:var(--text-mute);border:1px solid var(--border);border-radius:var(--r-xs);padding:0 var(--sp-1);background:#fff;white-space:nowrap}
.vw-treffer{position:absolute;left:0;right:0;top:calc(100% + 6px);background:var(--surface);border-radius:var(--r-m);box-shadow:var(--shadow-lift);padding:var(--sp-1);z-index:60}
.vw-opt{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:var(--sp-2);align-items:center;padding:var(--sp-2);border-radius:var(--r-s)}
.vw-opt.an,.vw-opt:hover{background:var(--accent-soft)}
.vw-opt-name{display:flex;flex-direction:column;text-decoration:none;min-width:0}
.vw-opt-name b{font-size:var(--fs-m)}
.vw-opt-name span{font-size:var(--fs-xs);color:var(--text-mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vw-opt-hilfe{font-size:var(--fs-2xs);color:var(--text-mute);padding:var(--sp-2);text-transform:uppercase;letter-spacing:.05em}
.vw-kopf-rechts{margin-left:auto;display:flex;align-items:center;gap:var(--sp-3)}
.vw-konto{position:relative}
.vw-konto summary{list-style:none;cursor:pointer}
.vw-konto summary::-webkit-details-marker{display:none}
.vw-avatar{width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:800}
.vw-konto-menue{position:absolute;right:0;top:calc(100% + 8px);background:var(--surface);border-radius:var(--r-m);box-shadow:var(--shadow-lift);padding:var(--sp-3);min-width:220px;display:flex;flex-direction:column;gap:var(--sp-2);z-index:60}
.vw-konto-menue a,.vw-konto-menue button{background:none;border:0;padding:var(--sp-1) 0;text-align:left;color:var(--accent);text-decoration:none;cursor:pointer;font-weight:600}
.vw-inhalt{padding:var(--sp-6) var(--sp-8) var(--sp-12);max-width:1320px;width:100%}
.vw-inhalt h1{font-size:var(--fs-2xl);margin-bottom:var(--sp-1)}
.vw-inhalt h2{font-size:var(--fs-l);font-weight:800;margin-bottom:var(--sp-3);display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}
.vw-unter{margin-bottom:var(--sp-5);max-width:900px}
.vw-meldung{margin-bottom:var(--sp-4)}
.erfolg{background:var(--teal-soft);color:#11643f;border-radius:var(--r-m);padding:var(--sp-3) var(--sp-4)}
.vw-titel{display:flex;gap:var(--sp-4);align-items:flex-start;justify-content:space-between;flex-wrap:wrap;margin-bottom:var(--sp-5)}
.vw-titel>div:first-child{flex:1 1 420px;min-width:0}
.vw-krume{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center;font-size:var(--fs-s);color:var(--text-mute);margin-bottom:var(--sp-2)}
.vw-krume a{color:var(--text-soft);text-decoration:none}
.vw-krume a:hover{color:var(--accent)}
.vw-zurueck{display:inline-block;font-size:var(--fs-s);color:var(--accent);text-decoration:none;font-weight:600;margin-bottom:var(--sp-3)}
.vw-karte{background:var(--surface);border-radius:var(--r-l);box-shadow:var(--shadow);padding:var(--sp-5);margin-bottom:var(--sp-4);min-width:0}
.vw-karte-tabelle{padding:var(--sp-2) var(--sp-3);overflow-x:auto}
/* Breite Kundentabelle: Board-Knopf nie umbrechen, lange Pills dürfen umbrechen (Review 27.09.2026, zweite Runde). */
.vw-tab .vw-ecke .knopf{white-space:nowrap}
.vw-tab td .vw-pill{white-space:normal}
.vw-mehr{margin-left:auto;color:var(--accent);text-decoration:none;font-weight:600}
.vw-leer{color:var(--text-soft);padding:var(--sp-3) 0}
.vw-kacheln{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-3);margin-bottom:var(--sp-4)}
.vw-kachel{background:var(--surface);border-radius:var(--r-l);box-shadow:var(--shadow);padding:var(--sp-4);display:flex;flex-direction:column;gap:2px;text-decoration:none;min-width:0}
a.vw-kachel:hover{box-shadow:var(--shadow-lift)}
.vw-lab{font-size:var(--fs-s);color:var(--text-soft)}
.vw-zahl{font-size:var(--fs-3xl);font-weight:800;line-height:1.15;letter-spacing:-.02em}
.vw-zahl.klein{font-size:var(--fs-xl)}
.vw-raster-21{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--sp-4);align-items:start}
.vw-raster-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);align-items:start}
.vw-spalte{display:flex;flex-direction:column;min-width:0}
.vw-pill{display:inline-flex;align-items:center;border-radius:var(--r-pill);padding:2px var(--sp-2);font-size:var(--fs-xs);font-weight:700;white-space:nowrap;background:#eef2f7;color:var(--text-soft);flex:none}
.vw-pill.gut{background:var(--teal-soft);color:#11643f}
.vw-pill.warn{background:#fdf0e6;color:#b4540f}
.vw-pill.rot{background:var(--warn-soft);color:#b42318}
.vw-pill.blau{background:var(--accent-soft);color:var(--accent-deep)}
a.vw-pill{text-decoration:none}
.vw-aufgaben{list-style:none}
.vw-aufgabe{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:var(--sp-3);align-items:center;padding:var(--sp-3) 0;border-bottom:1px solid var(--border-soft)}
.vw-aufgabe:last-child{border-bottom:0}
.vw-ic{width:34px;height:34px;border-radius:var(--r-s);display:grid;place-items:center;background:#eef2f7;font-size:var(--fs-l)}
.vw-ic.rot{background:var(--warn-soft)}.vw-ic.warn{background:#fdf0e6}.vw-ic.blau{background:var(--accent-soft)}
.vw-aufgabe-t{display:flex;flex-direction:column;min-width:0}
.vw-aufgabe-t b{font-weight:700;line-height:1.35}
.vw-aufgabe-t span{font-size:var(--fs-s);color:var(--text-soft);overflow-wrap:anywhere}
.vw-spaeter{margin-top:var(--sp-3)}
.vw-spaeter summary,.vw-aufklapp summary{cursor:pointer;color:var(--accent);font-weight:600;font-size:var(--fs-s);padding:var(--sp-2) 0}
.vw-aufklapp{margin-top:var(--sp-3)}
.vw-kurzliste,.vw-log,.vw-haken,.vw-quellen,.vw-zugaenge,.vw-links,.vw-berichte{list-style:none}
.vw-kurzliste li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-3);align-items:center;padding:var(--sp-2) 0;border-bottom:1px solid var(--border-soft)}
.vw-kurzliste li:last-child{border-bottom:0}
.vw-kurzliste a{text-decoration:none}
.vw-log li{padding:var(--sp-1) 0;font-size:var(--fs-s)}
.vw-haken li{padding:2px 0;font-size:var(--fs-s)}
.vw-haken li.gut{color:var(--gut)}.vw-haken li.offen{color:#b4540f;font-weight:600}.vw-haken li.hinweis{color:#8a5f00}
.vw-haken a{color:inherit}
.vw-fortschritt{height:8px;border-radius:var(--r-pill);background:#e8eef6;overflow:hidden;margin-bottom:var(--sp-2)}
.vw-fortschritt i{display:block;height:100%;background:var(--accent);border-radius:var(--r-pill)}
.vw-tab{width:100%;border-collapse:collapse;font-size:var(--fs-s)}
.vw-tab th{text-align:left;font-size:var(--fs-2xs);letter-spacing:.05em;text-transform:uppercase;color:var(--text-mute);font-weight:700;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border)}
.vw-tab td{padding:var(--sp-3);border-bottom:1px solid var(--border-soft);vertical-align:middle}
.vw-tab tr:last-child td{border-bottom:0}
.vw-tab .r{text-align:right}
.vw-tab tr.aus{opacity:.55}
.vw-tab tr.warn td{background:#fff7f5}
.vw-tab tr.vw-klick{cursor:pointer}
.vw-tab tr.vw-klick:hover td{background:#f7faff}
.vw-name{font-weight:600}
.vw-name a{text-decoration:none}
.vw-name .mini{display:block;font-weight:400}
.vw-aktionen form,.vw-knoepfe{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center}
.vw-aktionen{text-align:right}
.vw-aktionen form{justify-content:flex-end}
.vw-knoepfe form{display:inline}
.vw-akte-kopf{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:var(--sp-4);align-items:center}
.vw-logo{width:56px;height:56px;border-radius:var(--r-m);background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:800;font-size:var(--fs-2xl)}
.vw-akte-name h1{margin:0;display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}
.vw-akte-knoepfe{display:flex;gap:var(--sp-2);align-items:center}
.vw-akte-knoepfe form{display:contents}
.vw-mehr-menue{position:relative}
.vw-mehr-menue summary{list-style:none;cursor:pointer}
.vw-mehr-menue summary::-webkit-details-marker{display:none}
.vw-mehr-menue>div{position:absolute;right:0;top:calc(100% + 6px);background:var(--surface);border-radius:var(--r-m);box-shadow:var(--shadow-lift);padding:var(--sp-2);min-width:240px;display:flex;flex-direction:column;z-index:30}
.vw-mehr-menue>div a{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-s);text-decoration:none;font-size:var(--fs-m)}
.vw-mehr-menue>div a:hover{background:var(--accent-soft)}
.vw-reiter{display:flex;gap:2px;border-bottom:1px solid var(--border);margin:var(--sp-5) 0 var(--sp-5);overflow-x:auto;scrollbar-width:none}
.vw-reiter a{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-2) var(--sp-4);color:var(--text-soft);text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap;font-weight:600;font-size:var(--fs-m)}
.vw-reiter a.an{color:var(--text);border-bottom-color:var(--accent)}
.vw-quelle,.vw-zugang{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:var(--sp-3);align-items:center;padding:var(--sp-3) 0;border-bottom:1px solid var(--border-soft)}
.vw-zugang{grid-template-columns:minmax(0,1fr) auto}
.vw-quelle:last-child,.vw-zugang:last-child{border-bottom:0}
.vw-quelle-name,.vw-zugang-name{display:flex;flex-direction:column;min-width:0}
.vw-quelle-name .mini,.vw-zugang-name .mini{overflow-wrap:anywhere}
.vw-quelle-zeit{white-space:nowrap}
.vw-quelle-knopf{display:inline}
.vw-quelle>.vw-aufklapp{grid-column:1 / -1}   /* Datenpause: Formular „Ändern“ über die ganze Zeile (PR-DP1a) */
.vw-felder{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-3)}
.vw-inhalt label{display:flex;flex-direction:column;gap:var(--sp-1);font-weight:600}
.vw-inhalt label.check{flex-direction:row;align-items:center;gap:var(--sp-2);font-weight:500}
.vw-inhalt textarea,.vw-inhalt select,.vw-inhalt input[type=number]{width:100%;padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-radius:var(--r-m);background:#fff;font:inherit;font-size:var(--fs-m);color:var(--text)}
.vw-inhalt input[type=email],.vw-inhalt input[type=text],.vw-inhalt input[type=password]{padding:var(--sp-2) var(--sp-3);font-size:var(--fs-m)}
.vw-inhalt textarea{resize:vertical;margin-bottom:var(--sp-2)}
.vw-einst label+label{margin-top:var(--sp-2)}
.vw-schalter-zeile{flex-direction:row !important;justify-content:space-between;align-items:center;padding:var(--sp-2) 0;border-bottom:1px solid var(--border-soft);font-weight:500 !important}
.vw-schalter{appearance:none;-webkit-appearance:none;width:38px;height:22px;border-radius:var(--r-pill);background:#c5cfdc;position:relative;cursor:pointer;flex:none;transition:.15s}
.vw-schalter:after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.15s}
.vw-schalter:checked{background:var(--gut)}
.vw-schalter:checked:after{left:19px}
.vw-schalter:disabled{opacity:.6}
.vw-speichern{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap;margin-top:var(--sp-2);grid-column:1 / -1}
.vw-dienste{border:0;padding:0;margin:var(--sp-2) 0 0;display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4)}
.vw-auswahl{flex-direction:column;flex-wrap:nowrap;gap:var(--sp-2)}
.vw-experte summary{cursor:pointer;font-weight:700}
.vw-experte textarea{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:var(--fs-s)}
.vw-gefahr{background:#fff8f7;box-shadow:none;border:1px solid #f6d5d0}
.vw-gefahr h2{color:#b42318}
.vw-liste{padding-left:var(--sp-5);margin:var(--sp-2) 0 var(--sp-3)}
.vw-warnung{border-top:1px solid var(--border-soft);padding-top:var(--sp-4);margin-top:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}
.vw-warnung:first-of-type{border-top:0;margin-top:0;padding-top:0}
.vw-umfeld ul{list-style:none;margin:var(--sp-2) 0 0;padding:0}
.vw-umfeld li{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);padding:6px 0;border-bottom:1px solid var(--border-soft)}
.vw-umfeld li span{min-width:0;overflow-wrap:anywhere}
.vw-zeile{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap}
.vw-zeile a{text-decoration:none}
.vw-ki-vorschlag{background:var(--accent-soft);border-radius:var(--r-m);padding:var(--sp-4);margin-bottom:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3)}
.knopf.gut{background:var(--gut)}
.vw-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-3);align-items:center;border:1px solid var(--border);border-radius:var(--r-m);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-2);background:#fff}
.vw-link.spaeter{opacity:.6}
.vw-link-t{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}
.vw-link-name{font-weight:700;text-decoration:none;overflow-wrap:anywhere}
.vw-pills{display:flex;gap:var(--sp-1);flex-wrap:wrap}
.vw-entscheid{display:grid;grid-template-columns:repeat(3,auto);gap:var(--sp-2)}
.vw-bericht{padding:var(--sp-3) 0;border-bottom:1px solid var(--border-soft)}
.vw-bericht:last-child{border-bottom:0}
.vw-bericht-kopf{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:var(--sp-3);align-items:center}
.vw-bericht-kopf .vw-knoepfe{justify-content:flex-end}
.vw-bericht-text{margin-top:var(--sp-2);line-height:1.6}
.vw-monate{display:flex;gap:var(--sp-1);flex-wrap:wrap}
.vw-monate a{padding:var(--sp-1) var(--sp-3);border-radius:var(--r-pill);text-decoration:none;font-size:var(--fs-s);color:var(--text-soft);border:1px solid var(--border);background:#fff}
.vw-monate a.an{background:var(--ink);color:#fff;border-color:var(--ink)}
.vw-dateien{margin-top:var(--sp-3)}
.vw-fr-karte .knopf{margin-top:var(--sp-2)}
.vw-hinter{position:fixed;inset:0;background:rgba(15,25,40,.45);z-index:70}
.vw-unten{display:none}
.vw-inhalt .gruen{color:var(--gut)}.vw-inhalt .rot{color:#b42318}

@media (max-width:820px){
  .vw{grid-template-columns:1fr}
  .vw-seite{position:fixed;left:0;top:0;bottom:0;width:min(320px,86vw);height:auto;z-index:80;transform:translateX(-100%);transition:transform .2s ease;visibility:hidden}
  .vw-seite.offen{transform:none;visibility:visible}
  .vw-seite-zu{display:grid;place-items:center;position:absolute;top:var(--sp-3);right:var(--sp-3);width:40px;height:40px;border:0;border-radius:var(--r-m);background:rgba(255,255,255,.08);color:#fff;cursor:pointer}
  .vw-seite-zu svg{width:20px;height:20px}
  .vw-marke{padding-right:56px}
  .vw-inhalt{padding:var(--sp-4) var(--sp-4) calc(var(--sp-16) + var(--sp-6))}
  .vw-kopf{padding:var(--sp-2) var(--sp-4)}
  .vw-kacheln{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vw-raster-21,.vw-raster-2{grid-template-columns:1fr}
  .vw-unten{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--surface);box-shadow:0 -1px 0 var(--border);padding:var(--sp-1) var(--sp-1) calc(var(--sp-2) + env(safe-area-inset-bottom))}
  .vw-unten a,.vw-unten button{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--sp-1);font-size:var(--fs-2xs);font-weight:600;color:var(--text-soft);text-decoration:none;background:none;border:0;font-family:inherit;cursor:pointer}
  .vw-unten a.an{color:var(--accent)}
  .vw-unten svg{width:22px;height:22px}
  .vw-unten .vw-z{position:absolute;top:0;left:calc(50% + 6px);min-width:18px;height:18px}
}
@media (max-width:600px){
  .vw-suche kbd,.vw-kopf-rechts .vw-pill{display:none}
  .vw-inhalt h1{font-size:var(--fs-xl)}
  .vw-kachel{padding:var(--sp-3)}
  .vw-zahl{font-size:var(--fs-2xl)}
  .vw-zahl.klein{font-size:var(--fs-l)}
  .vw-felder{grid-template-columns:1fr}
  .vw-akte-kopf{grid-template-columns:44px minmax(0,1fr)}
  .vw-logo{width:44px;height:44px;font-size:var(--fs-xl)}
  .vw-akte-knoepfe{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px}
  .vw-akte-knoepfe .knopf{padding:var(--sp-2);font-size:var(--fs-s);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}
  .vw-aufgabe{grid-template-columns:34px minmax(0,1fr)}
  .vw-aufgabe-knopf{grid-column:2;justify-self:start}
  .vw-quelle{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name name" "pill knopf" "zeit knopf";row-gap:var(--sp-1)}
  .vw-quelle>.vw-quelle-name{grid-area:name}
  .vw-quelle>.vw-pill{grid-area:pill;justify-self:start}
  .vw-quelle>.vw-quelle-zeit{grid-area:zeit}
  .vw-quelle>.vw-quelle-knopf{grid-area:knopf}
  .vw-link{grid-template-columns:1fr}
  .vw-entscheid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .vw-entscheid .knopf{width:100%}
  .vw-ki-vorschlag .vw-knoepfe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .vw-ki-vorschlag .vw-knoepfe .knopf{width:100%;white-space:normal}
  .vw-bericht-kopf{grid-template-columns:auto minmax(0,1fr)}
  .vw-bericht-kopf .vw-knoepfe{grid-column:1 / -1;justify-content:flex-start}
  .vw-titel .vw-knoepfe{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .vw-titel .vw-knoepfe .knopf{width:100%}
  /* Tabellen werden Karten: Name oben, darunter Beschriftung links und Wert rechts. */
  .vw-stapel thead{display:none}
  .vw-stapel,.vw-stapel tbody,.vw-stapel tr{display:block;width:100%}
  .vw-stapel tr{position:relative;padding:var(--sp-3) 0;border-bottom:1px solid var(--border-soft)}
  .vw-stapel tr:last-child{border-bottom:0}
  .vw-stapel td{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--sp-3);border:0;padding:2px var(--sp-1);text-align:right;align-items:center}
  .vw-stapel td[data-l]:before{content:attr(data-l);text-align:left;color:var(--text-mute);font-size:var(--fs-xs);white-space:nowrap;font-weight:500}
  .vw-stapel td .vw-pill,.vw-stapel td .knopf{justify-self:end}
  .vw-stapel td.vw-name{display:block;text-align:left;font-size:var(--fs-m);padding-right:96px;margin-bottom:var(--sp-1)}
  .vw-stapel td.vw-ecke{position:absolute;top:var(--sp-3);right:0;padding:0;display:block}
  .vw-stapel td.vw-aktionen,.vw-stapel td.r:not([data-l]){display:block;text-align:left;margin-top:var(--sp-2)}
  .vw-stapel td.vw-aktionen form{justify-content:flex-start}
  .vw-laeufe thead{display:none}
  .vw-laeufe tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--border-soft)}
  .vw-laeufe td{border:0;padding:0}
  .vw-laeufe td:nth-child(1){grid-column:1;grid-row:2;color:var(--text-mute);font-size:var(--fs-xs)}
  .vw-laeufe td:nth-child(2){grid-column:1;grid-row:1;font-weight:600}
  .vw-laeufe td:nth-child(3){grid-column:2;grid-row:1;justify-self:end}
  .vw-laeufe td:nth-child(4){grid-column:2;grid-row:2;color:var(--text-mute);font-size:var(--fs-xs)}
}
.vw-karte ul:not([class]){padding-left:var(--sp-5);margin:var(--sp-2) 0}
.vw-karte .fr-links{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin:var(--sp-4) 0 var(--sp-2)}
.vw-karte .fr-tat{display:inline-block;margin:var(--sp-2) var(--sp-2) 0 0}
.vw-karte .vw-haken+.mini+.knopf,.vw-karte .mini+a.knopf{margin-top:var(--sp-3)}
@media (max-width:600px){
  .vw-karte .fr-links{display:grid;grid-template-columns:1fr}
  .vw-karte .fr-links .knopf,.vw-karte .fr-tat,.vw-karte .fr-tat .knopf{width:100%}
  .vw-karte .fr-tat{display:block;margin:var(--sp-2) 0 0}
  .vw-entscheid .knopf{padding:var(--sp-2) var(--sp-1);font-size:var(--fs-xs);white-space:nowrap}
}
.vw-inhalt label input,.vw-inhalt label select,.vw-inhalt label textarea{font-weight:400}
.vw-inhalt label .mini{font-weight:400}
.vw-einst p.mini+label{margin-top:var(--sp-3)}
.vw-inhalt h2 a{text-decoration:none;color:inherit}
.vw-felder label+label{margin-top:0 !important}

/* Meine Einstellungen: gesperrte Felder erkennbar (29.09.2026) */
.stapel input[readonly],.vw-felder input[readonly]{opacity:.6;cursor:not-allowed}
/* Zurück zum Dashboard als Knopf statt kleinem Link (29.09.2026, Paul: „so unscheinbar“) */
.zurueck-knopf{display:inline-flex;align-items:center;gap:8px;margin-bottom:var(--sp-4)}
.zurueck-knopf svg{flex:none}
.zurueck-leiste{display:flex;flex-wrap:wrap;gap:var(--sp-3)}
/* Meine Einstellungen als Übersicht mit Kacheln (29.09.2026) */
.ke-seite .ke-gruppe{margin:var(--sp-8) 0 var(--sp-3);font-size:var(--fs-s);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--l-gedaempft,var(--text-mute))}
.ke-seite:not(.schmal){max-width:1000px}
.ke-kacheln{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--sp-4)}
.ke-kachel{position:relative;display:flex;gap:var(--sp-4);align-items:flex-start;padding:var(--sp-5);min-height:112px;text-decoration:none;color:var(--l-haupt,var(--text));background:var(--l-kachel,var(--surface));border:1px solid var(--l-rand,var(--border));border-radius:var(--r-l);transition:border-color .15s,transform .15s}
.ke-kachel:hover,.ke-kachel:focus-visible{border-color:var(--l-akzent,var(--accent));transform:translateY(-1px)}
.ke-sym{flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:var(--l-seite,var(--bg));border:1px solid var(--l-rand,var(--border))}
.ke-sym svg{width:22px;height:22px}
.ke-text{display:flex;flex-direction:column;gap:4px;min-width:0}
.ke-text b{font-size:var(--fs-m)}
.ke-wert{font-size:var(--fs-l);font-weight:700}
.ke-satz{font-size:var(--fs-s);color:var(--l-weich,var(--text-soft));line-height:1.45}
.ke-marke{align-self:flex-start;font-size:var(--fs-2xs);font-weight:700;padding:2px 8px;border-radius:999px;border:1px solid var(--l-rand,var(--border));color:var(--l-gedaempft,var(--text-mute))}
@media(max-width:600px){.ke-kacheln{grid-template-columns:1fr}.ke-kachel{min-height:0}}
/* Vertrag zur Auftragsverarbeitung (01.10.2026) */
.avv-text h2{font-size:var(--fs-l);margin:var(--sp-5) 0 var(--sp-2)}
.avv-text p,.avv-text li{line-height:1.6}
.avv-text ul{padding-left:var(--sp-5)}
.avv-tab{width:100%;border-collapse:collapse;font-size:var(--fs-s)}
.avv-tab th,.avv-tab td{text-align:left;padding:var(--sp-2);border-bottom:1px solid var(--line,rgba(127,127,127,.25));vertical-align:top}
.avv-haken,.stapel label.avv-haken{display:flex;flex-direction:row;gap:var(--sp-3);align-items:flex-start;cursor:pointer}
.avv-haken input{margin-top:.2em;flex:none;width:18px;height:18px}
/* Zugänge der Firma (01.10.2026) */
.knopf.gefahr{background:transparent;color:#b91c1c;border:1px solid #b91c1c}
.fz-liste{list-style:none;margin:var(--sp-3) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--sp-3)}
.fz-person{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--l-rand,rgba(127,127,127,.25));border-radius:var(--r-m)}
.fz-wer{flex:1 1 260px;min-width:0}
.fz-mail{display:block;font-size:var(--fs-s);margin-top:2px;overflow-wrap:anywhere}
.fz-rolle{display:inline-block;font-size:var(--fs-xs);padding:2px 8px;border-radius:999px;border:1px solid var(--l-rand,rgba(127,127,127,.4));margin-left:6px}
.fz-rolle.haupt{background:var(--l-akzent,#4a7300);color:var(--l-auf-akzent,#fff);border-color:transparent}
.fz-aktionen{display:flex;flex-wrap:wrap;gap:var(--sp-2)}
/* Rahmen der Kundenseiten (01.10.2026, Paul): Menü links wie im Board, breiter Inhalt, mehr Luft. */
.kr{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.kr-mobil{display:none}
.kr-seite{position:sticky;top:0;height:100vh;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:22px 12px 16px;
  background:var(--l-seite,var(--bg));border-right:1px solid var(--l-rand,var(--border))}
.kr-marke{display:flex;flex-direction:column;gap:2px;padding:4px 10px 14px;text-decoration:none}
.kr-marke b{font-size:var(--fs-l);color:var(--l-betont,var(--text));overflow-wrap:anywhere}
.kr-marke span{font-size:var(--fs-xs);color:var(--l-gedaempft,var(--text-mute))}
.kr-gruppe{margin:16px 10px 6px;font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.08em;color:var(--l-leise,var(--text-mute))}
.kr-link{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:6px;text-decoration:none;font-size:var(--fs-s);color:var(--l-weich,var(--text))}
.kr-link:hover{background:var(--l-auswahl,var(--accent-soft));color:var(--l-betont,var(--text))}
.kr-link.an{background:var(--l-akzent,var(--accent));color:var(--l-auf-akzent,#fff);font-weight:700}
.kr-punkt{width:8px;height:8px;border-radius:2px;flex:none;background:var(--l-gedaempft,#888)}
.kr-p-start{background:var(--l-akzent,#4a7300)}.kr-p-empfehlungen{background:var(--l-negativ,#c02f2f)}
.kr-p-ueberblick{background:var(--l-ueberblick,#2fd6c3)}.kr-p-besucher{background:var(--l-besucher,#2f6bff)}.kr-p-marketing{background:var(--l-marketing,#ff7a1a)}
.kr-p-social{background:var(--l-social,#ff4fa3)}.kr-p-verhalten{background:var(--l-verhalten,#ff8a65)}.kr-p-ruf{background:var(--l-ruf,#ffc53d)}
.kr-p-suche{background:var(--l-suche,#3ddc97)}.kr-p-ki{background:var(--l-ki,#9a7bff)}.kr-p-website{background:var(--l-website,#56c8ff)}
.kr-fuss{margin-top:auto;padding:16px 10px 0;border-top:1px solid var(--l-rand,var(--border));display:flex;flex-direction:column;gap:10px}
.kr-wer{display:flex;flex-direction:column;font-size:var(--fs-s)}
.kr-wer b{color:var(--l-betont,var(--text))}
.kr-wer span{font-size:var(--fs-xs);color:var(--l-gedaempft,var(--text-mute))}
.kr-fuss-zeile{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.kr-recht{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:var(--fs-2xs);color:var(--l-leise,var(--text-mute))}
.kr-recht a{color:var(--l-gedaempft,var(--text-mute));text-decoration:underline}
.kr-haupt{min-width:0}
.kr-haupt .inhalt.kr-inhalt{max-width:1120px;margin:0;padding:40px 48px 72px}
.kr-haupt .inhalt.kr-schmal{max-width:880px}
.kr-haupt .inhalt h1{margin-bottom:12px}
.kr-haupt .inhalt > .leise{max-width:72ch;margin-bottom:8px}
.kr-haupt .ke-gruppe{margin-top:48px;margin-bottom:16px}
.kr-haupt .stapel{gap:16px}
.kr-haupt .zurueck-leiste{margin-bottom:24px}
.kr-raster{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:start;margin-top:32px}
.kr-spalte{display:flex;flex-direction:column;gap:28px;min-width:0}
.kr-karte{padding:24px;border:1px solid var(--l-rand,var(--border));border-radius:var(--r-l,12px);background:var(--l-kachel,var(--surface));min-width:0}
.kr-karte-warn{border-left:4px solid var(--l-negativ,#c02f2f)}
.kr-karte-titel{font-size:var(--fs-l);margin:0 0 14px}
.kr-karte > .leise{margin-bottom:12px}
@media(max-width:820px){
  .kr{grid-template-columns:1fr}
  .kr-mobil{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--l-rand,var(--border));position:sticky;top:0;z-index:20;background:var(--l-seite,var(--bg))}
  .kr-mobil-name{font-weight:700;text-decoration:none;color:var(--l-betont,var(--text));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .kr-seite{display:none;position:static;height:auto;border-right:0;border-bottom:1px solid var(--l-rand,var(--border))}
  /* Offen als Schicht unter dem festen Kopf (Paul, 27.10.2026: nach dem Scrollen ließ sich das Menü nicht mehr öffnen, es lag oben außerhalb des Bildes). */
  .kr-seite.offen{display:flex;position:fixed;left:0;right:0;top:var(--kr-kopf,61px);bottom:0;overflow-y:auto;z-index:19;background:var(--l-seite,var(--bg))}
  html.kr-menue-offen{overflow:hidden}
  .kr-haupt .inhalt.kr-inhalt{padding:24px 16px 48px}
  .kr-raster{grid-template-columns:1fr;gap:20px;margin-top:20px}
  .kr-karte{padding:18px}
}
/* Hinweis auf den Einstellungsseiten des Musterboards (02.10.2026) */
.demo-band{margin:16px 48px 0;padding:12px 16px;border-radius:var(--r-m,8px);font-size:var(--fs-s);font-weight:700;
  background:color-mix(in srgb,var(--l-akzent,#4a7300) 14%,transparent);border:1px solid var(--l-akzent,#4a7300);color:var(--l-haupt,inherit)}
.demo-band-an{background:var(--l-akzent,#4a7300);color:var(--l-auf-akzent,#fff)}
@media(max-width:820px){.demo-band{margin:12px 16px 0}}

/* Ablauf-Seite des Musterboard-Links (15.10.2026) */
.ablauf-seite{background:#141519;color:#f3f3f3;font-family:system-ui,sans-serif;margin:0}
.ablauf{max-width:560px;margin:12vh auto;padding:0 16px}
.ablauf .logo{width:180px;height:auto;color:#f3f3f3;margin-bottom:24px}
.ablauf h1{font-size:var(--fs-3xl);margin:0 0 12px}
.ablauf p{line-height:1.6;color:#c9ccd1}
.ablauf .zeile{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.ablauf .zeile form{margin:0}
.ablauf .knopf{display:inline-block;padding:12px 20px;border-radius:10px;border:0;background:#c6f432;color:#0e1013;font-weight:700;cursor:pointer;text-decoration:none}
.ablauf .knopf.hell{background:transparent;color:#f3f3f3;border:1px solid #5a5e66}
.ablauf-meldung{background:#24262c;padding:12px 16px;border-radius:10px}

/* Impressum und Datenschutz des Boards (27.10.2026) */
.recht-seite{max-width:880px}
.recht-marke{display:inline-flex;margin-bottom:var(--sp-6)}
.recht-pruefen{background:#ffc53d;color:#111418;padding:0 var(--sp-1);font-weight:700}
.recht-seite .avv-text p{margin:0 0 var(--sp-3)}
.recht-fuss{margin-top:var(--sp-8)}

/* Widget fürs iPhone (27.10.2026): Vorschau wie auf dem Startbildschirm, immer dunkel wie das Widget */
.wg-reihe{display:flex;gap:var(--sp-6);flex-wrap:wrap;align-items:flex-start}
.wg-vorschau{display:flex;flex-direction:column;width:300px;max-width:100%;min-height:150px;padding:14px 16px 12px;border-radius:22px;background:#0e1013;color:#e9ebee;border:1px solid #3a3f47;box-shadow:var(--shadow-lift)}
.wg-name{color:#c6f432;font-size:var(--fs-s);margin-bottom:8px}
.wg-logo{display:flex;align-self:flex-start;margin-bottom:8px;max-width:100%}
.wg-logo img{display:block;height:24px;width:auto;max-width:180px;object-fit:contain}
.wg-logo-flaeche{background:#ffffff;padding:4px 6px;border-radius:6px}
.wg-titel{color:#9aa0a8;font-size:var(--fs-2xs)}
.wg-wert{font-size:var(--fs-xl);font-weight:800;margin-bottom:4px}
.wg-delta{font-size:var(--fs-xs);font-weight:700;color:#9aa0a8}
.wg-delta.gut{color:#3ddc97}
.wg-delta.schlecht{color:#ff6b6b}
.wg-stand{margin-top:auto;padding-top:6px;color:#9aa0a8;font-size:var(--fs-2xs)}
.wg-status{flex:1;min-width:240px}
.wg-skript{width:100%;font-family:var(--font-mono,monospace);font-size:var(--fs-xs)}
.wg-vorschau-liste{display:flex;flex-direction:column}
.wg-feld{display:flex;flex-direction:column;gap:var(--sp-1)}
.wg-feld span{font-size:var(--fs-xs);color:var(--l-gedaempft,var(--text-mute))}
.wg-feld input{width:100%;max-width:320px}
.wg-kacheln{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}
@media(min-width:600px){.wg-kacheln{grid-template-columns:repeat(3,minmax(0,1fr))}}
.wg-kachel{position:relative;display:flex;flex-direction:column;gap:2px;min-height:64px;padding:var(--sp-3) var(--sp-3) var(--sp-3) 38px;border:1px solid var(--l-rand-stark,var(--border));cursor:pointer;background:var(--l-kachel,transparent)}
.wg-kachel input{position:absolute;left:10px;top:12px;width:22px;height:22px;margin:0;accent-color:var(--l-akzent,#4a7300)}
.wg-kachel-nr{position:absolute;left:10px;top:12px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);font-weight:800;color:var(--l-auf-akzent,#fff);background:var(--l-akzent,#4a7300);pointer-events:none;opacity:0}
.wg-kachel-an{border-color:var(--l-akzent,#4a7300);box-shadow:inset 0 0 0 1px var(--l-akzent,#4a7300)}
.wg-kachel-an input{opacity:0}
.wg-kachel-an .wg-kachel-nr{opacity:1}
.wg-kachel:focus-within{outline:3px solid var(--l-akzent,#4a7300);outline-offset:2px}
.wg-kachel-aus{cursor:default}
.wg-kachel-name{font-weight:700;font-size:var(--fs-s);line-height:1.3;overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}
.wg-kachel-wert{font-size:var(--fs-2xs);color:var(--l-gedaempft,var(--text-mute))}
.wg-kachel-leer .wg-kachel-wert{font-style:italic}
.wg-kachel-aus{opacity:.5}
.wg-vz{display:flex;align-items:center;justify-content:space-between;gap:8px}
.wg-zaehler{display:block;margin-top:var(--sp-2);font-size:var(--fs-xs);color:var(--l-gedaempft,var(--text-mute))}
.wg-stumm{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wg-vz > div{display:flex;flex-direction:column;min-width:0}
.wg-weg{flex:none;width:44px;height:44px;font:inherit;font-size:var(--fs-l);line-height:1;color:#9aa0a8;background:transparent;border:1px solid #3a3f47;cursor:pointer}
.wg-mehr summary{cursor:pointer;font-weight:600;padding:var(--sp-2) 0;list-style:none}
.wg-mehr summary::-webkit-details-marker{display:none}
.wg-mehr summary::before{content:'›';display:inline-block;width:14px;transition:transform .15s}
.wg-mehr[open] summary::before{transform:rotate(90deg)}
.wg-eintrag-knoepfe .knopf,.wg-bau .zurueck-leiste .knopf{min-height:44px}
.wg-liste{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-3)}
.wg-eintrag{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--l-rand-stark,var(--border))}
.wg-eintrag-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.wg-eintrag-knoepfe{display:flex;flex-wrap:wrap;gap:var(--sp-2)}
.wg-schritte{padding-left:var(--sp-5);line-height:1.6}
.wg-schritte li{margin-bottom:var(--sp-2)}
