/* mvz-karte.css — Anordnung des Karten-Bauteils (Mike, 2026-10-02; drei Ansichten 04.10.2026; übereinander 27.10.2026).
 * Eine Größe am Layout: data-karte-ansicht = liste | geteilt | karte | nur | uebereinander.
 *   liste    nur die Liste; der Wahlschalter steht oben rechts im Inhalt
 *   geteilt  Liste links in fester Breite (--karte-liste, Vorgabe 45 %), Griff, Karte klebt rechts;
 *            der Wahlschalter sitzt in der Kartenecke (nur ab 768 px, E112; darunter Mitte gesperrt mit Hinweis)
 *   karte    Karte bildschirmfüllend im Vordergrund, Wahlschalter oben rechts darauf
 *   nur      Blöcke ohne Liste: Karte im Fluss, kein Schalter
 *   uebereinander  Anordnung des Blocks (E138): Liste oben (ab sechs Zeilen im Rollrahmen mit Griff), Karte darunter mit Griff
 *            an der Unterkante, kein Schalter, Legende in der Kartenecke
 * Ein Elementsatz, mehrere Anordnungen — der Wechsel ist ein Umbau am Platz, kein Neubau. */

.karte-layout { position: relative; }
.karte-liste { padding-top: 16px; }   /* Luft unter dem Orientierungsband: 16 wie die MVZ-Seiten ohne Karte (main.css .mvz-leiste-band + .container); E47 */
.karte-layout.karte-ohne { display: block; }

/* Wahlschalter: eine Gruppe, die gedrückte Stellung zeigt, wo man ist, die anderen, wohin man kann.
   .karte-schalter trägt den Platz (Pille + Hinweis darunter, rechtsbündig), .karte-wahl ist die Pille. */
.karte-schalter { display: inline-flex; flex-direction: column; align-items: flex-end; gap: .35rem; z-index: 20; }
.karte-wahl {
  display: inline-flex; align-items: stretch;
  border: 1px solid var(--colorB, #1f4e79); border-radius: 999px; background: rgba(255,255,255,.85); overflow: hidden;   /* ein Hauch Transparenz über der Karte (Mike, 18.10. spät) */
  box-shadow: 0 1px 4px rgba(0,0,0,.15);
}
/* Vollbild und „nur" (Mike, 18.10. spät): die Legenden-Pille links neben dem Wahlschalter in einer Reihe, der Hinweis bleibt darunter */
.karte-layout[data-karte-ansicht="karte"] .karte-schalter, .karte-layout[data-karte-ansicht="nur"] .karte-schalter { flex-direction: row-reverse; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: .35rem .6rem; }   /* row-reverse: der Schalter zuerst (rechts), die Legende links daneben; passt es nicht, bricht die Legende unter den Schalter — nicht darüber (Mike, 18.10. spät) */
.karte-schalter .karte-hinweis { flex-basis: 100%; }
@media (max-width: 767.98px) {   /* schmal: nur das ⓘ, ohne das Wort — „zu markant, verschenkt Bereich" (Mike, 18.10. spät) */
  .karte-legende .legende-trigger .wort { display: none; }
  .karte-legende .legende-trigger { padding: .15rem .2rem; }
}
/* Mitte gesperrt (schmal, E112): bleibt sichtbar (Kontrast ≥ 3 : 1), ein Tipp zeigt den Hinweis darunter und merkt den Wunsch */
.karte-wahl button[aria-disabled="true"], .karte-wahl button[aria-disabled="true"]:hover { color: #6b6259; background: #f1eee9; cursor: default; }
.karte-hinweis {   /* so breit wie sein Text, eine Zeile wenn sie passt; Text linksbündig, die Fläche sitzt rechts unter der Pille (Mike, 18.10.) */
  margin: 0; padding: .3rem .6rem; width: max-content; max-width: min(24rem, 100%); text-align: left;
  font-size: .85rem; line-height: 1.3; color: #3b3732; background: #fff; border-radius: 6px; box-shadow: 0 1px 4px rgba(0,0,0,.2);
}
.karte-hinweis[hidden] { display: none; }
.karte-wahl button {
  display: inline-flex; align-items: center; gap: .35rem;
  padding: .3rem .7rem; border: 0; border-left: 1px solid color-mix(in oklab, var(--colorB, #1f4e79), transparent 70%);
  background: transparent; color: var(--colorB, #1f4e79); font: inherit; font-size: .9rem; line-height: 1.2; cursor: pointer;
}
.karte-wahl button:first-child { border-left: 0; }
.karte-wahl button:hover { background: color-mix(in oklab, var(--colorB, #1f4e79), transparent 90%); }
.karte-wahl button[aria-pressed="true"] { background: var(--colorB, #1f4e79); color: #fff; cursor: default; }
.karte-wahl button:focus-visible { outline: 2px solid var(--colorB, #1f4e79); outline-offset: -2px; }
/* Legende auf der Karte (Mike, 18.10.): nur, wenn die Karte allein zu sehen ist — Vollbild und Modus „nur". Ein markantes ⓘ in
   der Schemafarbe, dahinter leise das Wort; dieselbe Liste wie im Listenkopf (rollen_tags kartenlegende karte=True), main.js
   klappt sie auf. Im Vollbild liegt die Karte bei z 1040 — die Liste muss darüber. */
.karte-schalter .karte-legende { display: none; }   /* .karte-schalter davor: main.css .legende (gleich spezifisch, später geladen) setzte sonst inline-block */
.karte-layout[data-karte-ansicht="karte"] .karte-schalter .karte-legende, .karte-layout[data-karte-ansicht="nur"] .karte-schalter .karte-legende { display: inline-block; margin: 0; }   /* links vor dem Wahlschalter durch row-reverse der Reihe */
.karte-legende .legende-trigger {
  display: inline-flex; align-items: center; gap: .3rem; padding: .15rem .7rem .15rem .2rem; opacity: 1; text-decoration: none;
  background: rgba(255,255,255,.5); border-radius: 999px; box-shadow: 0 1px 4px rgba(0,0,0,.18); color: #6b6259; font-size: .9rem; line-height: 1.2;   /* halb durchscheinend, leiser Schatten — das Weiß fiel zu sehr auf (Mike, 18.10. spät; 72 % „kann noch transparenter") */
}
.karte-legende .legende-trigger::before { content: none; }   /* das ⓘ ist hier das SVG (main.css setzt seit 18.10. ::before) */
.karte-legende .info circle { fill: var(--colorB, #1f4e79); }
.karte-legende .info path { stroke: #fff; }
.karte-layout[data-karte-ansicht="karte"] .karte-legende .legende-liste { z-index: 1060; }
/* „nur" (Blöcke ohne Liste): kein Wahlschalter, aber die Legende — in der Kartenecke oben rechts */
.karte-layout[data-karte-ansicht="nur"] .karte-wahl, .karte-layout[data-karte-ansicht="nur"] .karte-hinweis { display: none; }
.karte-layout[data-karte-ansicht="nur"] .karte-schalter { position: absolute; top: .75rem; right: 1.25rem; }

/* liste: Schalter oben rechts im Inhalt, Karte und Griff weg. Schmal (unter 992, der Menü-Schwelle) reicht der Platz neben
   dem Titel nicht — der Schalter lag über „Gemeinschaften" (Mike, 18.10., iPhone): dann in den Fluss, eigene Zeile, rechts.
   Die Überlappung mit dem Raster im Kopf (Mike, 18.10. spät, „Bündnis West") löst nicht der Schalter, sondern der Kopf: Legende und
   Symbol stehen seitdem in der Infozeile unter dem Titel (main.css .unter.zeile), die Titelzeile ist rechts frei. */
.karte-layout[data-karte-ansicht="liste"] .karte-schalter { position: absolute; top: .75rem; right: 1.25rem; }
@media (max-width: 991.98px) {
  .karte-layout[data-karte-ansicht="liste"] .karte-schalter { position: static; display: flex; margin: .75rem 1.25rem 0 0; }
}
.karte-layout[data-karte-ansicht="liste"] .karte-kasten,
.karte-layout[data-karte-ansicht="liste"] .karte-griff { display: none; }
/* CMS-Block Funktionsträger-Karte (.karten_block, 26.10.2026): kein Seitenkopf über der Tabelle — nur die Liste braucht oben Platz
   für den Schalter, sonst lag er über „Telefon · Gemeinschaft". Schmal steht er ohnehin im Fluss (oben). */
.karten_block[data-karte-ansicht="liste"] .karte-liste { padding-top: 3.25rem; }
@media (max-width: 991.98px) {
  .karten_block[data-karte-ansicht="liste"] .karte-liste { padding-top: 0; }
}

/* die Karte selbst */
.karte-kasten { background: #e9e4dd; border-radius: 6px; overflow: hidden; }
#karte { width: 100%; height: 100%; min-height: 320px; }
.karte-layout[data-karte-ansicht="nur"] #karte { height: 72vh; }
.karte-layout[data-karte-ansicht="nur"] .karte-griff { display: none; }

/* Marker: rundes Schild mit Symbol (SVG im DOM); Puls = „hier" (von der Liste aus) */
.karte-marker { background: none; border: 0; }
.karte-marker svg { display: block; filter: drop-shadow(0 1px 1.5px rgba(0,0,0,.35)); }
/* Puls = „hier" (von der Liste aus): deutlich groesser und mit Schein in der Akzentfarbe, damit er auch zwischen vielen
   Symbolen sofort ins Auge springt (Mike, 05.10.); der Marker liegt dabei obenauf (setZIndexOffset in mvz-karte.js) */
.karte-marker.karte-puls svg { animation: karte-puls .8s ease-in-out infinite; transform-origin: 50% 50%; }
@keyframes karte-puls {
  0%, 100% { transform: scale(1); filter: drop-shadow(0 1px 1.5px rgba(0,0,0,.35)); }
  50% { transform: scale(1.7); filter: drop-shadow(0 0 2px var(--colorD, #B3362B)) drop-shadow(0 0 8px var(--colorD, #B3362B)); }   /* 2 war zu heftig, 1,45 zu leise (Mike, 05.10.) */
}
.marker-cluster.karte-puls { animation: karte-puls-cluster .8s ease-in-out infinite; }
@keyframes karte-puls-cluster {
  50% { transform: scale(1.4); filter: drop-shadow(0 0 2px var(--colorD, #B3362B)) drop-shadow(0 0 8px var(--colorD, #B3362B)); }
}
/* Blinken = „das kam aus dem Bündel" (Mike, 18.10.): derselbe Puls, dreimal, dann Ruhe (mvz-karte.js blinken) */
.karte-marker.karte-blink svg { animation: karte-puls .6s ease-in-out 3; transform-origin: 50% 50%; }
.marker-cluster.karte-blink { animation: karte-puls-cluster .6s ease-in-out 3; }
.karte-schild { font-weight: 600; text-align: center; line-height: 1.25; }
.karte-schild small { display: block; font-weight: 400; color: #555; font-size: .85em; }
tr.karte-hervor > td { background: var(--colorDlight, #e9e4dd); }

/* geteilt: zwei Spalten mit Griff, Karte klebt; der Schalter liegt in derselben Zelle wie die Karte, oben rechts */
.karte-layout[data-karte-ansicht="geteilt"] {
  display: grid;
  grid-template-columns: min(var(--karte-liste, var(--karte-liste-min, 360px)), calc(100% - 348px)) 8px minmax(340px, 1fr);   /* nie breiter als der Platz neben der Karte (340 + Griff): kein Seiten-Ueberlauf bei gemerkter Breite. Mindestmaße 360 / 340 (E112: Schwelle 768) */
  align-items: start;
}
.karte-layout[data-karte-ansicht="geteilt"] .karte-liste { grid-column: 1; grid-row: 1; min-width: 0; }
.karte-layout[data-karte-ansicht="geteilt"] .karte-liste .container { width: auto; max-width: none; padding: 0 .5rem; }
.karte-liste td.karte-id { white-space: nowrap; }          /* Kennungen (8-466) brechen nie — mvz-karte.js setzt die Klasse */
.karte-liste td.karte-email { overflow-wrap: anywhere; min-width: 16ch; }   /* E-Mail: erst nach @ und vor Punkten (wbr), zur Not irgendwo — aber nie schmaler als 16 Zeichen, sonst verhungert die Spalte neben langen Funktionstexten */
/* Tabellen rollen in ihrem Rahmen; der Schatten-Rollbalken klebt am unteren Fensterrand (mvz-karte.js baut beides) */
.karte-rollen { overflow-x: auto; min-width: 0; }
.karte-rollbalken { position: sticky; bottom: 0; z-index: 5; overflow-x: auto; overflow-y: hidden; height: 14px; margin-top: -14px; background: color-mix(in oklab, var(--grund, #fff), transparent 20%); }
.karte-rollbalken > div { height: 1px; }
.karte-rollbalken[hidden] { display: none; }
/* Der Griff ist immer zu sehen (Mike, 18.10.2026, Firefox/macOS: „beiger Streifen" — macOS blendet Rollbalken-Griffe aus, solange niemand
   rollt; übrig blieb die leere Spur). Eigene Farben schalten in Firefox und Chrome auf dauerhaft sichtbare Balken. */
.karte-rollbalken { height: 10px; margin-top: -10px; background: none; scrollbar-width: thin; scrollbar-color: #b5ada2 transparent; }   /* nur der Griff, keine Fläche — so schmal wie der macOS-Balken (Mike, 18.10. spät: die beige Fläche war „viel, viel größer") */
.karte-rollbalken::-webkit-scrollbar { height: 6px; }
.karte-rollbalken::-webkit-scrollbar-track { background: transparent; }
.karte-rollbalken::-webkit-scrollbar-thumb { background: #b5ada2; border-radius: 3px; }
/* Spalten abgeschnitten: Kante verblasst, wo noch Spalten liegen (data-ueberlauf beim Rollen) */
.karte-rollen[data-ueberlauf="rechts"] { mask-image: linear-gradient(to right, #000 calc(100% - 48px), transparent); }
.karte-rollen[data-ueberlauf="links"]  { mask-image: linear-gradient(to right, transparent, #000 48px); }
.karte-rollen[data-ueberlauf="beide"]  { mask-image: linear-gradient(to right, transparent, #000 48px, #000 calc(100% - 48px), transparent); }
.karte-layout[data-karte-ansicht="geteilt"] .karte-griff { grid-column: 2; grid-row: 1; }
.karte-layout[data-karte-ansicht="geteilt"] .karte-kasten {
  grid-column: 3; grid-row: 1;
  --karte-rand: 4px;   /* so knapp wie der Abstand zur Trennlinie: Griffspalte 8 px, die Linie in der Mitte (Mike, 18.10. spät: oben und rechts „genauso knapp wie zu den Trennlinien"); davor .75rem, davor 16 px = Oberkante der Liste (05.10.) */
  position: sticky; top: var(--karte-rand); margin: var(--karte-rand) var(--karte-rand) 0 0;   /* Unterkante buendig am Fensterrand, der Fuss steht in der Textspalte */
  height: var(--karte-hoehe, calc(100vh - var(--karte-rand)));   /* nie hoeher als der Platz im Fenster (Mike, 19.10.2026): solange der Kopf im Bild ist, setzt mvz-karte.js
                                                                    die Hoehe beim Rollen auf Fensterunterkante minus Kartenoberkante — die Karte ist immer ganz zu sehen,
                                                                    waechst, wenn der Kopf wegrollt, und nichts bewegt die Seite unter dem Zeiger */
}
.karte-layout[data-karte-ansicht="geteilt"] .karte-schalter {
  grid-column: 3; grid-row: 1; justify-self: end; align-self: start;
  position: sticky; top: calc(4px + .75rem); margin: calc(4px + .75rem) calc(4px + .75rem) 0 0;   /* in der Kartenecke, klebt mit ihr (Kastenrand 4 px + .75rem Ecke) */
}
.karte-layout[data-karte-ansicht="geteilt"] .karte-wahl { box-shadow: 0 2px 8px rgba(0,0,0,.3); }
/* Griff: Rinne mit Haarlinie, darauf der Griffwulst (klebt auf halber Fensterhoehe) — das Zeichen fuer
   „hier teilt sich etwas, hier kann man ziehen" (Mike, 04.10.); beim Ueberfahren laenger, Akzentfarbe, Pfeile */
.karte-layout[data-karte-ansicht="geteilt"] .karte-griff {
  cursor: col-resize; align-self: stretch; position: relative; z-index: 6; border-radius: 4px;
  background: linear-gradient(to right, transparent 40%, #c9c2b8 40%, #c9c2b8 60%, transparent 60%);
}
.karte-layout[data-karte-ansicht="geteilt"] .karte-griff::before {
  content: ""; display: block; position: sticky; top: calc(var(--griff-mitte, 50vh) - 18px);   /* Mitte des sichtbaren Kartenteils, mvz-karte.js */
  width: 4px; height: 36px; margin: 0 auto; border-radius: 2px; background: #b5ada2;
  box-shadow: 0 0 0 2px var(--grund, #fff);
  transition: height .15s ease, background-color .15s ease;
}
.karte-layout[data-karte-ansicht="geteilt"] .karte-griff::after {
  content: "‹ ›"; display: block; position: sticky; top: calc(var(--griff-mitte, 50vh) + 26px);
  width: 40px; margin: 0 0 0 -16px; text-align: center; letter-spacing: .4em; padding-left: .4em;
  font-size: 18px; line-height: 1; font-weight: 700; color: var(--colorB, #1f4e79);
  opacity: 0; transition: opacity .15s ease; pointer-events: none;
}
/* Kompromiss-Modus (Mike, 04.10.): neben der Karte duerfen unberechenbare Spalten (Funktionen und Rollen,
   .karte-weich) nicht ausufern — Hoechstbreite nur in der geteilten Ansicht. Ohne Karte gilt kein Limit. */
.karte-layout[data-karte-ansicht="geteilt"] .karte-weich { max-width: 16em; }

/* Maß von Hand gesetzt (data-hand am Griff, mvz-karte.js): Punkt in Akzentfarbe auf der Wulst —
   die Vorgabe gilt hier nicht, Doppelklick holt sie zurueck (Mike, 04.10.); gilt für jeden der Griffe (E138) */
.karte-griff[data-hand]::before {
  background: radial-gradient(circle at center, var(--colorB, #1f4e79) 0 2.5px, #b5ada2 3.5px);
}
.karte-layout[data-karte-ansicht="geteilt"] .karte-griff:hover, .karte-layout[data-karte-ansicht="geteilt"] .karte-griff[data-aktiv] {
  background: linear-gradient(to right, transparent 40%, #b5ada2 40%, #b5ada2 60%, transparent 60%);
}
.karte-layout[data-karte-ansicht="geteilt"] .karte-griff:hover::before, .karte-layout[data-karte-ansicht="geteilt"] .karte-griff[data-aktiv]::before { height: 56px; background: var(--colorB, #1f4e79); }
.karte-layout[data-karte-ansicht="geteilt"] .karte-griff:hover::after, .karte-layout[data-karte-ansicht="geteilt"] .karte-griff[data-aktiv]::after { opacity: 1; }
.karte-zieht { user-select: none; cursor: col-resize; }
.karte-zieht[data-zieht="y"] { cursor: row-resize; }
.karte-griff { touch-action: none; }   /* der Finger zieht den Griff, nicht die Seite (iPad, 27.10.2026) */
/* der zweite Griff (Unterkante der Karte) gibt es nur übereinander */
.karte-layout:not([data-karte-ansicht="uebereinander"]) .karte-griff-karte { display: none; }

/* übereinander (E138, Mike 27.10.2026): die Liste oben, die Karte darunter, kein Wahlschalter — nur die Legende in der Kartenecke.
   Vier Zeilen im Raster: Liste · Griff (Listenhöhe, nur wenn sie rollt) · Karte · Griff (Kartenhöhe). Die Karte steht im Fluss, nicht
   klebend; ihre Höhe setzt das Skript (--karte-hoehe-ueber, Mindestmaß halbe Breite ≥ 240, Höchstmaß quadratisch oder Fenster). */
.karte-layout[data-karte-ansicht="uebereinander"] { display: grid; grid-template-columns: minmax(0, 1fr); }
.karte-layout[data-karte-ansicht="uebereinander"] > * { grid-column: 1; }   /* alle in der einen Spalte — Karte und Legende teilen sich Zeile 3, ohne Spalte rutschte die Karte in eine zweite, 0 px breite (gemessen 27.10.) */
.karte-layout[data-karte-ansicht="uebereinander"] .karte-liste { grid-row: 1; min-width: 0; }
.karten_block[data-karte-ansicht="uebereinander"] .karte-liste { padding-top: 0; }   /* kein Schalter, kein Band darüber */
.karte-layout[data-karte-ansicht="uebereinander"] .karte-griff { grid-row: 2; }
.karte-layout[data-karte-ansicht="uebereinander"] .karte-kasten { grid-row: 3; height: var(--karte-hoehe-ueber, 50vh); }
.karte-layout[data-karte-ansicht="uebereinander"] #karte { min-height: 0; }   /* das Mindestmaß setzt das Skript (240), nicht die 320 der klebenden Karte */
.karte-layout[data-karte-ansicht="uebereinander"] .karte-griff-karte { grid-row: 4; }
.karte-layout[data-karte-ansicht="uebereinander"]:not([data-liste-rollt]) .karte-griff:not(.karte-griff-karte) { display: none; }   /* bis fünf Zeilen gibt es nichts zu ziehen */
.karte-layout[data-karte-ansicht="uebereinander"] .karte-schalter { grid-row: 3; grid-column: 1; justify-self: end; align-self: start; margin: .75rem 1.25rem 0 0; }
.karte-layout[data-karte-ansicht="uebereinander"] .karte-schalter .karte-legende { display: inline-block; margin: 0; }   /* wie „nur": die Karte steht nie allein, also hier */
.karte-layout[data-karte-ansicht="uebereinander"] .karte-legende .legende-liste { z-index: 30; }
/* Rollrahmen der Liste ab sechs Zeilen (data-rollt, mvz-karte.js): fünf Zeilen hoch, die Kopfzeile klebt oben, der Griff darunter zieht
   ihn bis zur ganzen Tabelle auf. Der Tabellenrahmen rollt ohnehin waagerecht — ein Rahmen für beide Richtungen. */
.karte-layout[data-karte-ansicht="uebereinander"] .karte-rollen[data-rollt] { height: var(--karte-liste-hoehe); overflow: auto; }
.karte-layout[data-karte-ansicht="uebereinander"] .karte-rollen[data-rollt] tr:first-child th { position: sticky; top: 0; z-index: 2; background: #fff; background-clip: padding-box; }
/* waagerechter Griff: dieselbe Gestalt gedreht — Rinne mit Haarlinie, Wulst 36 × 4 in der Mitte, beim Überfahren länger, Akzent, Pfeile */
.karte-layout[data-karte-ansicht="uebereinander"] .karte-griff {
  cursor: row-resize; position: relative; z-index: 6; height: 8px; border-radius: 4px;
  background: linear-gradient(to bottom, transparent 40%, #c9c2b8 40%, #c9c2b8 60%, transparent 60%);
}
.karte-layout[data-karte-ansicht="uebereinander"] .karte-griff::before {
  content: ""; position: absolute; left: 50%; top: 50%; width: 36px; height: 4px; margin: -2px 0 0 -18px; border-radius: 2px;
  background: #b5ada2; box-shadow: 0 0 0 2px var(--grund, #fff);
  transition: width .15s ease, margin-left .15s ease, background-color .15s ease;
}
.karte-layout[data-karte-ansicht="uebereinander"] .karte-griff::after {
  content: "‹ ›"; position: absolute; left: calc(50% + 24px); top: 50%; width: 40px; margin-top: -9px; text-align: center;
  letter-spacing: .4em; padding-left: .4em; font-size: 18px; line-height: 18px; font-weight: 700; color: var(--colorB, #1f4e79);
  transform: rotate(90deg); transform-origin: 50% 50%;
  opacity: 0; transition: opacity .15s ease; pointer-events: none;
}
.karte-layout[data-karte-ansicht="uebereinander"] .karte-griff:hover, .karte-layout[data-karte-ansicht="uebereinander"] .karte-griff[data-aktiv] {
  background: linear-gradient(to bottom, transparent 40%, #b5ada2 40%, #b5ada2 60%, transparent 60%);
}
.karte-layout[data-karte-ansicht="uebereinander"] .karte-griff:hover::before, .karte-layout[data-karte-ansicht="uebereinander"] .karte-griff[data-aktiv]::before { width: 56px; margin-left: -28px; background: var(--colorB, #1f4e79); }
.karte-layout[data-karte-ansicht="uebereinander"] .karte-griff:hover::after, .karte-layout[data-karte-ansicht="uebereinander"] .karte-griff[data-aktiv]::after { opacity: 1; }

/* karte: bildschirmfüllend im Vordergrund; die Liste bleibt im Fluss (Scrollstand), nur unsichtbar */
.karte-layout[data-karte-ansicht="karte"] .karte-griff { display: none; }
.karte-layout[data-karte-ansicht="karte"] .karte-kasten { position: fixed; inset: 0; z-index: 1040; border-radius: 0; }
.karte-layout[data-karte-ansicht="karte"] .karte-liste { visibility: hidden; }
.karte-layout[data-karte-ansicht="karte"] .karte-schalter { position: fixed; top: .75rem; right: 1.25rem; z-index: 1050; }
.karte-layout[data-karte-ansicht="karte"] .karte-wahl { box-shadow: 0 2px 8px rgba(0,0,0,.35); }

/* Kartensymbol in Tabellen und Ueberschriften */
.karte-symbol { vertical-align: middle; filter: drop-shadow(0 1px 1px rgba(0,0,0,.3)); }
th.symbolkopf { width: 1%; text-align: center; white-space: nowrap; color: #6b6259; }   /* so schmal wie die Zeichen darunter */
th.symbolkopf .karte-symbol { filter: none; }
h3 .karte-symbol { margin-right: .35em; }

/* Zusammenfassung ist das Symbol selbst (karte-cluster); die Leaflet-Standardkreise bleiben ungenutzt */
.karte-marker.karte-cluster { background: none; border: 0; }
.karte-layout .marker-cluster-small, .karte-layout .marker-cluster-medium, .karte-layout .marker-cluster-large { background: rgba(50, 98, 140, .25); }
.karte-layout .marker-cluster-small div, .karte-layout .marker-cluster-medium div, .karte-layout .marker-cluster-large div {
  background: rgba(50, 98, 140, .9); color: #fff; font-weight: 600;
}
