/* =====================================================================
   Zahnarztpraxis Galatea – Design-Grundlage (abgeleitet aus Kann eGbR, gleiche Klassen)
   Primär: Braunschwarz #3B2F2A · Akzent: Galatea-Gold #DAA555 · Schriften: Bitter / Cabin
   Reines CSS, keine Abhängigkeiten. Schriften liegen lokal in ./fonts/.
   Farbherkunft: Gold #DAA555 und Creme #EEE7DD = main.css der Website (häufigste Farben); Braunschwarz #3B2F2A = abgeleitet (Website nutzt Dunkelgrau #515151 und warme Dunkeltöne in Fotos; Nutzerangabe „Braunschwarz/Gold“); Logo-Gold #968764 = Farbe der Logo-PNGs.

   KONTRAST (WCAG 2.1, berechnet):
   - Text #2B2622 auf Hintergrund #FAF7F2.......................... 14,0 : 1
   - Nebentext #5E5650 auf Hintergrund............................. 6,7 : 1
   - Weiß auf Braunschwarz #3B2F2A................................. 12,9 : 1
   - Dunkler Text #2B2622 auf Gold #DAA555......................... 6,8 : 1
   - Gold #DAA555 auf Hintergrund (NIE als Text!).................. 2,1 : 1
   - Weiß auf Gold (NIE!).......................................... 2,2 : 1
   - Gold auf Braunschwarz (Linien/Icons; Text nur ≥ 24 px)........ 5,8 : 1
   - Fehler #A33A2B auf Weiß....................................... 6,6 : 1
   - Erfolg #3F7D4E auf Weiß....................................... 4,9 : 1
   - Warnung #8A4B12 auf Weiß...................................... 6,8 : 1
   - Logo-Gold #968764 auf Hintergrund (nur Logo, kein Text)....... 3,3 : 1
   Gold sparsam: aktiver Menüpunkt (Linie), Zähler-Badge, Hervorhebung, Hauptbutton der Website (dunkle Schrift).
   ===================================================================== */

@font-face{font-family:"Bitter";src:url("../fonts/Bitter-Medium.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Bitter";src:url("../fonts/Bitter-SemiBold.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Cabin";src:url("../fonts/Cabin-Regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Cabin";src:url("../fonts/Cabin-SemiBold.woff2") format("woff2");font-weight:600;font-display:swap}

:root{
  /* Grundfarben Galatea */
  --marke:#3B2F2A; --marke-dunkel:#2A211D; --marke-hell:#F2EDE6; --marke-zart:#E3D9CD;
  --gold:#DAA555; --gold-hell:#F8EEDB; --gold-logo:#968764;
  --papier:#FAF7F2; --weiss:#FFFFFF; --tinte:#2B2622;
  /* Semantik */
  --c-hintergrund:var(--papier);
  --c-flaeche:var(--weiss);
  --c-flaeche-2:#EEE7DD;
  --c-text:var(--tinte);
  --c-text-leise:#5E5650;          /* 6,7 : 1 auf Hintergrund */
  --c-linie:#E6DED2;
  --c-linie-stark:#CDBFAE;
  --c-primaer:var(--marke);
  --c-primaer-hover:var(--marke-dunkel);
  --c-erfolg:#3F7D4E;  --c-erfolg-bg:#E6F0E8;
  --c-fehler:#A33A2B;  --c-fehler-bg:#F8E4E0;
  --c-warnung:#8A4B12; --c-warnung-bg:#F8E9D9;
  --c-akzent:var(--gold); --c-akzent-bg:var(--gold-hell);
  --c-fokus:var(--gold);
  /* Schriften (wie Praxis-Website) */
  --f-titel:"Bitter",Georgia,"Times New Roman",serif;
  --f-text:"Cabin",system-ui,"Segoe UI",Roboto,Arial,sans-serif;
  --t-xs:.75rem; --t-s:.875rem; --t-m:1rem; --t-l:1.2rem; --t-xl:1.44rem; --t-2xl:1.73rem; --t-3xl:2.07rem;
  --a-1:4px; --a-2:8px; --a-3:12px; --a-4:16px; --a-5:24px; --a-6:32px; --a-7:48px;
  --r-s:4px; --r-m:8px; --r-l:12px; --r-rund:999px;
  --s-1:0 1px 2px rgba(0,0,0,.06); --s-2:0 4px 14px rgba(0,0,0,.09);
}

*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--c-hintergrund);color:var(--c-text);font:400 var(--t-m)/1.5 var(--f-text);-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--f-titel);font-weight:500;line-height:1.2;margin:0 0 var(--a-3)}
h1{font-size:var(--t-3xl)} h2{font-size:var(--t-2xl)} h3{font-size:var(--t-xl)}
.leise{color:var(--c-text-leise);font-size:var(--t-s)}
.betrag{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap;text-align:right}
.betrag.eingang{color:var(--c-erfolg)} .betrag.ausgang{color:var(--c-fehler)}
:focus-visible{outline:3px solid var(--c-fokus);outline-offset:2px}

/* Layout mit Seitenleiste */
.app{display:flex;min-height:100vh}
.inhalt{flex:1;padding:var(--a-5);max-width:1200px}
.seitenleiste{width:232px;flex-shrink:0;background:var(--marke);color:#fff;padding:var(--a-4) 0}
.seitenleiste .marke{display:flex;align-items:center;gap:var(--a-3);padding:0 var(--a-4) var(--a-5)}
.seitenleiste .marke img{height:40px;max-width:100%}
.seitenleiste a{display:flex;justify-content:space-between;align-items:center;padding:10px var(--a-4) 10px 13px;color:#fff;text-decoration:none;border-left:3px solid transparent}
.seitenleiste a:hover{background:rgba(255,255,255,.08)}
.seitenleiste a.aktiv{border-left-color:var(--c-akzent);background:rgba(255,255,255,.12);font-weight:600}
@media (max-width:760px){
  .app{flex-direction:column}
  .seitenleiste{width:auto;display:flex;overflow-x:auto;padding:0}
  .seitenleiste .marke{display:none}
  .seitenleiste a{border-left:0;border-bottom:3px solid transparent;white-space:nowrap}
  .seitenleiste a.aktiv{border-bottom-color:var(--c-akzent)}
  .inhalt{padding:var(--a-4)}
}

/* Buttons (mind. 40px hoch – Touch auf Surface/Handy) */
.btn{display:inline-flex;align-items:center;gap:var(--a-2);min-height:40px;padding:0 var(--a-4);border-radius:var(--r-m);border:1px solid transparent;font:600 var(--t-s) var(--f-text);cursor:pointer;text-decoration:none}
.btn-primaer{background:var(--c-primaer);color:#fff}
.btn-primaer:hover{background:var(--c-primaer-hover)}
.btn-sekundaer{background:var(--c-flaeche);color:var(--c-primaer);border-color:var(--c-linie-stark)}
.btn-sekundaer:hover{background:var(--marke-hell)}
.btn-gefahr{background:var(--c-flaeche);color:var(--c-fehler);border-color:var(--c-linie-stark)}
.btn:disabled{opacity:.5;cursor:not-allowed}

/* Formulare */
.feld{display:flex;flex-direction:column;gap:var(--a-1);margin-bottom:var(--a-4)}
.feld label{font-size:var(--t-s);font-weight:600}
.eingabe{min-height:40px;padding:0 var(--a-3);border:1px solid var(--c-linie-stark);border-radius:var(--r-m);background:var(--c-flaeche);font:var(--t-m) var(--f-text);color:var(--c-text)}
.eingabe:focus{border-color:var(--c-primaer);outline:3px solid var(--marke-zart)}
.feld .fehlertext{color:var(--c-fehler);font-size:var(--t-xs)}

/* Karte */
.karte{background:var(--c-flaeche);border:1px solid var(--c-linie);border-radius:var(--r-l);padding:var(--a-4);box-shadow:var(--s-1)}

/* Tabelle */
.tabelle{width:100%;border-collapse:collapse;background:var(--c-flaeche);border:1px solid var(--c-linie);border-radius:var(--r-l);overflow:hidden;font-size:var(--t-s)}
.tabelle th{text-align:left;font-weight:600;color:var(--c-text-leise);background:var(--c-flaeche-2);padding:var(--a-2) var(--a-3);border-bottom:1px solid var(--c-linie)}
.tabelle td{padding:var(--a-3);border-bottom:1px solid var(--c-linie)}
.tabelle tr:last-child td{border-bottom:0}
.tabelle tbody tr:hover{background:var(--papier)}

/* Liste (Abgleich) */
.liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--a-2)}
.liste>li{background:var(--c-flaeche);border:1px solid var(--c-linie);border-radius:var(--r-m);padding:var(--a-3)}
.zeile{display:flex;justify-content:space-between;align-items:center;gap:var(--a-3);flex-wrap:wrap}
.vorschlag{margin-top:var(--a-2);padding:var(--a-2);border-radius:var(--r-s);background:var(--marke-hell)}

/* Badges */
.badge{display:inline-block;padding:2px 8px;border-radius:var(--r-rund);font-size:var(--t-xs);font-weight:600;background:var(--marke-zart);color:var(--marke-dunkel)}
.badge-erfolg{background:var(--c-erfolg-bg);color:var(--c-erfolg)}
.badge-fehler{background:var(--c-fehler-bg);color:var(--c-fehler)}
.badge-warnung{background:var(--c-warnung-bg);color:var(--c-warnung)}
.badge-akzent{background:var(--c-akzent);color:var(--tinte)}   /* Gold nur mit dunkler Schrift */

/* Hinweise */
.hinweis{padding:var(--a-3) var(--a-4);border-radius:var(--r-m);border-left:4px solid var(--c-primaer);background:var(--marke-hell);font-size:var(--t-s)}
.hinweis-erfolg{border-color:var(--c-erfolg);background:var(--c-erfolg-bg)}
.hinweis-fehler{border-color:var(--c-fehler);background:var(--c-fehler-bg)}
.hinweis-warnung{border-color:var(--c-warnung);background:var(--c-warnung-bg)}
.hinweis-akzent{border-color:var(--c-akzent);background:var(--c-akzent-bg)}

/* =====================================================================
   ERWEITERUNG v2 – Seiten-Bausteine (Mockups)
   ===================================================================== */
.seitenkopf{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--a-4);flex-wrap:wrap;margin-bottom:var(--a-5)}
.seitenkopf h1{margin:0}
.seitenkopf .leise{margin:var(--a-1) 0 0}
.aktionen{display:flex;gap:var(--a-2);flex-wrap:wrap;align-items:center}
.beispiel{display:inline-block;font-size:var(--t-xs);font-weight:600;padding:2px 8px;border-radius:var(--r-rund);background:var(--c-warnung-bg);color:var(--c-warnung);border:1px dashed var(--c-warnung)}
.raster{display:grid;gap:var(--a-4)}
.raster-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.raster-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.raster-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.abschnitt{margin-top:var(--a-6)}
.abschnitt>h2{font-size:var(--t-xl)}
.karte h3{font-size:var(--t-l);margin-bottom:var(--a-2)}
.kennzahl{font:500 var(--t-2xl)/1.1 var(--f-titel);font-variant-numeric:tabular-nums}
.kennzahl-label{font-size:var(--t-s);color:var(--c-text-leise)}
.fortschritt{height:10px;border-radius:var(--r-rund);background:var(--c-flaeche-2);overflow:hidden;margin:var(--a-2) 0}
.fortschritt>span{display:block;height:100%;background:var(--c-primaer);border-radius:inherit}
.fortschritt.ok>span{background:var(--c-erfolg)}
.punkt{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--c-erfolg);margin-right:var(--a-2);vertical-align:middle}
.punkt.warnung{background:var(--c-warnung)} .punkt.fehler{background:var(--c-fehler)}
.stapel{display:flex;flex-direction:column;gap:var(--a-2)}
.trenn{display:flex;justify-content:space-between;gap:var(--a-3);padding:var(--a-2) 0;border-bottom:1px solid var(--c-linie)}
.trenn:last-child{border-bottom:0}
kbd{font:600 var(--t-xs) var(--f-text);padding:1px 6px;border:1px solid var(--c-linie-stark);border-bottom-width:2px;border-radius:var(--r-s);background:var(--c-flaeche);color:var(--c-text)}
.tastenleiste{display:flex;gap:var(--a-4);flex-wrap:wrap;font-size:var(--t-xs);color:var(--c-text-leise);padding:var(--a-2) var(--a-3);background:var(--c-flaeche-2);border-radius:var(--r-m);margin-bottom:var(--a-3)}
/* Abgleich: geteilte Ansicht */
.geteilt{display:grid;grid-template-columns:minmax(320px,5fr) 7fr;gap:var(--a-4);align-items:start}
.umsatzliste{list-style:none;margin:0;padding:0;background:var(--c-flaeche);border:1px solid var(--c-linie);border-radius:var(--r-l);overflow:hidden}
.umsatzliste li{border-bottom:1px solid var(--c-linie)}
.umsatzliste li:last-child{border-bottom:0}
.umsatzliste a{display:grid;grid-template-columns:1fr auto;gap:2px var(--a-3);padding:var(--a-3);color:inherit;text-decoration:none;border-left:3px solid transparent}
.umsatzliste a:hover{background:var(--papier)}
.umsatzliste a[aria-current="true"]{background:var(--marke-hell);border-left-color:var(--c-primaer)}
.umsatzliste .klein{font-size:var(--t-xs);color:var(--c-text-leise)}
.detail{position:sticky;top:var(--a-4)}
.belegvorschau{background:var(--c-flaeche-2);border:1px solid var(--c-linie);border-radius:var(--r-m);aspect-ratio:1/1.1;max-height:340px;display:flex;align-items:center;justify-content:center;color:var(--c-text-leise);font-size:var(--t-s)}
.blatt{width:62%;height:86%;background:var(--weiss);box-shadow:var(--s-2);padding:var(--a-4);font-size:10px;line-height:1.6;color:var(--c-text-leise)}
.blatt b{color:var(--c-text)}
.felder{display:grid;grid-template-columns:auto 1fr;gap:var(--a-1) var(--a-4);font-size:var(--t-s);margin:var(--a-3) 0}
.felder dt{color:var(--c-text-leise)} .felder dd{margin:0;font-weight:600}
.auswahl{display:flex;gap:var(--a-2);flex-wrap:wrap}
.auswahl label{display:flex;align-items:center;gap:var(--a-1);padding:6px 12px;border:1px solid var(--c-linie-stark);border-radius:var(--r-rund);font-size:var(--t-s);cursor:pointer;background:var(--c-flaeche)}
.auswahl input{accent-color:var(--marke)}
.auswahl label:has(input:checked){border-color:var(--c-primaer);background:var(--marke-hell);font-weight:600}
select.eingabe{appearance:auto}
/* Belege */
.ablage{border:2px dashed var(--c-linie-stark);border-radius:var(--r-l);padding:var(--a-5);text-align:center;background:var(--c-flaeche)}
.quellen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--a-3);margin-top:var(--a-4)}
.quelle{display:flex;flex-direction:column;align-items:center;gap:var(--a-1);padding:var(--a-4) var(--a-2);border:1px solid var(--c-linie);border-radius:var(--r-m);background:var(--c-flaeche);text-decoration:none;color:var(--c-text);font-weight:600;font-size:var(--t-s)}
.quelle .ico{font-size:1.6rem}
.quelle.haupt{background:var(--c-primaer);color:#fff;border-color:var(--c-primaer)}
.quelle .leise{font-weight:400}
.quelle.haupt .leise{color:var(--marke-zart)}
.nur-mobil{display:none}
/* Schalter */
.schalter{display:flex;align-items:center;gap:var(--a-3);cursor:pointer}
.schalter input{appearance:none;width:44px;height:24px;border-radius:var(--r-rund);background:var(--c-linie-stark);position:relative;cursor:pointer;margin:0;flex-shrink:0}
.schalter input::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:left .15s}
.schalter input:checked{background:var(--c-primaer)}
.schalter input:checked::after{left:23px}
.tabelle td.rechts,.tabelle th.rechts{text-align:right}
.tabelle-scroll{overflow-x:auto}
.protokoll{font-size:var(--t-xs)}
/* Unter-Navigation / Tabs */
.reiter{display:flex;gap:var(--a-1);border-bottom:1px solid var(--c-linie);margin-bottom:var(--a-4)}
.reiter a{padding:var(--a-2) var(--a-3);color:var(--c-text-leise);text-decoration:none;border-bottom:3px solid transparent;font-weight:600;font-size:var(--t-s)}
.reiter a[aria-current="page"]{color:var(--c-text);border-bottom-color:var(--c-primaer)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.seitenleiste .fuss{margin-top:auto;padding:var(--a-4);font-size:var(--t-xs);opacity:.75}
.seitenleiste{display:flex;flex-direction:column}
@media (min-width:761px){.seitenleiste{position:sticky;top:0;height:100vh}}
@media (max-width:1100px){.raster-4{grid-template-columns:repeat(2,minmax(0,1fr))}.geteilt{grid-template-columns:1fr}.detail{position:static}}
@media (max-width:760px){
  .raster-2,.raster-3,.raster-4{grid-template-columns:1fr}
  .quellen{grid-template-columns:1fr 1fr}
  .nur-desktop{display:none}
  .nur-mobil{display:flex}
  .seitenleiste .fuss{display:none}
  .seitenkopf h1{font-size:var(--t-2xl)}
  .tastenleiste{display:none}
  .seitenleiste{flex-direction:row;position:sticky;top:0;z-index:10}
  .reiter{overflow-x:auto}
  .reiter a{white-space:nowrap}
  .tabelle .nur-desktop{display:none}
}

/* ---------- Ergänzungen 14.10.2026: statt Inline-Styles in Templates ---------- */
.abstand-oben-3{margin-top:var(--a-3)}
.abstand-oben-4{margin-top:var(--a-4)}
fieldset.feld{border:0;padding:0;margin-inline:0;min-width:0}
.ablage .nur-mobil{justify-content:center}
/* Login-Seite */
.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--a-4)}
.login .karte{width:100%;max-width:400px;padding:var(--a-6);box-shadow:var(--s-2)}
.login .logo{display:block;margin:0 auto var(--a-6);height:120px}
.login h2{text-align:center;font-size:var(--t-xl)}
.login .btn{width:100%;justify-content:center}
.login .fuss{text-align:center;margin-top:var(--a-5)}

/* ===== Praxis-Ergänzungen ===== */
/* Marke in der Seitenleiste: Signet (Raster-PNG) + Praxisname als Text */
.seitenleiste .marke img{height:44px;width:44px}
.marke-name{font-family:var(--f-titel);font-weight:500;line-height:1.15;letter-spacing:.06em;text-transform:uppercase;font-size:var(--t-xs)}
.marke-name strong{display:block;font-size:var(--t-m);font-weight:600;letter-spacing:.1em}
/* Login: Logo ist hell (weiße Schrift) -> steht auf dunklem Kopf der Karte */
.login-marke{background:var(--marke);margin:calc(-1*var(--a-6)) calc(-1*var(--a-6)) var(--a-5);padding:var(--a-5);border-radius:var(--r-l) var(--r-l) 0 0;border-bottom:3px solid var(--c-akzent)}
.login .login-marke .logo{margin:0 auto;height:150px}
/* Styleguide-Hilfen */
.logo-flaeche{display:flex;align-items:center;justify-content:center;height:180px}
.logo-flaeche.dunkel{background:var(--marke)}
.logo-flaeche img{max-height:150px}
.farbmuster{display:flex;gap:var(--a-2);flex-wrap:wrap}
.farbmuster .karte{min-width:150px}
.fm-marke{background:var(--marke);color:#fff}.fm-gold{background:var(--gold);color:var(--tinte)}.fm-tinte{background:var(--tinte);color:#fff}
.fm-papier{background:var(--papier)}.fm-flaeche2{background:var(--c-flaeche-2)}.fm-goldlogo{background:var(--gold-logo,var(--gold));color:var(--tinte)}
.fm-erfolg{background:var(--c-erfolg);color:#fff}.fm-fehler{background:var(--c-fehler);color:#fff}.fm-warnung{background:var(--c-warnung);color:#fff}
.inhalt a:not(.btn),.web main a:not(.btn),.web-abschnitt a:not(.btn){color:var(--marke)}
.kontrast td:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}

/* ===== Website (Startseite) ===== */
.web{background:var(--c-hintergrund)}
.web-kopf{position:sticky;top:0;z-index:10;background:var(--marke);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:var(--a-4);padding:var(--a-3) var(--a-6);border-bottom:3px solid var(--c-akzent)}
.web-kopf .marke{display:flex;align-items:center;gap:var(--a-3);color:#fff;text-decoration:none}
.web-kopf .marke img{height:40px;width:40px}
.web-nav{display:flex;gap:var(--a-5);flex-wrap:wrap}
.web-nav a{color:#fff;text-decoration:none;padding:var(--a-2) 0;border-bottom:2px solid transparent}
.web-nav a:hover,.web-nav a[aria-current]{border-bottom-color:var(--c-akzent)}
.btn-gold{background:var(--gold);color:var(--tinte);border:1px solid var(--gold);font-weight:600}
.btn-gold:hover{filter:brightness(1.05)}
.web-hero{background:var(--marke);background-image:linear-gradient(160deg,var(--marke) 0%,var(--marke-dunkel) 100%);color:#fff;text-align:center;padding:var(--a-7) var(--a-5) calc(var(--a-7)*1.5)}
.web-hero .logo{height:200px;max-width:100%}
.web-hero h1{font-size:2.6rem;margin:var(--a-5) 0 var(--a-3);font-weight:600}
.web-hero p{font-size:var(--t-l);opacity:.9;margin:0 0 var(--a-5)}
.web-abschnitt{max-width:1120px;margin:0 auto;padding:var(--a-7) var(--a-5)}
.web-abschnitt>h2{text-align:center}
.web-abschnitt>h2::after{content:"";display:block;width:56px;height:3px;background:var(--c-akzent);margin:var(--a-3) auto 0}
.web-abschnitt>.leise{text-align:center;max-width:640px;margin:0 auto var(--a-6)}
.web-band{background:var(--c-flaeche-2)}
.leistung h3{font-size:var(--t-l)}
.leistung .signet{height:40px;width:40px;margin-bottom:var(--a-3)}
.team-bild{aspect-ratio:4/3;border-radius:var(--r-m);background:var(--marke-hell);border:1px dashed var(--c-linie-stark);display:flex;align-items:center;justify-content:center;color:var(--c-text-leise);font-size:var(--t-s);margin-bottom:var(--a-3)}
.zeiten{width:100%;border-collapse:collapse}
.zeiten td{padding:var(--a-2) 0;border-bottom:1px solid var(--c-linie)}
.zeiten td:last-child{text-align:right;font-variant-numeric:tabular-nums}
.web-fuss{background:var(--marke-dunkel);color:#fff;padding:var(--a-6) var(--a-5);font-size:var(--t-s)}
.web-fuss .innen{max-width:1120px;margin:0 auto;display:flex;justify-content:space-between;gap:var(--a-5);flex-wrap:wrap}
.web-fuss a{color:#fff}
@media (max-width:760px){
  .web-kopf{padding:var(--a-3) var(--a-4)} .web-kopf .web-nav{display:none}
  .web-hero h1{font-size:var(--t-2xl)} .web-hero .logo{height:150px}
}

/* ===== Ergänzungen Praxis-Nachrichten (20.10.2026) – nur Tokens, gleiche Datei in beiden Praxen ===== */
.verlauf{display:flex;flex-direction:column;gap:var(--a-3)}
.nachricht{max-width:78%;padding:var(--a-3) var(--a-4);border:1px solid var(--c-linie);border-radius:var(--r-l);background:var(--c-flaeche);box-shadow:var(--s-1);white-space:pre-wrap;overflow-wrap:anywhere}
.nachricht.ein{align-self:flex-start}
.nachricht.aus{align-self:flex-end;background:var(--marke-hell);border-color:var(--marke-zart)}
.nachricht .meta{display:block;margin-top:var(--a-2);font-size:var(--t-xs);color:var(--c-text-leise);white-space:normal}
.nachricht .meta .fehler{color:var(--c-fehler);font-weight:600}
.eingabe.antwortfeld{width:100%;min-height:120px;padding:var(--a-3);line-height:1.5;resize:vertical}
.tabelle tr.offen td:first-child{box-shadow:inset 4px 0 0 var(--c-akzent)}
.tabelle .vorschau{max-width:46ch;overflow-wrap:anywhere}
.seitenleiste form{margin:0}
.seitenleiste .btn-abmelden{margin-top:var(--a-3);width:100%;justify-content:center;background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.seitenleiste .btn-abmelden:hover{background:rgba(255,255,255,.08)}
.zurueck{display:inline-block;margin-bottom:var(--a-3);font-size:var(--t-s)}
.login .karte.schmal{max-width:400px}
@media (max-width:760px){.nachricht{max-width:92%}}
.login a{color:var(--marke)}
@media (max-width:760px){
  .seitenleiste .fuss{display:flex;align-items:center;margin:0 0 0 auto;padding:0 var(--a-3);opacity:1}
  .seitenleiste .fuss-text{display:none}
  .seitenleiste .btn-abmelden{margin:0;width:auto;min-height:32px;padding:0 var(--a-3)}
}
/* Anmeldung: neutrales Salbei für beide Praxen (Weiß auf #4E6B5A = 5,9 : 1) */
body.salbei{--marke:#4E6B5A;--marke-dunkel:#3C5446;--marke-hell:#EAF0EC;--marke-zart:#CFDDD4;--papier:#F3F6F2;--tinte:#1F2A24;
  --c-hintergrund:#F3F6F2;--c-flaeche-2:#E4ECE6;--c-text:#1F2A24;--c-text-leise:#4F5D54;--c-linie:#DCE4DE;--c-linie-stark:#BFCDC3;--c-primaer:#4E6B5A;--c-primaer-hover:#3C5446;--gold:#D3AF59;--c-akzent:#D3AF59;--c-fokus:#D3AF59}
.login-text{color:#fff;text-align:center}
.login-signets{display:flex;justify-content:center;gap:var(--a-3);margin-bottom:var(--a-3)}
.login-signets img{width:56px;height:56px;padding:6px;border-radius:50%;background:#fff}
.login-titel{font:500 var(--t-2xl)/1.2 var(--f-titel)}
.login-unter{margin-top:var(--a-1);font-size:var(--t-s);opacity:.9}
/* Praxis-Kennzeichen in Listen (beide Praxen sichtbar) */
.badge.standort-galatea{background:#F2EDE6;color:#3B2F2A;border:1px solid #CDBFAE}
.badge.standort-malakoff{background:#E7EDF2;color:#13354F;border:1px solid #CBD8E2}
/* Praxis-Farben fuer Nachrichten beider Praxen (Galatea Braun/Gold, Malakoff Navy/Gold) */
.tabelle tr.praxis-galatea td{background:#F8F3EC}
.tabelle tr.praxis-malakoff td{background:#EEF3F7}
.tabelle tr.praxis-galatea td:first-child{box-shadow:inset 4px 0 0 #3B2F2A}
.tabelle tr.praxis-malakoff td:first-child{box-shadow:inset 4px 0 0 #13354F}
.tabelle tr.praxis-galatea.offen td:first-child,.tabelle tr.praxis-malakoff.offen td:first-child{box-shadow:inset 4px 0 0 #3B2F2A,inset 8px 0 0 #D3AF59}
.tabelle tr.praxis-malakoff.offen td:first-child{box-shadow:inset 4px 0 0 #13354F,inset 8px 0 0 #D3AF59}
.tabelle tr.praxis-galatea:hover td{background:#F2EADF}
.tabelle tr.praxis-malakoff:hover td{background:#E2EBF2}
.karte.verlauf-galatea{border-left:5px solid #3B2F2A;background:#FBF8F4}
.karte.verlauf-malakoff{border-left:5px solid #13354F;background:#F5F8FA}
.verlauf-galatea .nachricht.ein{background:#FFFFFF;border-color:#E6DED2}
.verlauf-galatea .nachricht.aus{background:#EFE6DA;border-color:#D9CBB8}
.verlauf-malakoff .nachricht.ein{background:#FFFFFF;border-color:#D6E0E8}
.verlauf-malakoff .nachricht.aus{background:#DCE7F0;border-color:#BCCDDA}
