/* se_events – Terminkarte (F1, André 14.11.2026). EINE Quelle für die Knopfgruppe (Kalenderzeile, Detail, Karte) und den Kartenfuß.
   Geladen auf jeder Events-Ansicht VOR events.css (dessen Mobilregeln gehen vor) und allein in der Vorschau (Startseite, WebCam), die events.css nicht lädt.
   .gm-event-card selbst (Rahmen, Blatt, Titel) kommt aus gm-content.css – nicht hier ändern, se_gastgeber nutzt sie mit. */

/* Knopfgruppe (Runde 7, Nutzer 09.10.2026): Bauform der Kopfzeile »WebCam | Service« – btn-group auf Gruppenfläche, --gm-radius-group, Polster 3xs.
   Tickets/Merken Outline (Tinte), »Zum Termin →« Marine gefüllt. Über der Klickfläche des Titels (stretched-link). */
:is(.evk, .evk-detail, .gm-event-card) .evk-e-knoepfe { position: relative; z-index: 2; flex: none; flex-wrap: wrap; gap: var(--gm-space-3xs); padding: var(--gm-space-3xs); background: var(--gm-flaeche-grund); border-radius: var(--gm-radius-group); } /* B-06: bei 200 % Text untereinander */
:is(.evk, .evk-detail, .gm-event-card) .evk-e-knoepfe.btn-group > .btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--gm-space-2xs); min-width: fit-content; margin: 0; border-radius: var(--gm-radius); font-weight: var(--gm-fw-betont); white-space: normal; overflow-wrap: anywhere; color: var(--bs-btn-color); text-decoration: none; }
:is(.evk, .evk-detail, .gm-event-card) .evk-e-knoepfe.btn-group > .btn:hover { color: var(--bs-btn-hover-color); }
:is(.evk, .evk-detail, .gm-event-card) .evk-e-knoepfe.btn-group > .btn:focus-visible { z-index: 1; outline: var(--gm-focus-width) solid var(--gm-fokus); outline-offset: var(--gm-focus-offset); }
:is(.evk, .evk-detail, .gm-event-card) .evk-e-knoepfe > .evk-e-ticket, :is(.evk, .evk-detail, .gm-event-card) .evk-mag { --bs-btn-bg: var(--gm-flaeche-grund); --bs-btn-color: var(--gm-ink); --bs-btn-border-color: var(--gm-ink); --bs-btn-hover-bg: var(--gm-flaeche-ruhig); --bs-btn-hover-color: var(--gm-primary); --bs-btn-hover-border-color: var(--bs-btn-border-color); --bs-btn-active-bg: var(--gm-flaeche-ruhig); --bs-btn-active-color: var(--gm-primary); } /* Kante sichtbar auf Creme (Nutzer 11.10.2026) */
:is(.evk, .evk-detail, .gm-event-card) .evk-e-knoepfe > .evk-e-zum { --bs-btn-bg: var(--gm-flaeche-marke); --bs-btn-border-color: var(--gm-flaeche-marke); --bs-btn-color: var(--gm-text-invers);
  --bs-btn-hover-bg: var(--gm-primary-hover); --bs-btn-hover-border-color: var(--gm-primary-hover); --bs-btn-hover-color: var(--gm-text-invers);
  --bs-btn-active-bg: var(--gm-primary-hover); --bs-btn-active-border-color: var(--gm-primary-hover); --bs-btn-active-color: var(--gm-text-invers); }
:is(.evk, .evk-detail, .gm-event-card) .evk-e-knoepfe .evk-e-zum i { order: 2; margin: 0; transition: transform var(--gm-dur-fast) var(--gm-ease-out); } /* Pfeil rechts */
:is(.evk-e, .gm-event-card):hover:not(:has(.evk-e-knoepfe > :is(.evk-mag, .evk-e-ticket):is(:hover, :focus-visible))) .evk-e-zum i, .evk-e-zum:focus-visible i { transform: translateX(3px); }
@media (prefers-reduced-motion: reduce) { .evk-e-knoepfe .evk-e-zum i { transition: none; transform: none !important; } }

/* Kartenfuß (André 14.11.2026, Entscheidung nach Live-Test): in JEDER Karte exakt dasselbe Raster – Zeile 1 [Merken] [Kalender] je halbe Breite,
   Zeile 2 [Zum Termin →] über die volle Breite; Tickets nur auf der Detailseite. margin-top:auto in der Flex-Spalte .gm-event-body: alle Füße einer
   Reihe sitzen bündig unten und sind gleich hoch – die Knopfreihen benachbarter Karten stehen auf denselben Linien. */
.evk-karte-fuss { position: relative; z-index: 2; margin-top: auto; padding-top: var(--gm-space-md); }
.gm-event-card .evk-e-knoepfe { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; align-content: start; height: auto; padding: 0; background: none; border-radius: 0; }
.gm-event-card .evk-e-knoepfe.btn-group > .btn { min-width: 0; padding-inline: var(--gm-space-2xs); white-space: nowrap; overflow-wrap: normal; } /* Beschriftung nie zweizeilig (André 14.11.2026: »Zum Termin« brach in der schmalen Startseiten-Karte um) */
.gm-event-card .evk-e-knoepfe > .evk-e-zum { grid-column: 1 / -1; } /* immer volle Breite – das Dunkelblau springt nie */
.gm-event-card .evk-e-knoepfe > .evk-e-kal:first-child { grid-column: 1 / -1; } /* ohne »Merken« (Schalter aus): Kalender über die volle Zeile */
.gm-event-card .evk-e-knoepfe > .evk-e-kal { --bs-btn-bg: var(--gm-flaeche-grund); --bs-btn-color: var(--gm-ink); --bs-btn-border-color: var(--gm-ink); --bs-btn-hover-bg: var(--gm-flaeche-ruhig); --bs-btn-hover-color: var(--gm-primary); --bs-btn-hover-border-color: var(--gm-ink); --bs-btn-active-bg: var(--gm-flaeche-ruhig); --bs-btn-active-color: var(--gm-primary); }
/* Mobil wie die Kalenderzeile (events.css, gleicher Umbruch): Ziel 44 px; Desktop btn-sm */
@media (max-width: 47.99rem), (pointer: coarse) { .gm-event-card .evk-e-knoepfe > .btn { min-height: 2.75rem; } } /* Touch auch auf dem Tablet 44 px (André 14.11.2026) */

/* Ohne JavaScript gibt es kein »Merken« (der Knopf steht immer im Markup – kein Layoutsprung) */
@media (scripting: none) { .evk-mag { display: none !important; } }
/* 320 px: nur das Herz, der Name bleibt für Screenreader vollständig */
@media (max-width: 22.49rem) { .evk-mag .evk-mag-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; } }

/* Gemerkt-Zustand und Merk-Zahl (aus events.css hierher, F1 Final-Review: Vorschau lädt nur karte.css) */
/* »Mag ich« ungemerkt = Bauform »Tickets« (Selektor dort erweitert, André 12.10.2026) */
:is(.evk, .evk-detail, .gm-event-card) .evk-mag[aria-pressed="true"] { --bs-btn-bg: var(--gm-flaeche-marke); --bs-btn-color: var(--gm-white); --bs-btn-border-color: var(--gm-flaeche-marke);
  --bs-btn-hover-bg: var(--gm-primary-hover); --bs-btn-hover-color: var(--gm-white); --bs-btn-active-bg: var(--gm-flaeche-marke); --bs-btn-active-color: var(--gm-white); }
.evk-mag:focus-visible { outline: var(--gm-focus-width) solid var(--gm-fokus); outline-offset: var(--gm-focus-offset); }
.evk-mag.is-neu i { animation: evk-mag-puls 200ms var(--gm-ease-out); }
@keyframes evk-mag-puls { 50% { transform: scale(1.15); } }
@media (prefers-reduced-motion: reduce) { .evk-mag.is-neu i { animation: none; } }
.evk-mag-zahl { position: relative; z-index: 2; margin-left: auto; font-size: var(--gm-fs-label); color: var(--gm-text); text-decoration: none; white-space: nowrap; }
.evk-mag-zahl:hover, .evk-mag-zahl:focus-visible { text-decoration: underline; }

/* Kartentitel ist eine Überschrift (Screenreader-Navigation, André 14.11.2026) – Aussehen bleibt das der .gm-event-title aus gm-content.css */
.gm-event-card h2.gm-event-title, .gm-event-card h3.gm-event-title, .gm-event-card h4.gm-event-title { margin: 0; letter-spacing: normal; text-transform: none; }
