@charset "UTF-8";
/*------------------------------------------------------------------
[Convention Schedule & Program Planner – WordPress Event Management Plugin Global Core & Foundation Stylesheet]

Project:        Convention Schedule & Program Planner – WordPress Event Management
Version:        1.7.0
Author:         LitteraNovix
Primary use:    Event Management & Display

Table of Contents:

1. GLOBAL RESET & APP CONTAINER
2. TYPOGRAPHY & TEXT LOGIC (Hyphenation & Visibility)
3. ICON SYSTEM & MASKING (Global Asset Definitions)
4. SHARED UI COMPONENTS (Global Buttons & Harmonies)
5. POPUPS & MODALS (Share, iCal & QR Logic)
6. NAVIGATION & PAGINATION (Global Controls)
7. LOADERS & STATUS MESSAGES (Spinners & Alerts)
8. FAVORITE HEART ANIMATION 
9. GLOBAL KEYFRAME ANIMATIONS
-------------------------------------------------------------------*/



/* =========================================
   1. GLOBAL RESET & APP CONTAINER
   ========================================= */
/* Box-Sizing Reset */
html body .ec-event-calendar-app #ec-app,
html body .ec-event-calendar-app #ec-app * {
  box-sizing: border-box;
}

/* Haupt-Container */
html body .ec-event-calendar-app #ec-app {
  max-width: 1200px;
  margin: 0 auto 20px auto;
  font-family: "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #333;
  width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
  clear: both;
}

/* UI-Elemente Reset */
html body .ec-event-calendar-app #ec-app button,
html body .ec-event-calendar-app #ec-app select,
html body .ec-event-calendar-app #ec-app input,
html body .ec-event-calendar-app #ec-app a {
  -webkit-tap-highlight-color: transparent;
}

/* =========================================
   2. GENERAL TYPOGRAPHY & TEXT LOGIC
   ========================================= */

/* Zentrale Silbentrennung fÃƒÂ¼r alle Plugin-Texte */
html body .ec-event-calendar-app .ec-row-title,
html body .ec-event-calendar-app .ec-card-title,
html body .ec-event-calendar-app .ec-single-title,
html body .ec-event-calendar-app .ec-compact-title,
html body .ec-event-calendar-app .ec-col-content h3,
html body .ec-event-calendar-app .ec-card-excerpt,
html body .ec-event-calendar-app .ec-table-excerpt,
html body .ec-event-calendar-app .ec-row-meta,
html body .ec-event-calendar-app .ec-col-venue,
html body .ec-event-calendar-app .ec-mobile-venue {
  hyphens: auto;
  -webkit-hyphens: auto;
}

/* Erlaubt das saubere Ausblenden via JavaScript */
html body .ec-event-calendar-app .ec-hidden {
  display: none;
}

/* ==========================================================================
   3. ICON SYSTEM & MASKING
   ========================================================================== */

/* Hier steht ausschließlich, WELCHE Datei ein Icon nutzt. Größe, Farbe und
   mask-size/-repeat/-position setzen die View-Stylesheets pro Kontext.
   Diese Datei ist Dependency jedes View-Stylesheets, ist also immer geladen -
   eine zweite Deklaration der Pfade in den View-Dateien ist unnötig. */

html body .ec-event-calendar-app .ec-icon-grid-view {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 shape-rendering=%22geometricPrecision%22 text-rendering=%22geometricPrecision%22 image-rendering=%22optimizeQuality%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22 viewBox=%220 0 512 510.87%22%3E%3Cpath d=%22M10.69 0h119.84c5.88 0 10.68 4.8 10.68 10.68v119.85c0 5.88-4.8 10.68-10.68 10.68H10.69c-5.88 0-10.69-4.8-10.69-10.68V10.68C0 4.8 4.81 0 10.69 0zm370.78 369.66h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H381.47c-5.88 0-10.68-4.8-10.68-10.68V380.34c0-5.88 4.8-10.68 10.68-10.68zm-185.39 0h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H196.08c-5.88 0-10.69-4.8-10.69-10.68V380.34c0-5.88 4.81-10.68 10.69-10.68zm-185.39 0h119.84c5.88 0 10.68 4.8 10.68 10.68v119.85c0 5.88-4.8 10.68-10.68 10.68H10.69c-5.88 0-10.69-4.8-10.69-10.68V380.34c0-5.88 4.81-10.68 10.69-10.68zm370.78-184.83h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H381.47c-5.88 0-10.68-4.8-10.68-10.68V195.51c0-5.88 4.8-10.68 10.68-10.68zm-185.39 0h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H196.08c-5.88 0-10.69-4.8-10.69-10.68V195.51c0-5.88 4.81-10.68 10.69-10.68zm-185.39 0h119.84c5.88 0 10.68 4.8 10.68 10.68v119.85c0 5.88-4.8 10.68-10.68 10.68H10.69c-5.88 0-10.69-4.8-10.69-10.68V195.51c0-5.88 4.81-10.68 10.69-10.68zM381.47 0h119.84C507.2 0 512 4.8 512 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H381.47c-5.88 0-10.68-4.8-10.68-10.68V10.68c0-5.88 4.8-10.68 10.68-10.68zM196.08 0h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H196.08c-5.88 0-10.69-4.8-10.69-10.68V10.68C185.39 4.8 190.2 0 196.08 0z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 shape-rendering=%22geometricPrecision%22 text-rendering=%22geometricPrecision%22 image-rendering=%22optimizeQuality%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22 viewBox=%220 0 512 510.87%22%3E%3Cpath d=%22M10.69 0h119.84c5.88 0 10.68 4.8 10.68 10.68v119.85c0 5.88-4.8 10.68-10.68 10.68H10.69c-5.88 0-10.69-4.8-10.69-10.68V10.68C0 4.8 4.81 0 10.69 0zm370.78 369.66h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H381.47c-5.88 0-10.68-4.8-10.68-10.68V380.34c0-5.88 4.8-10.68 10.68-10.68zm-185.39 0h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H196.08c-5.88 0-10.69-4.8-10.69-10.68V380.34c0-5.88 4.81-10.68 10.69-10.68zm-185.39 0h119.84c5.88 0 10.68 4.8 10.68 10.68v119.85c0 5.88-4.8 10.68-10.68 10.68H10.69c-5.88 0-10.69-4.8-10.69-10.68V380.34c0-5.88 4.81-10.68 10.69-10.68zm370.78-184.83h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H381.47c-5.88 0-10.68-4.8-10.68-10.68V195.51c0-5.88 4.8-10.68 10.68-10.68zm-185.39 0h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H196.08c-5.88 0-10.69-4.8-10.69-10.68V195.51c0-5.88 4.81-10.68 10.69-10.68zm-185.39 0h119.84c5.88 0 10.68 4.8 10.68 10.68v119.85c0 5.88-4.8 10.68-10.68 10.68H10.69c-5.88 0-10.69-4.8-10.69-10.68V195.51c0-5.88 4.81-10.68 10.69-10.68zM381.47 0h119.84C507.2 0 512 4.8 512 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H381.47c-5.88 0-10.68-4.8-10.68-10.68V10.68c0-5.88 4.8-10.68 10.68-10.68zM196.08 0h119.84c5.89 0 10.69 4.8 10.69 10.68v119.85c0 5.88-4.8 10.68-10.69 10.68H196.08c-5.88 0-10.69-4.8-10.69-10.68V10.68C185.39 4.8 190.2 0 196.08 0z%22/%3E%3C/svg%3E");
}

/* Zweiter Selektor ohne .ec-event-calendar-app: Der Shortcode
   [event_compact_card] rendert .ec-compact-card als äußerstes Element, dort
   fehlt der App-Wrapper. Gleiches Muster wie bei .ec-icon-share-square. */
html body .ec-event-calendar-app .ec-icon-heart,
html body .ec-icon-heart {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 viewBox=%220 0 122.88 107.41%22 style=%22enable-background:new 0 0 122.88 107.41%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath class=%22st0%22 d=%22M60.83,17.19C68.84,8.84,74.45,1.62,86.79,0.21c23.17-2.66,44.48,21.06,32.78,44.41 c-3.33,6.65-10.11,14.56-17.61,22.32c-8.23,8.52-17.34,16.87-23.72,23.2l-17.4,17.26L46.46,93.56C29.16,76.9,0.95,55.93,0.02,29.95 C-0.63,11.75,13.73,0.09,30.25,0.3C45.01,0.5,51.22,7.84,60.83,17.19L60.83,17.19L60.83,17.19z%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 viewBox=%220 0 122.88 107.41%22 style=%22enable-background:new 0 0 122.88 107.41%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath class=%22st0%22 d=%22M60.83,17.19C68.84,8.84,74.45,1.62,86.79,0.21c23.17-2.66,44.48,21.06,32.78,44.41 c-3.33,6.65-10.11,14.56-17.61,22.32c-8.23,8.52-17.34,16.87-23.72,23.2l-17.4,17.26L46.46,93.56C29.16,76.9,0.95,55.93,0.02,29.95 C-0.63,11.75,13.73,0.09,30.25,0.3C45.01,0.5,51.22,7.84,60.83,17.19L60.83,17.19L60.83,17.19z%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22/%3E%3C/g%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-list-round-bullet {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 viewBox=%220 0 122.88 112.5%22 style=%22enable-background:new 0 0 122.88 112.5%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath class=%22st0%22 d=%22M12.56,87.39c6.93,0,12.56,5.62,12.56,12.56c0,6.93-5.62,12.56-12.56,12.56C5.62,112.5,0,106.88,0,99.95 C0,93.01,5.62,87.39,12.56,87.39L12.56,87.39z M35.07,88.24h86.38c0.79,0,1.43,0.64,1.43,1.43v19.93c0,0.79-0.64,1.43-1.43,1.43 H35.07c-0.79,0-1.43-0.64-1.43-1.43V89.67C33.64,88.88,34.29,88.24,35.07,88.24L35.07,88.24z M35.07,44.7h86.38 c0.79,0,1.43,0.64,1.43,1.43v19.93c0,0.79-0.64,1.43-1.43,1.43H35.07c-0.79,0-1.43-0.64-1.43-1.43V46.13 C33.64,45.34,34.29,44.7,35.07,44.7L35.07,44.7z M35.07,1.16h86.38c0.79,0,1.43,0.64,1.43,1.43v19.93c0,0.79-0.64,1.43-1.43,1.43 H35.07c-0.79,0-1.43-0.64-1.43-1.43V2.59C33.64,1.8,34.29,1.16,35.07,1.16L35.07,1.16z M12.56,43.69c6.93,0,12.56,5.62,12.56,12.56 c0,6.93-5.62,12.56-12.56,12.56C5.62,68.81,0,63.19,0,56.25C0,49.32,5.62,43.69,12.56,43.69L12.56,43.69z M12.56,0 c6.93,0,12.56,5.62,12.56,12.56c0,6.93-5.62,12.56-12.56,12.56C5.62,25.11,0,19.49,0,12.56C0,5.62,5.62,0,12.56,0L12.56,0z%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 viewBox=%220 0 122.88 112.5%22 style=%22enable-background:new 0 0 122.88 112.5%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath class=%22st0%22 d=%22M12.56,87.39c6.93,0,12.56,5.62,12.56,12.56c0,6.93-5.62,12.56-12.56,12.56C5.62,112.5,0,106.88,0,99.95 C0,93.01,5.62,87.39,12.56,87.39L12.56,87.39z M35.07,88.24h86.38c0.79,0,1.43,0.64,1.43,1.43v19.93c0,0.79-0.64,1.43-1.43,1.43 H35.07c-0.79,0-1.43-0.64-1.43-1.43V89.67C33.64,88.88,34.29,88.24,35.07,88.24L35.07,88.24z M35.07,44.7h86.38 c0.79,0,1.43,0.64,1.43,1.43v19.93c0,0.79-0.64,1.43-1.43,1.43H35.07c-0.79,0-1.43-0.64-1.43-1.43V46.13 C33.64,45.34,34.29,44.7,35.07,44.7L35.07,44.7z M35.07,1.16h86.38c0.79,0,1.43,0.64,1.43,1.43v19.93c0,0.79-0.64,1.43-1.43,1.43 H35.07c-0.79,0-1.43-0.64-1.43-1.43V2.59C33.64,1.8,34.29,1.16,35.07,1.16L35.07,1.16z M12.56,43.69c6.93,0,12.56,5.62,12.56,12.56 c0,6.93-5.62,12.56-12.56,12.56C5.62,68.81,0,63.19,0,56.25C0,49.32,5.62,43.69,12.56,43.69L12.56,43.69z M12.56,0 c6.93,0,12.56,5.62,12.56,12.56c0,6.93-5.62,12.56-12.56,12.56C5.62,25.11,0,19.49,0,12.56C0,5.62,5.62,0,12.56,0L12.56,0z%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22/%3E%3C/g%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-clock,
html body .ec-icon-clock {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 width=%22240%22 height=%22240%22%3E %3Ctitle%3EUhrzeit Smart Kachel%3C/title%3E %3Cpath d=%22M18,2H6C3.79,2,2,3.79,2,6v12c0,2.21,1.79,4,4,4h12c2.21,0,4-1.79,4-4V6C22,3.79,20.21,2,18,2z M12,20c-4.41,0-8-3.59-8-8s3.59-8,8-8s8,3.59,8,8S16.41,20,12,20z%22 fill=%22currentColor%22/%3E %3Cpath d=%22M12.5,7H11v6l4.7,2.8l0.8-1.2L12.5,12.2V7z%22 fill=%22currentColor%22/%3E %3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 width=%22240%22 height=%22240%22%3E %3Ctitle%3EUhrzeit Smart Kachel%3C/title%3E %3Cpath d=%22M18,2H6C3.79,2,2,3.79,2,6v12c0,2.21,1.79,4,4,4h12c2.21,0,4-1.79,4-4V6C22,3.79,20.21,2,18,2z M12,20c-4.41,0-8-3.59-8-8s3.59-8,8-8s8,3.59,8,8S16.41,20,12,20z%22 fill=%22currentColor%22/%3E %3Cpath d=%22M12.5,7H11v6l4.7,2.8l0.8-1.2L12.5,12.2V7z%22 fill=%22currentColor%22/%3E %3C/svg%3E");
}

/* Zoom-Lupen des Timetable-Buttons. Nur wrapper-lose Selektoren nötig wären
   hier zu wenig gedacht - der Button wird per JS an <body> gehängt, liegt also
   außerhalb von .ec-event-calendar-app. Deshalb beide Varianten. */
html body .ec-event-calendar-app .ec-icon-zoom-in,
html body .ec-icon-zoom-in {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%221 1 22 22%22 fill=%22none%22 stroke=%22currentColor%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2211%22 cy=%2211%22 r=%228%22%3E%3C/circle%3E%3Cline x1=%2221%22 y1=%2221%22 x2=%2216.65%22 y2=%2216.65%22%3E%3C/line%3E%3Cline x1=%2211%22 y1=%228%22 x2=%2211%22 y2=%2214%22%3E%3C/line%3E%3Cline x1=%228%22 y1=%2211%22 x2=%2214%22 y2=%2211%22%3E%3C/line%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%221 1 22 22%22 fill=%22none%22 stroke=%22currentColor%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2211%22 cy=%2211%22 r=%228%22%3E%3C/circle%3E%3Cline x1=%2221%22 y1=%2221%22 x2=%2216.65%22 y2=%2216.65%22%3E%3C/line%3E%3Cline x1=%2211%22 y1=%228%22 x2=%2211%22 y2=%2214%22%3E%3C/line%3E%3Cline x1=%228%22 y1=%2211%22 x2=%2214%22 y2=%2211%22%3E%3C/line%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-zoom-out,
html body .ec-icon-zoom-out {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%221 1 22 22%22 fill=%22none%22 stroke=%22currentColor%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2211%22 cy=%2211%22 r=%228%22%3E%3C/circle%3E%3Cline x1=%2221%22 y1=%2221%22 x2=%2216.65%22 y2=%2216.65%22%3E%3C/line%3E%3Cline x1=%228%22 y1=%2211%22 x2=%2214%22 y2=%2211%22%3E%3C/line%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%221 1 22 22%22 fill=%22none%22 stroke=%22currentColor%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2211%22 cy=%2211%22 r=%228%22%3E%3C/circle%3E%3Cline x1=%2221%22 y1=%2221%22 x2=%2216.65%22 y2=%2216.65%22%3E%3C/line%3E%3Cline x1=%228%22 y1=%2211%22 x2=%2214%22 y2=%2211%22%3E%3C/line%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-check,
html body .ec-icon-check {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 width=%22122.877px%22 height=%22101.052px%22 viewBox=%220 0 122.877 101.052%22 enable-background=%22new 0 0 122.877 101.052%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath d=%22M4.43,63.63c-2.869-2.755-4.352-6.42-4.427-10.11c-0.074-3.689,1.261-7.412,4.015-10.281 c2.752-2.867,6.417-4.351,10.106-4.425c3.691-0.076,7.412,1.255,10.283,4.012l24.787,23.851L98.543,3.989l1.768,1.349l-1.77-1.355 c0.141-0.183,0.301-0.339,0.479-0.466c2.936-2.543,6.621-3.691,10.223-3.495V0.018l0.176,0.016c3.623,0.24,7.162,1.85,9.775,4.766 c2.658,2.965,3.863,6.731,3.662,10.412h0.004l-0.016,0.176c-0.236,3.558-1.791,7.035-4.609,9.632l-59.224,72.09l0.004,0.004 c-0.111,0.141-0.236,0.262-0.372,0.368c-2.773,2.435-6.275,3.629-9.757,3.569c-3.511-0.061-7.015-1.396-9.741-4.016L4.43,63.63 L4.43,63.63z%22/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 width=%22122.877px%22 height=%22101.052px%22 viewBox=%220 0 122.877 101.052%22 enable-background=%22new 0 0 122.877 101.052%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath d=%22M4.43,63.63c-2.869-2.755-4.352-6.42-4.427-10.11c-0.074-3.689,1.261-7.412,4.015-10.281 c2.752-2.867,6.417-4.351,10.106-4.425c3.691-0.076,7.412,1.255,10.283,4.012l24.787,23.851L98.543,3.989l1.768,1.349l-1.77-1.355 c0.141-0.183,0.301-0.339,0.479-0.466c2.936-2.543,6.621-3.691,10.223-3.495V0.018l0.176,0.016c3.623,0.24,7.162,1.85,9.775,4.766 c2.658,2.965,3.863,6.731,3.662,10.412h0.004l-0.016,0.176c-0.236,3.558-1.791,7.035-4.609,9.632l-59.224,72.09l0.004,0.004 c-0.111,0.141-0.236,0.262-0.372,0.368c-2.773,2.435-6.275,3.629-9.757,3.569c-3.511-0.061-7.015-1.396-9.741-4.016L4.43,63.63 L4.43,63.63z%22/%3E%3C/g%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-calendar_slim,
html body .ec-icon-calendar_slim {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22512%22 height=%22512%22 viewBox=%220 0 1664 1664%22%3E%3Cpath fill=%22%23000000%22 d=%22M56 333h1553q55 0 55-56V111q0-47-32-79t-79-32H111Q64 0 32 32T0 111v166q0 56 56 56zm221 998H56q-56 0-56 56v166q0 47 32 79t79 32h166q56 0 56-56v-221q0-56-56-56zm1110 0q-56 0-56 56v221q0 56 56 56h166q47 0 79-32t32-79v-166q0-56-55-56h-222zm-444 0q-56 0-56 56v221q0 56 56 56h222q55 0 55-56v-221q0-56-55-56H943zm-444 0q-55 0-55 56v221q0 56 55 56h222q56 0 56-56v-221q0-56-56-56H499zm888-444q-56 0-56 56v222q0 55 56 55h222q55 0 55-55V943q0-56-55-56h-222zm-444 0q-56 0-56 56v222q0 55 56 55h222q55 0 55-55V943q0-56-55-56H943zm-887 0q-56 0-56 56v222q0 55 56 55h221q56 0 56-55V943q0-56-56-56H56zm443 0q-55 0-55 56v222q0 55 55 55h222q56 0 56-55V943q0-56-56-56H499zm888-443q-56 0-56 55v222q0 56 56 56h222q55 0 55-56V499q0-55-55-55h-222zm-444 0q-56 0-56 55v222q0 56 56 56h222q55 0 55-56V499q0-55-55-55H943zm-887 0q-56 0-56 55v222q0 56 56 56h221q56 0 56-56V499q0-55-56-55H56zm443 0q-55 0-55 55v222q0 56 55 56h222q56 0 56-56V499q0-55-56-55H499z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22512%22 height=%22512%22 viewBox=%220 0 1664 1664%22%3E%3Cpath fill=%22%23000000%22 d=%22M56 333h1553q55 0 55-56V111q0-47-32-79t-79-32H111Q64 0 32 32T0 111v166q0 56 56 56zm221 998H56q-56 0-56 56v166q0 47 32 79t79 32h166q56 0 56-56v-221q0-56-56-56zm1110 0q-56 0-56 56v221q0 56 56 56h166q47 0 79-32t32-79v-166q0-56-55-56h-222zm-444 0q-56 0-56 56v221q0 56 56 56h222q55 0 55-56v-221q0-56-55-56H943zm-444 0q-55 0-55 56v221q0 56 55 56h222q56 0 56-56v-221q0-56-56-56H499zm888-444q-56 0-56 56v222q0 55 56 55h222q55 0 55-55V943q0-56-55-56h-222zm-444 0q-56 0-56 56v222q0 55 56 55h222q55 0 55-55V943q0-56-55-56H943zm-887 0q-56 0-56 56v222q0 55 56 55h221q56 0 56-55V943q0-56-56-56H56zm443 0q-55 0-55 56v222q0 55 55 55h222q56 0 56-55V943q0-56-56-56H499zm888-443q-56 0-56 55v222q0 56 56 56h222q55 0 55-56V499q0-55-55-55h-222zm-444 0q-56 0-56 55v222q0 56 56 56h222q55 0 55-56V499q0-55-55-55H943zm-887 0q-56 0-56 55v222q0 56 56 56h221q56 0 56-56V499q0-55-56-55H56zm443 0q-55 0-55 55v222q0 56 55 56h222q56 0 56-56V499q0-55-56-55H499z%22/%3E%3C/svg%3E");
}

.ec-event-calendar-app .ec-icon-location,
html body .ec-icon-location {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 width=%22240%22 height=%22240%22%3E %3Ctitle%3EFocus Location Pin%3C/title%3E %3Cpath d=%22M12,2C7.58,2,4,5.58,4,10c0,4.53,3.05,9.67,6.88,13.46c0.6,0.59,1.64,0.59,2.24,0C16.95,19.67,20,14.53,20,10C20,5.58,16.42,2,12,2z M12,16c-3.31,0-6-2.69-6-6s2.69-6,6-6s6,2.69,6,6S15.31,16,12,16z%22 fill=%22currentColor%22/%3E %3Ccircle cx=%2212%22 cy=%2210%22 r=%223.5%22 fill=%22currentColor%22/%3E %3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 width=%22240%22 height=%22240%22%3E %3Ctitle%3EFocus Location Pin%3C/title%3E %3Cpath d=%22M12,2C7.58,2,4,5.58,4,10c0,4.53,3.05,9.67,6.88,13.46c0.6,0.59,1.64,0.59,2.24,0C16.95,19.67,20,14.53,20,10C20,5.58,16.42,2,12,2z M12,16c-3.31,0-6-2.69-6-6s2.69-6,6-6s6,2.69,6,6S15.31,16,12,16z%22 fill=%22currentColor%22/%3E %3Ccircle cx=%2212%22 cy=%2210%22 r=%223.5%22 fill=%22currentColor%22/%3E %3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-person,
html body .ec-icon-person {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 width=%22240%22 height=%22240%22%3E %3Ctitle%3EGestikulierender Sprecher %28korrigiert%29%3C/title%3E %3Cg transform=%22translate%28-1.5, 0%29%22%3E %3Cpath d=%22M12,4C9.79,4,8,5.79,8,8s1.79,4,4,4s4-1.79,4-4S14.21,4,12,4z M12,14c-2.67,0-8,1.34-8,4v2h16v-2C20,15.34,14.67,14,12,14z%22 fill=%22currentColor%22/%3E %3Cpath d=%22M4,18h16v2H4V18z M8,21h8v1H8V21z%22 fill=%22currentColor%22/%3E %3Cpath d=%22M19,7c1.1,1.1,1.1,2.9,0,4 M21.5,4.5c2.48,2.48,2.48,6.52,0,9%22 fill=%22none%22 stroke=%22currentColor%22 stroke-width=%222%22 stroke-linecap=%22round%22/%3E %3C/g%3E %3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 width=%22240%22 height=%22240%22%3E %3Ctitle%3EGestikulierender Sprecher %28korrigiert%29%3C/title%3E %3Cg transform=%22translate%28-1.5, 0%29%22%3E %3Cpath d=%22M12,4C9.79,4,8,5.79,8,8s1.79,4,4,4s4-1.79,4-4S14.21,4,12,4z M12,14c-2.67,0-8,1.34-8,4v2h16v-2C20,15.34,14.67,14,12,14z%22 fill=%22currentColor%22/%3E %3Cpath d=%22M4,18h16v2H4V18z M8,21h8v1H8V21z%22 fill=%22currentColor%22/%3E %3Cpath d=%22M19,7c1.1,1.1,1.1,2.9,0,4 M21.5,4.5c2.48,2.48,2.48,6.52,0,9%22 fill=%22none%22 stroke=%22currentColor%22 stroke-width=%222%22 stroke-linecap=%22round%22/%3E %3C/g%3E %3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-language,
html body .ec-icon-language {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22512%22 height=%22512%22 viewBox=%220 0 24 24%22 fill=%22%23000000%22%3E%3Cg fill=%22none%22 stroke=%22%23000000%22 stroke-linecap=%22round%22 stroke-width=%222%22%3E%3Cpath stroke-linejoin=%22round%22 d=%22M14 19c3.771 0 5.657 0 6.828-1.172C22 16.657 22 14.771 22 11c0-3.771 0-5.657-1.172-6.828C19.657 3 17.771 3 14 3h-4C6.229 3 4.343 3 3.172 4.172C2 5.343 2 7.229 2 11c0 3.771 0 5.657 1.172 6.828c.653.654 1.528.943 2.828 1.07%22/%3E%3Cpath d=%22M14 19c-1.236 0-2.598.5-3.841 1.145c-1.998 1.037-2.997 1.556-3.489 1.225c-.492-.33-.399-1.355-.212-3.404L6.5 17.5%22/%3E%3Cpath stroke-linejoin=%22round%22 d=%22m5.5 13.5l1-2m0 0l1.106-2.211a1 1 0 0 1 1.788 0L10.5 11.5m-4 0h4m0 0l1 2m1-6h1.982V9c0 .5-.496 1.5-1.487 1.5m3.964-3v2m0 0v4m0-4H18.5%22/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22512%22 height=%22512%22 viewBox=%220 0 24 24%22 fill=%22%23000000%22%3E%3Cg fill=%22none%22 stroke=%22%23000000%22 stroke-linecap=%22round%22 stroke-width=%222%22%3E%3Cpath stroke-linejoin=%22round%22 d=%22M14 19c3.771 0 5.657 0 6.828-1.172C22 16.657 22 14.771 22 11c0-3.771 0-5.657-1.172-6.828C19.657 3 17.771 3 14 3h-4C6.229 3 4.343 3 3.172 4.172C2 5.343 2 7.229 2 11c0 3.771 0 5.657 1.172 6.828c.653.654 1.528.943 2.828 1.07%22/%3E%3Cpath d=%22M14 19c-1.236 0-2.598.5-3.841 1.145c-1.998 1.037-2.997 1.556-3.489 1.225c-.492-.33-.399-1.355-.212-3.404L6.5 17.5%22/%3E%3Cpath stroke-linejoin=%22round%22 d=%22m5.5 13.5l1-2m0 0l1.106-2.211a1 1 0 0 1 1.788 0L10.5 11.5m-4 0h4m0 0l1 2m1-6h1.982V9c0 .5-.496 1.5-1.487 1.5m3.964-3v2m0 0v4m0-4H18.5%22/%3E%3C/g%3E%3C/svg%3E");
}


html body .ec-event-calendar-app .ec-icon-price {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 100.81%22%3E%3Ctitle%3Ecost-tag%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M51.45,3h.7a2.78,2.78,0,0,1,2,.89L96.54,49.93a10.36,10.36,0,0,1-.79,14.89L58.58,98l-.08.07a10.09,10.09,0,0,1-3.5,2.15,10.43,10.43,0,0,1-11.33-3L3.86,52.6a2.74,2.74,0,0,1-.69-2l.08-1.11L0,2.94A2.75,2.75,0,0,1,2.93,0L50.57,3l.18,0a5.07,5.07,0,0,1,.7-.06ZM82,99.58a2.76,2.76,0,0,1-3.68-4.12l37.31-33.31h0a4.68,4.68,0,0,0,1.21-1.54,5.3,5.3,0,0,0,.23-3.76,4.83,4.83,0,0,0-1-1.67l0-.06L73.68,9.05a2.76,2.76,0,1,1,4.07-3.74l42.36,46.07.1.11a10.34,10.34,0,0,1-.88,14.78h0L82,99.58ZM22.93,13c7.89.21,10,9,7.88,12.33a8.9,8.9,0,0,1-8.19,5.19c-9.62,0-12-13.5-3-17A8.37,8.37,0,0,1,22.93,13ZM34.71,31.53c1.07-1.07,2.51,1,4.25,2.78,5.65-3.61,11.73-2.72,16.43,2a1,1,0,0,1,0,1.46l-6.64,6.63c-1.48,1.49-3.39-3.63-6-1-1.6,1.6-.19,5,3.89,3.83C53,45.47,59.77,41,66.51,47.71c4.67,4.66,4.36,10.44.69,15.65,4.48,4.48,4.51,3.17,0,7.65-1,1-4-2.55-4.59-3.13C56.51,72.31,50,72,44.57,66.52a1,1,0,0,1,0-1.46l6.64-6.64c1.47-1.48,3.31,3.61,6.67,1.17,3.14-2.28,0-5.23-2.39-4.85-4.9.79-13.07,7.62-20.74-.05-4.65-4.65-4.17-11-.45-16-4-4-4-2.76.41-7.2Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 100.81%22%3E%3Ctitle%3Ecost-tag%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M51.45,3h.7a2.78,2.78,0,0,1,2,.89L96.54,49.93a10.36,10.36,0,0,1-.79,14.89L58.58,98l-.08.07a10.09,10.09,0,0,1-3.5,2.15,10.43,10.43,0,0,1-11.33-3L3.86,52.6a2.74,2.74,0,0,1-.69-2l.08-1.11L0,2.94A2.75,2.75,0,0,1,2.93,0L50.57,3l.18,0a5.07,5.07,0,0,1,.7-.06ZM82,99.58a2.76,2.76,0,0,1-3.68-4.12l37.31-33.31h0a4.68,4.68,0,0,0,1.21-1.54,5.3,5.3,0,0,0,.23-3.76,4.83,4.83,0,0,0-1-1.67l0-.06L73.68,9.05a2.76,2.76,0,1,1,4.07-3.74l42.36,46.07.1.11a10.34,10.34,0,0,1-.88,14.78h0L82,99.58ZM22.93,13c7.89.21,10,9,7.88,12.33a8.9,8.9,0,0,1-8.19,5.19c-9.62,0-12-13.5-3-17A8.37,8.37,0,0,1,22.93,13ZM34.71,31.53c1.07-1.07,2.51,1,4.25,2.78,5.65-3.61,11.73-2.72,16.43,2a1,1,0,0,1,0,1.46l-6.64,6.63c-1.48,1.49-3.39-3.63-6-1-1.6,1.6-.19,5,3.89,3.83C53,45.47,59.77,41,66.51,47.71c4.67,4.66,4.36,10.44.69,15.65,4.48,4.48,4.51,3.17,0,7.65-1,1-4-2.55-4.59-3.13C56.51,72.31,50,72,44.57,66.52a1,1,0,0,1,0-1.46l6.64-6.64c1.47-1.48,3.31,3.61,6.67,1.17,3.14-2.28,0-5.23-2.39-4.85-4.9.79-13.07,7.62-20.74-.05-4.65-4.65-4.17-11-.45-16-4-4-4-2.76.41-7.2Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
  transform: translateX(4px);
}

html body .ec-event-calendar-app .ec-icon-share-square,
html body .ec-icon-share-square {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 122.88%22%3E%3Ctitle%3Eshare-square%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M20,0h82.88a20.06,20.06,0,0,1,20,20v82.88a20.06,20.06,0,0,1-20,20H20a20.06,20.06,0,0,1-20-20V20A20.06,20.06,0,0,1,20,0ZM79.6,30h0a12.88,12.88,0,1,1-8.25,22.77L54.24,59.92a14.13,14.13,0,0,1,.1,1.46l17.78,8.19A12.77,12.77,0,1,1,67,77.12L51.25,69.84a12.88,12.88,0,1,1-1.16-17.92l16.79-7a12.41,12.41,0,0,1-.16-2A12.88,12.88,0,0,1,79.6,30Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 122.88%22%3E%3Ctitle%3Eshare-square%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M20,0h82.88a20.06,20.06,0,0,1,20,20v82.88a20.06,20.06,0,0,1-20,20H20a20.06,20.06,0,0,1-20-20V20A20.06,20.06,0,0,1,20,0ZM79.6,30h0a12.88,12.88,0,1,1-8.25,22.77L54.24,59.92a14.13,14.13,0,0,1,.1,1.46l17.78,8.19A12.77,12.77,0,1,1,67,77.12L51.25,69.84a12.88,12.88,0,1,1-1.16-17.92l16.79-7a12.41,12.41,0,0,1-.16-2A12.88,12.88,0,0,1,79.6,30Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
}

/* Link-Plattformen ohne Dashicon - als Maske aus assets/icons (Simple Icons,
   CC0). Welche Plattform welches Symbol nutzt, steht in
   ec_get_social_platforms() (includes/ec-speakers.php). */
html body .ec-event-calendar-app .ec-icon-tiktok,
html body .ec-icon-tiktok {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 width=%22240%22 height=%22240%22%3E %3Ctitle%3ETikTok%3C/title%3E %3Cpath fill=%22currentColor%22 d=%22M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.15 1.07-.14 1.61.24 1.64 1.82 3.02 3.5 2.87 1.12-.01 2.19-.66 2.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z%22/%3E %3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 width=%22240%22 height=%22240%22%3E %3Ctitle%3ETikTok%3C/title%3E %3Cpath fill=%22currentColor%22 d=%22M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.15 1.07-.14 1.61.24 1.64 1.82 3.02 3.5 2.87 1.12-.01 2.19-.66 2.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z%22/%3E %3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-x,
html body .ec-icon-x {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EX%3C/title%3E%3Cpath d=%22M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EX%3C/title%3E%3Cpath d=%22M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-etsy,
html body .ec-icon-etsy {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EEtsy%3C/title%3E%3Cpath d=%22M8.559 2.445c0-.325.033-.52.59-.52h7.465c1.3 0 2.02 1.11 2.54 3.193l.42 1.666h1.27c.23-4.728.43-6.784.43-6.784s-3.196.36-5.09.36H6.635L1.521.196v1.37l1.725.326c1.21.24 1.5.496 1.6 1.606 0 0 .11 3.27.11 8.64 0 5.385-.09 8.61-.09 8.61 0 .973-.39 1.333-1.59 1.573l-1.722.33V24l5.13-.165h8.55c1.935 0 6.39.165 6.39.165.105-1.17.75-6.48.855-7.064h-1.2l-1.284 2.91c-1.005 2.28-2.476 2.445-4.11 2.445h-4.906c-1.63 0-2.415-.64-2.415-2.05V12.8s3.62 0 4.79.096c.912.064 1.463.325 1.76 1.598l.39 1.695h1.41l-.09-4.278.192-4.305h-1.391l-.45 1.89c-.283 1.244-.48 1.47-1.754 1.6-1.666.17-4.815.14-4.815.14V2.45h-.05z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EEtsy%3C/title%3E%3Cpath d=%22M8.559 2.445c0-.325.033-.52.59-.52h7.465c1.3 0 2.02 1.11 2.54 3.193l.42 1.666h1.27c.23-4.728.43-6.784.43-6.784s-3.196.36-5.09.36H6.635L1.521.196v1.37l1.725.326c1.21.24 1.5.496 1.6 1.606 0 0 .11 3.27.11 8.64 0 5.385-.09 8.61-.09 8.61 0 .973-.39 1.333-1.59 1.573l-1.722.33V24l5.13-.165h8.55c1.935 0 6.39.165 6.39.165.105-1.17.75-6.48.855-7.064h-1.2l-1.284 2.91c-1.005 2.28-2.476 2.445-4.11 2.445h-4.906c-1.63 0-2.415-.64-2.415-2.05V12.8s3.62 0 4.79.096c.912.064 1.463.325 1.76 1.598l.39 1.695h1.41l-.09-4.278.192-4.305h-1.391l-.45 1.89c-.283 1.244-.48 1.47-1.754 1.6-1.666.17-4.815.14-4.815.14V2.45h-.05z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-bluesky,
html body .ec-icon-bluesky {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EBluesky%3C/title%3E%3Cpath d=%22M12 10.8c-1.087-2.114-4.046-6.053-6.798-7.995C2.566.944 1.561 1.266.902 1.565.139 1.908 0 3.08 0 3.768c0 .69.378 5.65.624 6.479.815 2.736 3.713 3.66 6.383 3.364.136-.02.275-.039.415-.056-.138.022-.276.04-.415.056-3.912.58-7.387 2.005-2.83 7.078 5.013 5.19 6.87-1.113 7.823-4.308.953 3.195 2.05 9.271 7.733 4.308 4.267-4.308 1.172-6.498-2.74-7.078a8.741 8.741 0 0 1-.415-.056c.14.017.279.036.415.056 2.67.297 5.568-.628 6.383-3.364.246-.828.624-5.79.624-6.478 0-.69-.139-1.861-.902-2.206-.659-.298-1.664-.62-4.3 1.24C16.046 4.748 13.087 8.687 12 10.8Z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EBluesky%3C/title%3E%3Cpath d=%22M12 10.8c-1.087-2.114-4.046-6.053-6.798-7.995C2.566.944 1.561 1.266.902 1.565.139 1.908 0 3.08 0 3.768c0 .69.378 5.65.624 6.479.815 2.736 3.713 3.66 6.383 3.364.136-.02.275-.039.415-.056-.138.022-.276.04-.415.056-3.912.58-7.387 2.005-2.83 7.078 5.013 5.19 6.87-1.113 7.823-4.308.953 3.195 2.05 9.271 7.733 4.308 4.267-4.308 1.172-6.498-2.74-7.078a8.741 8.741 0 0 1-.415-.056c.14.017.279.036.415.056 2.67.297 5.568-.628 6.383-3.364.246-.828.624-5.79.624-6.478 0-.69-.139-1.861-.902-2.206-.659-.298-1.664-.62-4.3 1.24C16.046 4.748 13.087 8.687 12 10.8Z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-threads,
html body .ec-icon-threads {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EThreads%3C/title%3E%3Cpath d=%22M12.186 24h-.007c-3.581-.024-6.334-1.205-8.184-3.509C2.35 18.44 1.5 15.586 1.472 12.01v-.017c.03-3.579.879-6.43 2.525-8.482C5.845 1.205 8.6.024 12.18 0h.014c2.746.02 5.043.725 6.826 2.098 1.677 1.29 2.858 3.13 3.509 5.467l-2.04.569c-1.104-3.96-3.898-5.984-8.304-6.015-2.91.022-5.11.936-6.54 2.717C4.307 6.504 3.616 8.914 3.589 12c.027 3.086.718 5.496 2.057 7.164 1.43 1.783 3.631 2.698 6.54 2.717 2.623-.02 4.358-.631 5.8-2.045 1.647-1.613 1.618-3.593 1.09-4.798-.31-.71-.873-1.3-1.634-1.75-.192 1.352-.622 2.446-1.284 3.272-.886 1.102-2.14 1.704-3.73 1.79-1.202.065-2.361-.218-3.259-.801-1.063-.689-1.685-1.74-1.752-2.964-.065-1.19.408-2.285 1.33-3.082.88-.76 2.119-1.207 3.583-1.291a13.853 13.853 0 0 1 3.02.142c-.126-.742-.375-1.332-.75-1.757-.513-.586-1.308-.883-2.359-.89h-.029c-.844 0-1.992.232-2.721 1.32L7.734 7.847c.98-1.454 2.568-2.256 4.478-2.256h.044c3.194.02 5.097 1.975 5.287 5.388.108.046.216.094.321.142 1.49.7 2.58 1.761 3.154 3.07.797 1.82.871 4.79-1.548 7.158-1.85 1.81-4.094 2.628-7.277 2.65Zm1.003-11.69c-.242 0-.487.007-.739.021-1.836.103-2.98.946-2.916 2.143.067 1.256 1.452 1.839 2.784 1.767 1.224-.065 2.818-.543 3.086-3.71a10.5 10.5 0 0 0-2.215-.221z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EThreads%3C/title%3E%3Cpath d=%22M12.186 24h-.007c-3.581-.024-6.334-1.205-8.184-3.509C2.35 18.44 1.5 15.586 1.472 12.01v-.017c.03-3.579.879-6.43 2.525-8.482C5.845 1.205 8.6.024 12.18 0h.014c2.746.02 5.043.725 6.826 2.098 1.677 1.29 2.858 3.13 3.509 5.467l-2.04.569c-1.104-3.96-3.898-5.984-8.304-6.015-2.91.022-5.11.936-6.54 2.717C4.307 6.504 3.616 8.914 3.589 12c.027 3.086.718 5.496 2.057 7.164 1.43 1.783 3.631 2.698 6.54 2.717 2.623-.02 4.358-.631 5.8-2.045 1.647-1.613 1.618-3.593 1.09-4.798-.31-.71-.873-1.3-1.634-1.75-.192 1.352-.622 2.446-1.284 3.272-.886 1.102-2.14 1.704-3.73 1.79-1.202.065-2.361-.218-3.259-.801-1.063-.689-1.685-1.74-1.752-2.964-.065-1.19.408-2.285 1.33-3.082.88-.76 2.119-1.207 3.583-1.291a13.853 13.853 0 0 1 3.02.142c-.126-.742-.375-1.332-.75-1.757-.513-.586-1.308-.883-2.359-.89h-.029c-.844 0-1.992.232-2.721 1.32L7.734 7.847c.98-1.454 2.568-2.256 4.478-2.256h.044c3.194.02 5.097 1.975 5.287 5.388.108.046.216.094.321.142 1.49.7 2.58 1.761 3.154 3.07.797 1.82.871 4.79-1.548 7.158-1.85 1.81-4.094 2.628-7.277 2.65Zm1.003-11.69c-.242 0-.487.007-.739.021-1.836.103-2.98.946-2.916 2.143.067 1.256 1.452 1.839 2.784 1.767 1.224-.065 2.818-.543 3.086-3.71a10.5 10.5 0 0 0-2.215-.221z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-mastodon,
html body .ec-icon-mastodon {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EMastodon%3C/title%3E%3Cpath d=%22M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38.265-.061.527-.132.786-.213.585-.184 1.27-.39 1.774-.753a.057.057 0 0 0 .023-.043v-1.809a.052.052 0 0 0-.02-.041.053.053 0 0 0-.046-.01 20.282 20.282 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.593 5.593 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422.038-.008.077-.015.11-.024 2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545zm-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102c0-1.31.337-2.35 1.011-3.12.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164.675.77 1.012 1.81 1.012 3.12z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EMastodon%3C/title%3E%3Cpath d=%22M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38.265-.061.527-.132.786-.213.585-.184 1.27-.39 1.774-.753a.057.057 0 0 0 .023-.043v-1.809a.052.052 0 0 0-.02-.041.053.053 0 0 0-.046-.01 20.282 20.282 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.593 5.593 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422.038-.008.077-.015.11-.024 2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545zm-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102c0-1.31.337-2.35 1.011-3.12.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164.675.77 1.012 1.81 1.012 3.12z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-bandcamp,
html body .ec-icon-bandcamp {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EBandcamp%3C/title%3E%3Cpath d=%22M0 18.75l7.437-13.5H24l-7.438 13.5H0z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EBandcamp%3C/title%3E%3Cpath d=%22M0 18.75l7.437-13.5H24l-7.438 13.5H0z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-discord,
html body .ec-icon-discord {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EDiscord%3C/title%3E%3Cpath d=%22M20.317 4.3698a19.7913 19.7913 0 00-4.8851-1.5152.0741.0741 0 00-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 00-.0785-.037 19.7363 19.7363 0 00-4.8852 1.515.0699.0699 0 00-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 00.0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 00.0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 00-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 01-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 01.0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 01.0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 01-.0066.1276 12.2986 12.2986 0 01-1.873.8914.0766.0766 0 00-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 00.0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 00.0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 00-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EDiscord%3C/title%3E%3Cpath d=%22M20.317 4.3698a19.7913 19.7913 0 00-4.8851-1.5152.0741.0741 0 00-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 00-.0785-.037 19.7363 19.7363 0 00-4.8852 1.515.0699.0699 0 00-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 00.0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 00.0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 00-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 01-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 01.0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 01.0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 01-.0066.1276 12.2986 12.2986 0 01-1.873.8914.0766.0766 0 00-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 00.0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 00.0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 00-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-telegram,
html body .ec-icon-telegram {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3ETelegram%3C/title%3E%3Cpath d=%22M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3ETelegram%3C/title%3E%3Cpath d=%22M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-patreon,
html body .ec-icon-patreon {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EPatreon%3C/title%3E%3Cpath d=%22M22.957 7.21c-.004-3.064-2.391-5.576-5.191-6.482-3.478-1.125-8.064-.962-11.384.604C2.357 3.231 1.093 7.391 1.046 11.54c-.039 3.411.302 12.396 5.369 12.46 3.765.047 4.326-4.804 6.068-7.141 1.24-1.662 2.836-2.132 4.801-2.618 3.376-.836 5.678-3.501 5.673-7.031Z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EPatreon%3C/title%3E%3Cpath d=%22M22.957 7.21c-.004-3.064-2.391-5.576-5.191-6.482-3.478-1.125-8.064-.962-11.384.604C2.357 3.231 1.093 7.391 1.046 11.54c-.039 3.411.302 12.396 5.369 12.46 3.765.047 4.326-4.804 6.068-7.141 1.24-1.662 2.836-2.132 4.801-2.618 3.376-.836 5.678-3.501 5.673-7.031Z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-kofi,
html body .ec-icon-kofi {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EKo-fi%3C/title%3E%3Cpath d=%22M11.351 2.715c-2.7 0-4.986.025-6.83.26C2.078 3.285 0 5.154 0 8.61c0 3.506.182 6.13 1.585 8.493 1.584 2.701 4.233 4.182 7.662 4.182h.83c4.209 0 6.494-2.234 7.637-4a9.5 9.5 0 0 0 1.091-2.338C21.792 14.688 24 12.22 24 9.208v-.415c0-3.247-2.13-5.507-5.792-5.87-1.558-.156-2.65-.208-6.857-.208m0 1.947c4.208 0 5.09.052 6.571.182 2.624.311 4.13 1.584 4.13 4v.39c0 2.156-1.792 3.844-3.87 3.844h-.935l-.156.649c-.208 1.013-.597 1.818-1.039 2.546-.909 1.428-2.545 3.064-5.922 3.064h-.805c-2.571 0-4.831-.883-6.078-3.195-1.09-2-1.298-4.155-1.298-7.506 0-2.181.857-3.402 3.012-3.714 1.533-.233 3.559-.26 6.39-.26m6.547 2.287c-.416 0-.65.234-.65.546v2.935c0 .311.234.545.65.545 1.324 0 2.051-.754 2.051-2s-.727-2.026-2.052-2.026m-10.39.182c-1.818 0-3.013 1.48-3.013 3.142 0 1.533.858 2.857 1.949 3.897.727.701 1.87 1.429 2.649 1.896a1.47 1.47 0 0 0 1.507 0c.78-.467 1.922-1.195 2.623-1.896 1.117-1.039 1.974-2.364 1.974-3.897 0-1.662-1.247-3.142-3.039-3.142-1.065 0-1.792.545-2.338 1.298-.493-.753-1.246-1.298-2.312-1.298%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EKo-fi%3C/title%3E%3Cpath d=%22M11.351 2.715c-2.7 0-4.986.025-6.83.26C2.078 3.285 0 5.154 0 8.61c0 3.506.182 6.13 1.585 8.493 1.584 2.701 4.233 4.182 7.662 4.182h.83c4.209 0 6.494-2.234 7.637-4a9.5 9.5 0 0 0 1.091-2.338C21.792 14.688 24 12.22 24 9.208v-.415c0-3.247-2.13-5.507-5.792-5.87-1.558-.156-2.65-.208-6.857-.208m0 1.947c4.208 0 5.09.052 6.571.182 2.624.311 4.13 1.584 4.13 4v.39c0 2.156-1.792 3.844-3.87 3.844h-.935l-.156.649c-.208 1.013-.597 1.818-1.039 2.546-.909 1.428-2.545 3.064-5.922 3.064h-.805c-2.571 0-4.831-.883-6.078-3.195-1.09-2-1.298-4.155-1.298-7.506 0-2.181.857-3.402 3.012-3.714 1.533-.233 3.559-.26 6.39-.26m6.547 2.287c-.416 0-.65.234-.65.546v2.935c0 .311.234.545.65.545 1.324 0 2.051-.754 2.051-2s-.727-2.026-2.052-2.026m-10.39.182c-1.818 0-3.013 1.48-3.013 3.142 0 1.533.858 2.857 1.949 3.897.727.701 1.87 1.429 2.649 1.896a1.47 1.47 0 0 0 1.507 0c.78-.467 1.922-1.195 2.623-1.896 1.117-1.039 1.974-2.364 1.974-3.897 0-1.662-1.247-3.142-3.039-3.142-1.065 0-1.792.545-2.338 1.298-.493-.753-1.246-1.298-2.312-1.298%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-icon-artstation,
html body .ec-icon-artstation {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EArtStation%3C/title%3E%3Cpath d=%22M0 17.723l2.027 3.505h.001a2.424 2.424 0 0 0 2.164 1.333h13.457l-2.792-4.838H0zm24 .025c0-.484-.143-.935-.388-1.314L15.728 2.728a2.424 2.424 0 0 0-2.142-1.289H9.419L21.598 22.54l1.92-3.325c.378-.637.482-.919.482-1.467zm-11.129-3.462L7.428 4.858l-5.444 9.428h10.887z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg role=%22img%22 viewBox=%220 0 24 24%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Ctitle%3EArtStation%3C/title%3E%3Cpath d=%22M0 17.723l2.027 3.505h.001a2.424 2.424 0 0 0 2.164 1.333h13.457l-2.792-4.838H0zm24 .025c0-.484-.143-.935-.388-1.314L15.728 2.728a2.424 2.424 0 0 0-2.142-1.289H9.419L21.598 22.54l1.92-3.325c.378-.637.482-.919.482-1.467zm-11.129-3.462L7.428 4.858l-5.444 9.428h10.887z%22/%3E%3C/svg%3E");
}

html body .ec-event-calendar-app .ec-mobile-venue,
.ec-event-calendar-app .ec-mobile-image {
  display: none;
}

/* Farbige SVG Icons - mehrfarbig, deshalb background-image statt Maske.
   Zweiter Selektor jeweils ohne .ec-event-calendar-app, siehe Herz oben. */
html body .ec-event-calendar-app .ec-icon-calendar-svg,
html body .ec-icon-calendar-svg {
  background-image: url("data:image/svg+xml,%3Csvg width=%2280%22 height=%2275%22 viewBox=%2210 15 80 75%22 fill=%22none%22 xmlns=%22http://www.w3.org/2000/svg%22%3E %3Cdefs%3E %3ClinearGradient id=%22headerGradient%22 x1=%2250%22 y1=%2215%22 x2=%2250%22 y2=%2235%22 gradientUnits=%22userSpaceOnUse%22%3E %3Cstop offset=%220%25%22 stop-color=%22%23FF5F5F%22/%3E %3Cstop offset=%22100%25%22 stop-color=%22%23D92D2D%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22ringGradient%22 x1=%2222%22 y1=%2265%22 x2=%2240%22 y2=%2283%22 gradientUnits=%22userSpaceOnUse%22%3E %3Cstop offset=%220%25%22 stop-color=%22%23FF7E5F%22/%3E %3Cstop offset=%22100%25%22 stop-color=%22%23EF4444%22/%3E %3C/linearGradient%3E %3C/defs%3E %3Crect x=%2210%22 y=%2215%22 width=%2280%22 height=%2275%22 rx=%2210%22 fill=%22white%22 stroke=%22%23E2E8F0%22 stroke-width=%221%22/%3E %3Cpath d=%22M10 25C10 19.4772 14.4772 15 20 15H80C85.5228 15 90 19.4772 90 25V35H10V25Z%22 fill=%22url%28%23headerGradient%29%22/%3E %3Cg fill=%22%23CBD5E1%22%3E %3Crect x=%2256.5%22 y=%2240%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2266.5%22 y=%2240%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2276.5%22 y=%2240%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2216.5%22 y=%2250%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2226.5%22 y=%2250%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2236.5%22 y=%2250%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2246.5%22 y=%2250%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2256.5%22 y=%2250%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2266.5%22 y=%2250%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2276.5%22 y=%2250%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2216.5%22 y=%2260%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2226.5%22 y=%2260%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2236.5%22 y=%2260%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2246.5%22 y=%2260%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2256.5%22 y=%2260%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2266.5%22 y=%2260%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2276.5%22 y=%2260%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2216.5%22 y=%2270%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2226.5%22 y=%2270%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2236.5%22 y=%2270%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2246.5%22 y=%2270%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2256.5%22 y=%2270%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2266.5%22 y=%2270%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2276.5%22 y=%2270%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2216.5%22 y=%2280%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2226.5%22 y=%2280%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3Crect x=%2236.5%22 y=%2280%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E %3C/g%3E %3Crect x=%2226.5%22 y=%2270%22 width=%227%22 height=%227%22 rx=%221.5%22 fill=%22%23EF4444%22 fill-opacity=%220.2%22/%3E %3Ccircle cx=%2230%22 cy=%2273.5%22 r=%229.5%22 stroke=%22url%28%23ringGradient%29%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-dasharray=%2236 14%22 transform=%22rotate%28-20 30 73.5%29%22 fill=%22none%22 /%3E %3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: transparent;
}

html body .ec-event-calendar-app .ec-icon-ticket-svg,
html body .ec-icon-ticket-svg {
  background-image: url("data:image/svg+xml,%3Csvg width=%22300%22 height=%22150%22 viewBox=%220 0 300 150%22 fill=%22none%22 xmlns=%22http://www.w3.org/2000/svg%22%3E %3Cdefs%3E %3CsolidColor id=%22bgYellow%22 solid-color=%22%23FBEEC1%22/%3E %3CsolidColor id=%22headerRed%22 solid-color=%22%23E74C3C%22/%3E %3CsolidColor id=%22contentGrey%22 solid-color=%22%237F8C8D%22/%3E %3Cpolygon id=%22starPoly%22 points=%2210,1 12,7 18,7 13,11 15,17 10,14 5,17 7,11 2,7 8,7%22 fill=%22%237F8C8D%22/%3E %3C/defs%3E %3Cpath d=%22M 10,10 H 212 A 8,8 0 0 0 228,10 H 290 L 295,15 L 290,20 L 295,25 L 290,30 L 295,35 L 290,40 L 295,45 L 290,50 L 295,55 L 290,60 L 295,65 L 290,70 L 295,75 L 290,80 L 295,85 L 290,90 L 295,95 L 290,100 L 295,105 L 290,110 L 295,115 L 290,120 L 295,125 L 290,130 L 295,135 L 290,140 H 228 A 8,8 0 0 0 212,140 H 10 L 5,135 L 10,130 L 5,125 L 10,120 L 5,115 L 10,110 L 5,105 L 10,100 L 5,95 L 10,90 L 5,85 L 10,80 L 5,75 L 10,70 L 5,65 L 10,60 L 5,55 L 10,50 L 5,45 L 10,40 L 5,35 L 10,30 L 5,25 L 10,20 L 5,15 L 10,10 Z%22 fill=%22%23FBEEC1%22/%3E %3Cpath d=%22M 10,10 H 212 A 8,8 0 0 0 228,10 H 290 L 295,15 L 290,20 L 295,25 L 290,30 L 295,35 H 10 L 5,35 L 10,30 L 5,25 L 10,20 L 5,15 L 10,10 Z%22 fill=%22%23E74C3C%22/%3E %3Cline x1=%22220%22 y1=%2218%22 x2=%22220%22 y2=%22132%22 stroke=%22%237F8C8D%22 stroke-width=%222%22 stroke-dasharray=%225,5%22/%3E %3Cg fill=%22%237F8C8D%22%3E %3Cg transform=%22translate%2825, 35%29%22%3E %3Cuse href=%22%23starPoly%22 x=%220%22/%3E %3Cuse href=%22%23starPoly%22 x=%2230%22/%3E %3Cuse href=%22%23starPoly%22 x=%2260%22/%3E %3Cuse href=%22%23starPoly%22 x=%2290%22/%3E %3Cuse href=%22%23starPoly%22 x=%22120%22/%3E %3C/g%3E %3Ctext x=%22115%22 y=%22100%22 font-family=%22Arial, sans-serif%22 font-size=%2250%22 font-weight=%22bold%22 text-anchor=%22middle%22%3ETICKET%3C/text%3E %3Cg transform=%22translate%2825, 105%29%22%3E %3Cuse href=%22%23starPoly%22 x=%220%22/%3E %3Cuse href=%22%23starPoly%22 x=%2230%22/%3E %3Cuse href=%22%23starPoly%22 x=%2260%22/%3E %3Cuse href=%22%23starPoly%22 x=%2290%22/%3E %3Cuse href=%22%23starPoly%22 x=%22120%22/%3E %3C/g%3E %3C/g%3E %3Cg transform=%22translate%28235, 40%29%22 fill=%22%237F8C8D%22%3E %3Crect y=%220%22 width=%2250%22 height=%224%22/%3E %3Crect y=%227%22 width=%2250%22 height=%222%22/%3E %3Crect y=%2212%22 width=%2250%22 height=%226%22/%3E %3Crect y=%2221%22 width=%2250%22 height=%223%22/%3E %3Crect y=%2227%22 width=%2250%22 height=%229%22/%3E %3Crect y=%2239%22 width=%2250%22 height=%222%22/%3E %3Crect y=%2244%22 width=%2250%22 height=%225%22/%3E %3Crect y=%2252%22 width=%2250%22 height=%223%22/%3E %3Crect y=%2258%22 width=%2250%22 height=%228%22/%3E %3Crect y=%2269%22 width=%2250%22 height=%224%22/%3E %3C/g%3E %3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: transparent;
}

/* Aktiver Herz-Zustand */
html body .ec-event-calendar-app #ec-app .ec-card-actions .ec-fav-btn.active .ec-icon-heart,
html body .ec-event-calendar-app #ec-app .ec-table-actions .ec-fav-btn.active .ec-icon-heart {
  background-color: var(--ec-primary);
}


/* ==========================================================================
   4. SHARED UI COMPONENTS
   ========================================================================== */

/* 1. ICON BASIS: Gilt für Kacheln, Tabelle, Card & Single Page */
html body .ec-event-calendar-app .ec-icon-svg {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  flex-shrink: 0;
  position: relative;
  top: 0px;
  /* Reset-Basis */
}

/* Herz-Icon: Optische Korrektur (ÃƒÆ’Ã…â€œberall gÃƒÆ’Ã‚Â¼ltig) */
html body .ec-event-calendar-app .ec-icon-heart {
  background-color: currentColor;
  display: inline-block;
  position: relative;
  overflow: visible;
  padding: 10px;
  margin: -10px;
}

/* 2. TEXT-BUTTONS (42px): Hohe Spezifität verhindert Theme-Überschreibung */
html body .ec-event-calendar-app #ec-app .ec-btn-compact,
html body .ec-event-calendar-app #ec-app .ec-btn-fav-filter,
html body .ec-event-calendar-app #ec-app #ec-ticket-btn-toolbar,
html body .ec-event-calendar-app #ec-app #ec-copy-link-btn,
html body .ec-event-calendar-app #ec-app a#ec-ical-download-btn,
html body .ec-event-calendar-app .ec-compact-card-wrapper .ec-btn-compact,
html body .ec-event-calendar-app .ec-single-container .ec-single-actions-bar button,
html body .ec-event-calendar-app .ec-single-container .ec-single-actions-bar a.ec-ticket-btn-single {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  min-height: 42px;
  max-height: 42px;
  padding: 0 12px;
  gap: 6px;
  box-sizing: border-box;
  line-height: 1;
  overflow: hidden;
  white-space: nowrap;
}

/* 3. REINE ICON-BUTTONS */
html body .ec-event-calendar-app #ec-app .ec-card-actions button,
html body .ec-event-calendar-app #ec-app .ec-table-actions button,
html body .ec-event-calendar-app #ec-app .ec-ical-btn,
html body .ec-event-calendar-app #ec-app .ec-fav-btn {
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  width: auto;
  height: auto;
  box-shadow: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Globale Größensteuerung für alle Ticket-Icons */
html body .ec-event-calendar-app .ec-icon-ticket-svg,
html body .ec-ticket-btn-single .ec-icon-ticket-svg {
  width: 24px;
  height: 24px;
  display: inline-block;
  vertical-align: middle;
}

/* ==========================================================================
   ENDE HARMONISIERUNG
   ========================================================================== */


/* ==========================================================================
   4B. MODERN TILES (gemeinsame Basis: Kalender [event_calendar] + Timetable
   [event_timetable]). Beide Shortcodes laden ec-core.css als Abhängigkeit vor
   ec-main.css bzw. ec-timetable.css (siehe wp_register_style in
   event-calendar.php), daher greift diese Basis für beide automatisch.
   Kalender- bzw. Timetable-spezifische Kacheln (z.B. Such-/Filter-Reset-
   Kachel, die nur der Kalender kennt) bleiben bewusst in der jeweiligen Datei.
   ========================================================================== */

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex: 0 0 68px;
    width: 68px;
    min-width: 68px;
    max-width: 68px;
    height: 78px;
    min-height: 78px;
    max-height: 78px;
    padding: 6px 3px;
    border: 2px solid var(--ec-primary, #f76b15);
    border-radius: 6px;
    background: #ffffff;
    background-color: rgba(255, 255, 255, 0.95);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    box-sizing: border-box;
    text-decoration: none;
    margin: 0;
    gap: 2px;
    overflow: hidden;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile:hover {
    background-color: rgba(247, 107, 21, 0.08);
    border-color: var(--ec-primary, #f76b15);
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile .ec-mb-day {
    display: block;
    font-size: 0.88rem;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    color: var(--ec-primary, #f76b15);
    margin: 0;
    padding: 0;
    letter-spacing: 0.2px;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile .ec-mb-date {
    display: block;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1;
    margin: 0;
    padding: 0;
    color: var(--ec-primary, #f76b15);
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile .ec-mb-month {
    display: block;
    font-size: 0.62rem;
    font-weight: 700;
    line-height: 1;
    color: var(--ec-primary, #f76b15);
    margin: 0;
    padding: 0;
    white-space: nowrap;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.active {
    background-color: var(--ec-primary, #f76b15);
    border-color: var(--ec-primary, #f76b15);
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.active .ec-mb-day,
html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.active .ec-mb-date,
html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.active .ec-mb-month {
    color: #ffffff;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile svg {
    width: 26px;
    height: 26px;
    display: block;
    margin: 0 auto;
    pointer-events: none;
}

/* Herz/ALL-Kachel (Favoriten-Umschalter als Kachel) */
html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-modern-fav-toggle {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 0 0 68px;
    width: 68px;
    min-width: 68px;
    max-width: 68px;
    height: 78px;
    min-height: 78px;
    max-height: 78px;
    padding: 0;
    gap: 0;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-modern-fav-toggle svg {
    fill: var(--ec-primary, #f76b15);
    stroke: none;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-modern-fav-toggle.active {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 0 0 68px;
    width: 68px;
    min-width: 68px;
    max-width: 68px;
    height: 78px;
    min-height: 78px;
    max-height: 78px;
    padding: 6px 3px;
    border: 2px solid var(--ec-primary, #f76b15);
    border-radius: 6px;
    background-color: var(--ec-primary, #f76b15);
    border-color: var(--ec-primary, #f76b15);
    gap: 3px;
    box-sizing: border-box;
    overflow: hidden;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-modern-fav-toggle.active .ec-modern-tile-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    margin: 0;
    padding: 0;
}

/* Aktive Kachel: Icon fest weiß (früher svg { fill: #ffffff }) */
html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-modern-fav-toggle.active .ec-icon-svg.ec-icon-fav-alert {
    margin: 0 auto;
    width: 24px;
    height: 24px;
    display: block;
    background-color: #ffffff;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-modern-fav-toggle.active .ec-modern-all-text {
    display: block;
    font-size: 0.62rem;
    font-weight: 800;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-align: center;
}

/* "Favoriten teilen"-Kachel - aktuell nur vom Timetable gerendert, hier aber
   zentral definiert, damit sie bei Bedarf ohne Zusatz-CSS auch im
   Hauptkalender nutzbar wäre. */
html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-btn-share {
    color: var(--ec-primary, #f76b15);
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-btn-share:hover {
    background-color: rgba(247, 107, 21, 0.08);
    border-color: var(--ec-primary, #f76b15);
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-btn-share .ec-icon-svg {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    margin: 0 auto;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-btn-share svg {
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-btn-share svg,
html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-btn-share svg path,
html body .ec-event-calendar-app.ec-filter-modern .ec-modern-tile.ec-btn-share svg g {
    fill: var(--ec-primary, #f76b15);
}

/* Horizontale Scroll-Pfeile der Kachel-Leiste - EINHEITLICHER Klassenname
   .ec-modern-date-scroll-arrow für Kalender UND Timetable (vorher hieß die
   Kalender-Variante .ec-scroll-arrow und kollidierte mit einer gänzlich
   anderen Komponente in ec-timetable.css - den runden, fixed-positionierten
   Scroll-Buttons fürs Zeitplan-Grid, Abschnitt "12. SCROLL NAVIGATION
   ARROWS". Durch die Umbenennung entfällt der Namenskonflikt vollständig,
   daher jetzt ohne. */
html body .ec-event-calendar-app.ec-filter-modern .ec-modern-date-scroll-arrow {
    position: absolute;
    top: 0;
    bottom: 10px;
    width: 28px;
    max-width: 28px;
    height: auto;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
    color: var(--ec-primary, #f76b15);
    border: none;
    border-radius: 0;
    box-shadow: none;
    transform: none;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-date-scroll-arrow.visible {
    opacity: 1;
    pointer-events: auto;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-date-scroll-arrow.left {
    left: 0;
    right: auto;
    background: linear-gradient(to right, rgba(255, 255, 255, 0.92) 40%, transparent);
    border-radius: 6px 0 0 6px;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-date-scroll-arrow.right {
    right: 0;
    left: auto;
    background: linear-gradient(to left, rgba(255, 255, 255, 0.92) 40%, transparent);
    border-radius: 0 6px 6px 0;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-date-scroll-arrow svg {
    width: 18px;
    height: 18px;
    max-width: 18px;
    max-height: 18px;
    stroke: currentColor;
    stroke-width: 2.5;
    fill: none;
    display: block;
}

html body .ec-event-calendar-app.ec-filter-modern .ec-modern-date-scroll-arrow::before,
html body .ec-event-calendar-app.ec-filter-modern .ec-modern-date-scroll-arrow::after {
    display: none;
}


/* =========================================
   5. POPUPS & MODALS (SHARE & ICAL)
   ========================================= */

html body .ec-event-calendar-app .ec-modal {
  display: none;
  position: fixed;
  z-index: 1000010;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(5px);
  overflow-y: auto;
}

/* Aktiv-Klasse gewinnt durch Spezifität */
html body .ec-event-calendar-app .ec-modal.active {
  display: flex;
}

html body .ec-event-calendar-app .ec-modal-content {
  background-color: #fff;
  padding: 30px;
  border: 1px solid #888;
  width: 90%;
  max-width: 400px;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  position: relative;
  text-align: center;
  box-sizing: border-box;
  /* Wichtig für korrekte Breitenberechnung */
}

/* Modifiziert: Weicher Übergang hinzugefügt */
html body .ec-event-calendar-app .ec-close {
  position: absolute;
  right: 15px;
  top: 10px;
  cursor: pointer;
  font-size: 30px;
  color: #666;
  transition: color 0.2s ease-in-out;
}

/* NEU: Primärfarbe bei Mouse-Over */
html body .ec-event-calendar-app .ec-close:hover {
  color: var(--ec-primary);
}

html body .ec-event-calendar-app .ec-modal-title {
  margin-top: 0;
}

html body .ec-event-calendar-app .ec-modal-qr-container {
  text-align: center;
  margin: 15px 0;
}

html body .ec-event-calendar-app .ec-modal-hint {
  margin-bottom: 5px;
}

html body .ec-event-calendar-app .ec-qr-container {
  text-align: center;
  margin: 15px 0;
}

html body .ec-event-calendar-app .ec-qr-container canvas,
.ec-event-calendar-app .ec-qr-container img {
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  display: block;
}

html body .ec-event-calendar-app .ec-modal-input-full {
  display: block;
  width: 100%;
  padding: 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  margin-bottom: 15px;
  box-sizing: border-box;
  font-size: 14px;
  background-color: #f8f9fa;
  text-align: center;
}

html body .ec-event-calendar-app .ec-modal-btn-full {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

html body .ec-event-calendar-app .ec-modal-icon {
  display: flex;
  width: 18px;
  height: 18px;
}

html body .ec-event-calendar-app .ec-modal-btn-text {
  font-weight: 700;
}

html body .ec-event-calendar-app .ec-modal-item-title {
  font-weight: bold;
  margin-bottom: 5px;
}

html body .ec-event-calendar-app .ec-alert-modal-message {
  margin: 0 0 20px 0;
  line-height: 1.5;
}

html body .ec-event-calendar-app .ec-modal-download-btn {
  width: 100%;
  padding: 10px;
  background: var(--ec-primary);
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  display: block;
  text-align: center;
  box-sizing: border-box;
}

html body .ec-event-calendar-app .ec-modal-icon-emoji {
  font-size: 1.2rem;
  line-height: 1;
}

/* =========================================
   6. EVENT DETAIL POP-UP MODAL
   ========================================= */

html.ec-modal-open,
body.ec-modal-open {
  overflow: hidden;
}

html body .ec-event-calendar-app .ec-detail-modal {
  display: none;
  position: fixed;
  z-index: 999990;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.65);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 40px 20px;
  box-sizing: border-box;
  opacity: 0;
  transition: opacity 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  overscroll-behavior: contain;
}

html body .ec-event-calendar-app .ec-detail-modal.active {
  display: flex;
  opacity: 1;
}

html body .ec-event-calendar-app .ec-detail-modal-backdrop {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  touch-action: none;
}

html body .ec-event-calendar-app .ec-detail-modal-container {
  position: relative;
  z-index: 2;
  width: 100%;
  /* Wie die Einzelseite (.ec-single-container, 1200px): Erst ab dieser Breite
     passt der Kopfbereich dreispaltig - Zeit/Ort, Rolle/Sprache, Aussteller
     (Raster-Stufen in ec-single-event.css). Vorher 1000px. */
  max-width: 1200px;
  max-height: 88vh;
  max-height: 88dvh;
  max-height: 88svh;
  margin: auto;
  display: flex;
  flex-direction: column;
  transform: scale(0.96);
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

html body .ec-event-calendar-app .ec-detail-modal.active .ec-detail-modal-container {
  transform: scale(1);
}

html body .ec-event-calendar-app .ec-detail-modal-dialog {
  position: relative;
  width: 100%;
  max-height: 88vh;
  max-height: 88dvh;
  max-height: 88svh;
  background: #ffffff;
  box-sizing: border-box;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  border-radius: 16px;
  -webkit-clip-path: inset(0 round 16px);
  clip-path: inset(0 round 16px);
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.45);
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 0, 0, 0.25) transparent;
}

html body .ec-event-calendar-app .ec-detail-modal-dialog::-webkit-scrollbar {
  width: 8px;
}

html body .ec-event-calendar-app .ec-detail-modal-dialog::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.22);
  border-radius: 99px;
}

html body .ec-event-calendar-app .ec-detail-modal-dialog::-webkit-scrollbar-thumb:hover {
  background: rgba(0, 0, 0, 0.45);
}

html body .ec-event-calendar-app .ec-detail-modal-dialog::-webkit-scrollbar-track {
  background: transparent;
  margin: 12px 0;
}

/* Zurück-Pfeil im Detail-Modal: erscheint NUR, wenn ein Programmpunkt aus einem
   anderen heraus geöffnet wurde (Klick auf einen verwandten Termin). Das JS setzt
   dafür die Klasse ec-has-parent-level auf #ec-detail-modal. Ohne diese Klasse
   bleibt der Knopf ausgeblendet - im Normalfall gibt es keine Ebene darunter. */
html body .ec-event-calendar-app .ec-detail-modal-back-btn {
  display: none;
}

html body .ec-event-calendar-app .ec-detail-modal.ec-has-parent-level .ec-detail-modal-back-btn,
html body .ec-detail-modal.ec-has-parent-level .ec-detail-modal-back-btn {
  display: flex;
  position: absolute;
  top: -16px;
  left: -16px;
  z-index: 99;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #ffffff;
  color: #1e293b;
  border: 2px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

html body .ec-detail-modal.ec-has-parent-level .ec-detail-modal-back-btn:hover {
  background: var(--ec-primary, var(--ec-s-accent, #f76b15));
  color: #ffffff;
  border-color: var(--ec-primary, var(--ec-s-accent, #f76b15));
}

/* Floating Close Button - Always visible regardless of scrolling */
html body .ec-event-calendar-app .ec-detail-modal-close,
html body .ec-floorplan-modal-close {
  position: absolute;
  top: -16px;
  right: -16px;
  z-index: 99;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #ffffff;
  color: #1e293b;
  border: 2px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
  font-size: 24px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

html body .ec-event-calendar-app .ec-detail-modal-close:hover,
html body .ec-floorplan-modal-close:hover {
  background: var(--ec-primary, var(--ec-s-accent, #f76b15));
  color: #ffffff;
  border-color: var(--ec-primary, var(--ec-s-accent, #f76b15));
  transform: scale(1.1) rotate(90deg);
  box-shadow: 0 6px 25px rgba(0, 0, 0, 0.45);
}

/* Inner single container overrides inside modal */
html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-single-container {
  max-width: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
}

html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-single-container.no-hero-image {
  margin-top: 0;
}

html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-single-header,
html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-hero-image,
html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-single-card,
html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-single-container.no-hero-image .ec-single-card {
  border-radius: 0;
}

html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-single-card {
  box-shadow: none;
}

html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-single-footer {
  display: none;
}

/* Bottom Modal Footer & Close Button */
html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-modal-footer {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding: 16px 30px 24px 30px;
  background: #ffffff;
  border-top: 1px solid #f1f5f9;
  box-sizing: border-box;
}

html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-detail-modal-close-bottom {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 24px;
  font-size: 15px;
  font-weight: 600;
  color: #475569;
  background: #f8fafc;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  line-height: 1.4;
}

html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-detail-modal-close-bottom:hover {
  background: var(--ec-primary, #f76b15);
  color: #ffffff;
  border-color: var(--ec-primary, #f76b15);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

@media (max-width: 1024px) {
  html body .ec-event-calendar-app .ec-detail-modal {
    padding: 10px 10px calc(10px + env(safe-area-inset-bottom, 0px)) 10px;
  }
  html body .ec-event-calendar-app .ec-detail-modal-container {
    max-height: 90vh;
    max-height: 90dvh;
    max-height: 90svh;
  }
  html body .ec-event-calendar-app .ec-detail-modal-dialog {
    max-height: 90vh;
    max-height: 90dvh;
    max-height: 90svh;
    border-radius: 12px;
    -webkit-clip-path: inset(0 round 12px);
    clip-path: inset(0 round 12px);
  }
  html body .ec-event-calendar-app .ec-detail-modal-close,
  html body .ec-floorplan-modal-close {
    top: 10px;
    right: 10px;
    width: 36px;
    height: 36px;
    font-size: 20px;
    background: rgba(0, 0, 0, 0.65);
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.2);
  }
  html body .ec-event-calendar-app .ec-detail-modal-close:hover,
  html body .ec-floorplan-modal-close:hover {
    background: #ffffff;
    color: #111;
    border-color: #ffffff;
  }
  html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-modal-footer {
    padding: 14px 16px calc(16px + env(safe-area-inset-bottom, 0px)) 16px;
  }
  html body .ec-event-calendar-app .ec-detail-modal-dialog .ec-detail-modal-close-bottom {
    width: 100%;
    padding: 12px 20px;
    font-size: 16px;
  }
}

html body .ec-event-calendar-app .ec-cat-bubble {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3;
  background: var(--ec-primary);
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 4px 10px;
  border-radius: 4px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  max-width: calc(100% - 20px);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
}

html body .ec-event-calendar-app .ec-table-thumb .ec-cat-bubble,
html body .ec-event-calendar-app .ec-mobile-image .ec-cat-bubble {
  top: 4px;
  left: 4px;
  font-size: 0.6rem;
  padding: 2px 6px;
  border-radius: 3px;
}

/* =========================================
   LIVE BADGES & ANIMATIONS (KALENDERANSICHTEN)
   ========================================= */

html body .ec-event-calendar-app .ec-badge-live {
  background: #d63638;
  color: #fff;
  border-radius: 4px;
  font-weight: 800;
  display: inline-block;
  text-transform: uppercase;
  line-height: 1.2;
}

html body .ec-event-calendar-app .ec-blink {
  animation: ec-badge-blink 1.5s infinite ease-in-out;
}

@keyframes ec-badge-blink {
  0% { opacity: 1; }
  50% { opacity: 0.4; } 
  100% { opacity: 1; }
}

/* 1. Kachelansicht (Grid View): Oben rechts auf dem Bild */
html body .ec-event-calendar-app .ec-card-image .ec-grid-live-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 3;
  font-size: 0.7rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 4px 10px;
  border-radius: 4px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  pointer-events: none;
}

/* 2. Listenansicht Desktop (Table View): Unter der Uhrzeit */
html body .ec-event-calendar-app .ec-col-time .ec-table-live-desktop {
  margin-top: 5px;
  display: block;
}
html body .ec-event-calendar-app .ec-col-time .ec-table-live-desktop .ec-badge-live {
  font-size: 0.7rem;
  font-weight: 800;
  padding: 3px 8px;
  border-radius: 3px;
  letter-spacing: 0.5px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

/* 3. Listenansicht Mobile (Table View): Oben rechts im Mobilbild vor den Aktionsicons */
html body .ec-event-calendar-app .ec-mobile-image .ec-mobile-image-live-badge,
html body .ec-event-calendar-app .ec-mobile-image-wrapper.ec-no-img .ec-mobile-image-live-badge {
  position: absolute;
  top: 4px;
  right: 48px; /* Vor den schwebenden Fav/Kalender-Icons (40px Breite) */
  z-index: 4;
  font-size: 0.6rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 2px 6px;
  border-radius: 3px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  pointer-events: none;
  white-space: nowrap;
}

html body .ec-event-calendar-app table.ec-table tbody tr.ec-table-row-custom:not(:has(.ec-col-fav)) .ec-mobile-image .ec-mobile-image-live-badge,
html body .ec-event-calendar-app table.ec-table tbody tr.ec-table-row-custom:not(:has(.ec-col-fav)) .ec-mobile-image-wrapper.ec-no-img .ec-mobile-image-live-badge {
  right: 4px;
}

html body .ec-event-calendar-app .qr-code-container img,
html body .ec-event-calendar-app #kalender-modal-content img {
  width: auto;
  height: auto;
  margin: 0 auto;
  padding: 0;
  display: block;
}

/* POPUP BUTTONS (ZENTRIERUNG) */

/* Container für den Copy-Input */
html body .ec-event-calendar-app .copy-link-wrapper {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  margin-top: 15px;
}

/* POPUP BUTTONS (Copy & iCal) */
html body .ec-event-calendar-app #ec-copy-link-btn,
html body .ec-event-calendar-app a#ec-ical-download-btn {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  gap: 10px;
  background-color: #fff;
  color: var(--ec-primary);
  border: 2px solid var(--ec-primary);
  padding: 10px 0;
  margin-top: 10px;
  border-radius: 4px;
  box-shadow: none;
  text-decoration: none;
  font-weight: 700;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

/* HOVER: FÃƒÆ’Ã‚Â¼llen mit Farbe */
html body .ec-event-calendar-app #ec-copy-link-btn:hover,
html body .ec-event-calendar-app a#ec-ical-download-btn:hover {
  background-color: var(--ec-primary);
  color: #fff;
}

/* CLICKED (Nur Copy Button) */
html body .ec-event-calendar-app #ec-copy-link-btn.clicked {
  border-color: #27ae60;
  background-color: #27ae60;
  color: #fff;
  cursor: default;
}

/* INHALT FIXIEREN (Verhindert das "Verrutschen" ab der Mitte) */
/* Text-Spans als Block */
html body .ec-event-calendar-app #ec-copy-link-btn span.btn-text-content,
html body .ec-event-calendar-app a#ec-ical-download-btn span.btn-text-content {
  display: block;
  flex-grow: 0;
  flex-shrink: 0;
  width: auto;
  margin: 0;
  line-height: 1;
}

/* Icon-Wrapper als Flexbox erhalten (Behebt den Höhen-Versatz nach oben) */
html body .ec-event-calendar-app #ec-copy-link-btn span.ec-icon-svg,
html body .ec-event-calendar-app a#ec-ical-download-btn span.ec-icon-svg {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-grow: 0;
  flex-shrink: 0;
  margin: 0;
}

/* Icon Größe fixieren & Farbe erben (Behebt schwarzes Icon im Timetable) */
html body .ec-event-calendar-app #ec-copy-link-btn svg,
html body .ec-event-calendar-app .ec-icon-link,
html body .ec-event-calendar-app .ec-icon-check {
  width: 20px;
  height: 20px;
  display: block;
}

html body .ec-event-calendar-app #ec-copy-link-btn svg path {
  fill: currentColor;
}



/* Icon-Logik Copy Button */
html body .ec-event-calendar-app #ec-copy-link-btn .ec-icon-link {
  display: block;
}

html body .ec-event-calendar-app #ec-copy-link-btn .ec-icon-check {
  display: none;
}

/* Icon-Logik Copy Button */
html body .ec-event-calendar-app #ec-copy-link-btn.clicked .ec-icon-link {
  display: none;
}

html body .ec-event-calendar-app #ec-copy-link-btn.clicked .ec-icon-check {
  display: block;
  stroke: #fff;
}



/* ============================================================
   6. CATEGORY BUBBLES
   ============================================================ */
html body .ec-event-calendar-app .ec-cat-bubble {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3;
  background: var(--ec-primary);
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 4px 10px;
  border-radius: 4px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  max-width: calc(100% - 20px);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
}

html body .ec-event-calendar-app .ec-table-thumb .ec-cat-bubble,
.ec-event-calendar-app .ec-mobile-image .ec-cat-bubble {
  top: 4px;
  left: 4px;
  font-size: 0.6rem;
  padding: 2px 6px;
  border-radius: 3px;
}

/* ============================================================
   6.1 ADDITIONAL ACTION LOGIC (MODALS & TICKETS)
   ============================================================ */

html body .ec-event-calendar-app #ec-ical-download-btn .ec-icon-calendar-svg {
  width: 32px;
  height: 32px;
  margin-right: 8px;
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
}

/* ButtonhÃƒÂ¶he auf 42px fixieren */
html body .ec-event-calendar-app #ec-ical-download-btn {
  display: flex;
  /* Wichtig gegen Theme-Block-Styles */
  align-items: center;
  justify-content: center;
  height: 42px;
  min-height: 42px;
  max-height: 42px;
  box-sizing: border-box;
  line-height: 1;
}

html body .ec-event-calendar-app #ec-copy-link-btn:hover {
  background-color: var(--ec-primary, #f76b15);
  color: #ffffff;
}

html body .ec-event-calendar-app #ec-copy-link-btn.clicked {
  border-color: #27ae60;
  background-color: #27ae60;
  color: #fff;
}

/* Ticket-Icon (Tabelle & Grid) */
html body .ec-event-calendar-app #ec-app .ec-ticket-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  width: 30px;
  height: 30px;
  margin-right: 0;
  font-size: 24px;
  transition: background-color 0.2s, border-color 0.2s, color 0.2s, transform 0.2s;
}

html body .ec-event-calendar-app #ec-app .ec-ticket-btn:hover {
  transform: scale(1.2);
  background: transparent;
  opacity: 1;
}

/* Favoriten-Icons in Kartenaktionen */
html body .ec-event-calendar-app #ec-app .ec-card-actions .ec-icon-heart,
html body .ec-event-calendar-app #ec-app .ec-table-actions .ec-icon-heart {
  background-color: #555;
  vertical-align: baseline;
  position: relative;
}

/* ============================================================
   7.2 CANCELLED BADGE & TEXT (Abgesagt Status)
   ============================================================ */
/* ============================================================
   NEU: CANCELLED BADGE & TEXT (Abgesagt Status) - FINAL
   ============================================================ */

/* 1. Grid Card Container relativieren */
html body .ec-event-calendar-app .ec-card {
  position: relative;
}

/* 2. Basis-Styling für ALLE Badges */
html body .ec-event-calendar-app .ec-cancelled-badge {
  position: absolute;
  z-index: 20;
  /* Extra hoch, um die Kategorie sicher zu verdecken! */
  background: #d63638;
  color: #fff;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-radius: 4px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  white-space: nowrap;
  pointer-events: none;
}

/* 3. Grid Ansicht (Kacheln) -> UNVERÄNDERT (Groß & Rechts) */
html body .ec-event-calendar-app .ec-card>.ec-cancelled-badge {
  top: 10px;
  right: 10px;
  left: auto;
  font-size: 0.7rem;
  padding: 4px 10px;
}

/* 4. Listen Ansicht (Tabelle) -> KLEIN & LINKS (Über der Kategorie) */
html body .ec-event-calendar-app .ec-desktop-badge,
html body .ec-event-calendar-app .ec-mobile-badge {
  font-size: 0.65rem;
  padding: 2px 6px;
  border-radius: 3px;
}

/* DESKTOP (Linke Bild-Spalte) -> LINKS */
html body .ec-event-calendar-app .ec-desktop-badge {
  top: 4px;
  left: 4px;
  right: auto;
}

/* MOBILE Wrapper -> Auf Desktop strikt verstecken */
html body .ec-event-calendar-app .ec-mobile-badge,
html body .ec-event-calendar-app .ec-mobile-image-wrapper.ec-no-img {
  display: none;
}

/* 5. Mobile & Tablet Listen Ansicht (Container Query auf 1024px) */
@container ec-card-container (max-width: 1024px) {

  /* Desktop-Badge verstecken */
  html body .ec-event-calendar-app .ec-desktop-badge {
    display: none;
  }

  /* Mobile-Badge einblenden -> Ebenfalls LINKS */
  html body .ec-event-calendar-app .ec-mobile-badge {
    display: inline-block;
    top: 4px;
    left: 4px;
    right: auto;
  }

  /* Platzhalter einblenden, falls kein Bild vorhanden ist */
  html body .ec-event-calendar-app .ec-mobile-image-wrapper.ec-no-img {
    display: block;
    margin-bottom: 10px;
  }
}

/* 6. Text im Titel (Überall als reiner roter Text mit Doppelpunkt) */
html body .ec-cancelled-text,
html body .ec-event-calendar-app .ec-cancelled-text {
  color: #d63638;
  font-weight: 900;
  text-transform: uppercase;
  margin-right: 4px;
}

/* 7. Graufilter anwenden (NUR exakt auf die Bilder/Inhalte) */
html body .ec-event-calendar-app .ec-card:has(.ec-cancelled-badge) .ec-img-link-wrap,
html body .ec-event-calendar-app .ec-card:has(.ec-cancelled-badge) .ec-card-image,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-table-thumb,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-mobile-image,
html body .ec-event-calendar-app .ec-card:has(.ec-cancelled-badge) .ec-meta-row,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-time-wrapper,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-table-date-info {
  filter: grayscale(100%) opacity(0.6);
}

/* Text in Abgesagt- & Abgelaufenen-Events grau ausgeben (Titel, Excerpt, Ort) */
html body .ec-event-calendar-app .ec-card:has(.ec-cancelled-badge) .ec-card-title a,
html body .ec-event-calendar-app .ec-card:has(.ec-cancelled-badge) .ec-card-title,
html body .ec-event-calendar-app .ec-card:has(.ec-cancelled-badge) .ec-card-excerpt,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-col-content h3,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-col-content h3 a,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-table-excerpt,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-table-excerpt a,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-col-venue,
html body .ec-event-calendar-app .ec-table-row-custom:has(.ec-cancelled-badge) .ec-mobile-venue,
html body .ec-event-calendar-app .ec-past-event .ec-col-content h3,
html body .ec-event-calendar-app .ec-past-event .ec-col-content h3 a,
html body .ec-event-calendar-app .ec-past-event .ec-table-excerpt,
html body .ec-event-calendar-app .ec-past-event .ec-table-excerpt a,
html body .ec-event-calendar-app .ec-past-event .ec-col-venue,
html body .ec-event-calendar-app .ec-past-event .ec-mobile-venue,
html body .ec-event-calendar-app .ec-past-event .ec-card-title,
html body .ec-event-calendar-app .ec-past-event .ec-card-title a,
html body .ec-event-calendar-app .ec-past-event .ec-card-excerpt {
  color: #777777;
}

/* =========================================
   7. NAVIGATION & PAGINATION
   ========================================= */
html body .ec-event-calendar-app #ec-app #ec-pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 30px;
  padding-top: 10px;
  border-top: 1px solid #eee;
  flex-wrap: wrap;
  gap: 20px;
  width: 100%;
}

html body .ec-event-calendar-app #ec-app .ec-pagination-left {
  display: flex;
  align-items: center;
  gap: 10px;
}

html body .ec-event-calendar-app #ec-app .ec-pagination-select {
  height: 42px;
  line-height: normal;
  padding: 0 30px 0 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background-color: #fff;
  font-size: 0.95rem;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 10px auto;
  min-width: 140px;
}

/* Rechte Seite (Seitenzahlen) */
html body .ec-event-calendar-app #ec-app .ec-pagination-right {
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 0;
}

/* Sicherstellen, dass die Buttons keine unterschiedlichen HÃƒÂ¶hen erzwingen */
html body .ec-event-calendar-app #ec-app .ec-page-num,
html body .ec-event-calendar-app #ec-app .ec-page-nav {
  margin: 0;
  height: 36px;
  display: flex;
  align-items: center;
}

/* Einzelne Seitenzahlen: Basis-Look */
html body .ec-event-calendar-app #ec-app .ec-page-num {
  min-width: 32px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  background: transparent;
  color: #333;
  font-weight: bold;
  cursor: pointer;
  border-radius: 4px;
  transition: all 0.2s ease-in-out;
  padding: 0 10px;
  margin: 0;
}

/* Hover & Active für Pagination */
html body .ec-event-calendar-app #ec-app .ec-page-num:hover:not(.active),
html body .ec-event-calendar-app #ec-app .ec-page-num.active,
html body .ec-event-calendar-app #ec-app .ec-page-nav:hover:not(:disabled) {
  background-color: var(--ec-primary);
  color: #fff;
  border-color: var(--ec-primary);
  box-shadow: 0 2px 6px rgba(var(--ec-primary-rgb), 0.3);
}

/* Vor/ZurÃƒÂ¼ck Buttons: Basis-Look */
html body .ec-event-calendar-app #ec-app .ec-page-nav {
  background: transparent;
  border: 1px solid transparent;
  cursor: pointer;
  font-size: 0.95rem;
  color: #555;
  font-weight: bold;
  padding: 5px 15px;
  height: 36px;
  display: flex;
  align-items: center;
  border-radius: 4px;
  transition: all 0.2s ease-in-out;
}

/* Disabled-Zustand: Bleibt flach und blass */
html body .ec-event-calendar-app #ec-app .ec-page-nav:disabled {
  color: #ccc;
  cursor: default;
  opacity: 0.5;
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

/* Load More Button (Unified) */
html body .ec-event-calendar-app #ec-app .ec-load-more-btn {
  background: #fff;
  border: 2px solid var(--ec-primary);
  color: var(--ec-primary);
  font-weight: 700;
  font-size: 0.95rem;
  height: 42px;
  min-height: 42px;
  padding: 0 20px;
  min-width: 160px;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0px auto;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
  text-decoration: none;
}

/* Das Icon im Load-More Button */
html body .ec-event-calendar-app #ec-app .ec-load-more-btn .ec-svg {
  display: inline-block;
  width: 18px;
  height: 18px;
  /* Farbe direkt setzen */
  background-color: var(--ec-primary);
  flex-shrink: 0;
  /* Masken-Logik */
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  /* Pfad angepasst an deine Assets-Struktur */
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22512%22 height=%22512%22 viewBox=%220 0 512 512%22%3E%3Cpath fill=%22%23000000%22 d=%22M204 240H68a36 36 0 0 1-36-36V68a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36Zm240 0H308a36 36 0 0 1-36-36V68a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36ZM204 480H68a36 36 0 0 1-36-36V308a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36Zm240 0H308a36 36 0 0 1-36-36V308a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36Z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22512%22 height=%22512%22 viewBox=%220 0 512 512%22%3E%3Cpath fill=%22%23000000%22 d=%22M204 240H68a36 36 0 0 1-36-36V68a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36Zm240 0H308a36 36 0 0 1-36-36V68a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36ZM204 480H68a36 36 0 0 1-36-36V308a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36Zm240 0H308a36 36 0 0 1-36-36V308a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36Z%22/%3E%3C/svg%3E");
  transition: background-color 0.2s;
}

/* Hover-Zustand */
html body .ec-event-calendar-app #ec-app .ec-load-more-btn:hover {
  background-color: var(--ec-primary);
  color: #fff;
  border-color: var(--ec-primary);
}

/* Hover-Zustand fÃƒÂ¼r das Icon */
html body .ec-event-calendar-app #ec-app .ec-load-more-btn:hover .ec-svg {
  background-color: #fff;
}

/* =========================================
   7. LOADERS & STATUS MESSAGES
   ========================================= */

/* Der Container für Spinner + Text - Eingegrenzt auf das Plugin */
html body .ec-event-calendar-app .ec-loader-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  width: 100%;
  color: #999;
  font-style: italic;
  font-size: 1.1rem;
}

/* Der drehende Kreis */
html body .ec-event-calendar-app .ec-loader-spinner {
  width: 50px;
  height: 50px;
  margin-bottom: 20px;
  border: 5px solid #f3f3f3;
  /* Fallback-Farbe hinzugefügt, falls die Variable nicht geladen ist */
  border-top: 5px solid var(--ec-primary, #f76b15);
  border-radius: 50%;
  animation: ec-spin-loader 0.8s linear infinite;

  /* Sicherstellen, dass das Box-Modell nicht vom Theme überschrieben wird */
  box-sizing: border-box;
}

/* =========================================
   7.b STATUS MESSAGES (Empty & Error)
   ========================================= */

/* Der Container für Statusmeldungen */
html body .ec-event-calendar-app .ec-status-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  width: 100%;
  text-align: center;
  box-sizing: border-box;
}

/* Die Icon-Basis für Statusmeldungen */
html body .ec-event-calendar-app .ec-status-icon {
  width: 60px;
  /* Leicht vergrößert für bessere Wirkung */
  height: 60px;
  margin-bottom: 20px;
  display: inline-block;

  /* Masken-Logik für einfaches Einfärben via background-color */
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;

  /* Standard-Farbe (Neutral Grau) */
  background-color: #999;
}

/* Text-Styling unter den Icons */
html body .ec-event-calendar-app .ec-status-text {
  color: #999;
  font-style: italic;
  font-size: 1.1rem;
  line-height: 1.4;
  max-width: 400px;
  /* Verhindert zu lange Textzeilen */
}

/* --- VARIANTE 1: Keine Ergebnisse (Standard / Suche) --- */
html body .ec-event-calendar-app .ec-status-icon.ec-icon-alert {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 shape-rendering=%22geometricPrecision%22 text-rendering=%22geometricPrecision%22 image-rendering=%22optimizeQuality%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22 viewBox=%220 0 512 506.47%22%3E%3Cpath fill-rule=%22nonzero%22 d=%22M294.23 17.11c0-9.42 9.3-17.11 20.88-17.11 11.57 0 20.86 7.64 20.86 17.11v74.84c0 9.42-9.29 17.11-20.86 17.11-11.58 0-20.88-7.64-20.88-17.11V17.11zm119.98 304.68 14.12 14.1c3.3 3.32 3.3 8.86 0 12.18l-24.21 24.21 24.21 24.21c3.32 3.32 3.32 8.86 0 12.18l-14.11 14.1c-3.31 3.32-8.82 3.35-12.17 0l-24.21-24.21-24.24 24.23c-3.3 3.3-8.82 3.34-12.16 0l-14.11-14.11c-3.35-3.35-3.35-8.83 0-12.17l24.23-24.23-24.21-24.23c-3.35-3.34-3.35-8.81 0-12.16l14.1-14.1c3.35-3.35 8.86-3.32 12.16 0L377.84 346l24.21-24.21c3.35-3.35 8.89-3.29 12.16 0zm-36.4-83.69c37.02 0 70.6 15.04 94.88 39.32C496.96 301.69 512 335.24 512 372.3c0 36.97-15.04 70.56-39.34 94.83-24.25 24.3-57.8 39.34-94.85 39.34-37.03 0-70.56-15.04-94.84-39.3-24.32-24.27-39.34-57.85-39.34-94.87 0-37.06 15.04-70.61 39.31-94.88l.69-.64c24.24-23.9 57.53-38.68 94.18-38.68zm78.75 55.44c-20.15-20.14-48-32.61-78.75-32.61-30.5 0-58.14 12.25-78.19 32.02l-.55.59c-20.14 20.15-32.62 48.01-32.62 78.76 0 30.74 12.46 58.6 32.61 78.75 20.1 20.13 47.98 32.6 78.75 32.6 30.75 0 58.6-12.47 78.75-32.62 20.14-20.08 32.61-47.95 32.61-78.73 0-30.75-12.47-58.61-32.61-78.76zM56.81 242.28c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.2 2.24 11.54 0 6.38-.93 11.57-2.24 11.57H56.81zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.2 2.24 11.54 0 6.38-.93 11.57-2.24 11.57h-56.94zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.15 2.24 11.49-5.7 3.55-11.19 7.44-16.42 11.62h-42.76zM56.94 308.51c-1.19 0-2.23-5.2-2.23-11.57 0-6.38.92-11.58 2.23-11.58h56.93c1.19 0 2.25 5.2 2.25 11.58 0 6.37-.94 11.57-2.25 11.57H56.94zm90.77 0c-1.19 0-2.23-5.2-2.23-11.57 0-6.38.92-11.58 2.23-11.58h56.93c1.19 0 2.25 5.2 2.25 11.58 0 6.37-.94 11.57-2.25 11.57h-56.93zm-90.63 66.28c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.92-11.57 2.25-11.57h56.93c1.17 0 2.23 5.21 2.23 11.57 0 6.39-.92 11.59-2.23 11.59H57.08zm90.77 0c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.92-11.57 2.25-11.57h56.93c1.17 0 2.23 5.21 2.23 11.57 0 6.39-.92 11.59-2.23 11.59h-56.93zM106.82 17.11c0-9.42 9.3-17.11 20.86-17.11 11.59 0 20.88 7.64 20.88 17.11v74.84c0 9.42-9.34 17.11-20.88 17.11-11.56 0-20.86-7.64-20.86-17.11V17.11zM22.98 163.63h397.38V77.46c0-2.94-1.19-5.53-3.09-7.43-1.89-1.9-4.6-3.08-7.42-3.08h-38.1c-6.38 0-11.58-5.2-11.58-11.57 0-6.38 5.2-11.58 11.58-11.58h38.1c9.32 0 17.68 3.76 23.82 9.88 6.12 6.14 9.87 14.5 9.87 23.82v136.81c-7.6-2.61-15.41-4.73-23.43-6.29v-21.37h.25H22.98V409.8c0 2.95 1.18 5.53 3.08 7.43 1.9 1.9 4.61 3.08 7.45 3.08h188.84c2.14 8.02 4.85 15.83 8.11 23.36H33.71c-9.3 0-17.69-3.76-23.82-9.89C3.77 427.71 0 419.35 0 410V77.55c0-9.29 3.77-17.7 9.89-23.82 6.13-6.13 14.49-9.89 23.82-9.89h40.68c6.37 0 11.57 5.2 11.57 11.57 0 6.39-5.2 11.59-11.57 11.59H33.71c-2.96 0-5.53 1.18-7.43 3.08-1.9 1.9-3.08 4.59-3.08 7.42v86.17h-.22v-.04zm158.95-96.68c-6.39 0-11.57-5.2-11.57-11.57 0-6.38 5.18-11.58 11.57-11.58h77.55c6.37 0 11.57 5.2 11.57 11.58 0 6.37-5.2 11.57-11.57 11.57h-77.55z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 shape-rendering=%22geometricPrecision%22 text-rendering=%22geometricPrecision%22 image-rendering=%22optimizeQuality%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22 viewBox=%220 0 512 506.47%22%3E%3Cpath fill-rule=%22nonzero%22 d=%22M294.23 17.11c0-9.42 9.3-17.11 20.88-17.11 11.57 0 20.86 7.64 20.86 17.11v74.84c0 9.42-9.29 17.11-20.86 17.11-11.58 0-20.88-7.64-20.88-17.11V17.11zm119.98 304.68 14.12 14.1c3.3 3.32 3.3 8.86 0 12.18l-24.21 24.21 24.21 24.21c3.32 3.32 3.32 8.86 0 12.18l-14.11 14.1c-3.31 3.32-8.82 3.35-12.17 0l-24.21-24.21-24.24 24.23c-3.3 3.3-8.82 3.34-12.16 0l-14.11-14.11c-3.35-3.35-3.35-8.83 0-12.17l24.23-24.23-24.21-24.23c-3.35-3.34-3.35-8.81 0-12.16l14.1-14.1c3.35-3.35 8.86-3.32 12.16 0L377.84 346l24.21-24.21c3.35-3.35 8.89-3.29 12.16 0zm-36.4-83.69c37.02 0 70.6 15.04 94.88 39.32C496.96 301.69 512 335.24 512 372.3c0 36.97-15.04 70.56-39.34 94.83-24.25 24.3-57.8 39.34-94.85 39.34-37.03 0-70.56-15.04-94.84-39.3-24.32-24.27-39.34-57.85-39.34-94.87 0-37.06 15.04-70.61 39.31-94.88l.69-.64c24.24-23.9 57.53-38.68 94.18-38.68zm78.75 55.44c-20.15-20.14-48-32.61-78.75-32.61-30.5 0-58.14 12.25-78.19 32.02l-.55.59c-20.14 20.15-32.62 48.01-32.62 78.76 0 30.74 12.46 58.6 32.61 78.75 20.1 20.13 47.98 32.6 78.75 32.6 30.75 0 58.6-12.47 78.75-32.62 20.14-20.08 32.61-47.95 32.61-78.73 0-30.75-12.47-58.61-32.61-78.76zM56.81 242.28c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.2 2.24 11.54 0 6.38-.93 11.57-2.24 11.57H56.81zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.2 2.24 11.54 0 6.38-.93 11.57-2.24 11.57h-56.94zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.15 2.24 11.49-5.7 3.55-11.19 7.44-16.42 11.62h-42.76zM56.94 308.51c-1.19 0-2.23-5.2-2.23-11.57 0-6.38.92-11.58 2.23-11.58h56.93c1.19 0 2.25 5.2 2.25 11.58 0 6.37-.94 11.57-2.25 11.57H56.94zm90.77 0c-1.19 0-2.23-5.2-2.23-11.57 0-6.38.92-11.58 2.23-11.58h56.93c1.19 0 2.25 5.2 2.25 11.58 0 6.37-.94 11.57-2.25 11.57h-56.93zm-90.63 66.28c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.92-11.57 2.25-11.57h56.93c1.17 0 2.23 5.21 2.23 11.57 0 6.39-.92 11.59-2.23 11.59H57.08zm90.77 0c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.92-11.57 2.25-11.57h56.93c1.17 0 2.23 5.21 2.23 11.57 0 6.39-.92 11.59-2.23 11.59h-56.93zM106.82 17.11c0-9.42 9.3-17.11 20.86-17.11 11.59 0 20.88 7.64 20.88 17.11v74.84c0 9.42-9.34 17.11-20.88 17.11-11.56 0-20.86-7.64-20.86-17.11V17.11zM22.98 163.63h397.38V77.46c0-2.94-1.19-5.53-3.09-7.43-1.89-1.9-4.6-3.08-7.42-3.08h-38.1c-6.38 0-11.58-5.2-11.58-11.57 0-6.38 5.2-11.58 11.58-11.58h38.1c9.32 0 17.68 3.76 23.82 9.88 6.12 6.14 9.87 14.5 9.87 23.82v136.81c-7.6-2.61-15.41-4.73-23.43-6.29v-21.37h.25H22.98V409.8c0 2.95 1.18 5.53 3.08 7.43 1.9 1.9 4.61 3.08 7.45 3.08h188.84c2.14 8.02 4.85 15.83 8.11 23.36H33.71c-9.3 0-17.69-3.76-23.82-9.89C3.77 427.71 0 419.35 0 410V77.55c0-9.29 3.77-17.7 9.89-23.82 6.13-6.13 14.49-9.89 23.82-9.89h40.68c6.37 0 11.57 5.2 11.57 11.57 0 6.39-5.2 11.59-11.57 11.59H33.71c-2.96 0-5.53 1.18-7.43 3.08-1.9 1.9-3.08 4.59-3.08 7.42v86.17h-.22v-.04zm158.95-96.68c-6.39 0-11.57-5.2-11.57-11.57 0-6.38 5.18-11.58 11.57-11.58h77.55c6.37 0 11.57 5.2 11.57 11.58 0 6.37-5.2 11.57-11.57 11.57h-77.55z%22/%3E%3C/svg%3E");
}

/* --- VARIANTE 2: Fehler (Rot) --- */
/* Nutzt die spezifische Fehlerfarbe, falls vom Theme/Plugin vorgegeben */
html body .ec-event-calendar-app .ec-status-container.error .ec-status-icon.ec-icon-error {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 viewBox=%220 0 122.88 120.54%22 style=%22enable-background:new 0 0 122.88 120.54%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath class=%22st0%22 d=%22M95.7,65.5c15.01,0,27.18,12.17,27.18,27.18c0,15.01-12.17,27.18-27.18,27.18 c-15.01,0-27.18-12.17-27.18-27.18C68.52,77.67,80.69,65.5,95.7,65.5L95.7,65.5z M92.35,102.95h6.49v5.74h-6.49V102.95 L92.35,102.95z M98.83,99.04h-6.48c-0.64-7.88-2-9.59-2-17.45c0-2.9,2.35-5.26,5.26-5.26c2.9,0,5.26,2.35,5.26,5.26 C100.86,89.45,99.49,91.17,98.83,99.04L98.83,99.04z M17.69,26.67c8.1,2.71,19.38,4.38,31.91,4.38s23.81-1.67,31.91-4.38 c7.11-2.37,11.51-5.25,11.51-8.06c0-2.81-4.4-5.69-11.51-8.06c-8.1-2.7-19.38-4.38-31.91-4.38s-23.81,1.67-31.91,4.38 C2.6,15.59,2.18,21.5,17.69,26.67L17.69,26.67z M6.24,47.86c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.71,19.38,4.38,31.91,4.38 s23.81-1.67,31.91-4.38c7.11-2.37,11.51-5.25,11.51-8.06h0.03v-19.3c-2.53,1.73-5.78,3.26-9.59,4.53 c-8.73,2.91-20.71,4.72-33.86,4.72c-13.16,0-25.13-1.8-33.86-4.72c-3.77-1.26-6.98-2.76-9.49-4.47V47.86L6.24,47.86z M63.3,92.54 c-4.35,0.44-8.95,0.67-13.7,0.67c-13.16,0-25.13-1.8-33.86-4.72c-3.77-1.26-6.98-2.76-9.49-4.47v18.49 c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.7,19.38,4.38,31.91,4.38c7.52,0,14.58-0.6,20.78-1.67c1.56,1.94,3.33,3.7,5.29,5.24 c-7.53,1.65-16.49,2.6-26.07,2.6c-13.16,0-25.13-1.8-33.86-4.72c-4.6-1.54-15.67-6.58-15.67-12.62c0-0.71,0-1.3,0-1.98 C0.06,73.69,0,46.15,0,18.61c0-5.76,6.01-10.65,15.73-13.9C24.46,1.8,36.44,0,49.6,0c13.16,0,25.13,1.8,33.86,4.72 c8.85,2.95,14.62,7.27,15.59,12.37c0.12,0.32,0.18,0.67,0.18,1.04v42.37c-1.2-0.14-2.42-0.21-3.66-0.21c-0.85,0-1.68,0.03-2.51,0.1 v-3.74c-2.53,1.73-5.78,3.26-9.59,4.53c-8.73,2.91-20.71,4.72-33.86,4.72c-13.16,0-25.13-1.8-33.86-4.72 c-3.77-1.26-6.98-2.76-9.49-4.47v18.49c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.7,19.38,4.38,31.91,4.38c5.01,0,9.82-0.27,14.31-0.76 C63.51,88.3,63.3,90.4,63.3,92.54L63.3,92.54z%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 viewBox=%220 0 122.88 120.54%22 style=%22enable-background:new 0 0 122.88 120.54%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath class=%22st0%22 d=%22M95.7,65.5c15.01,0,27.18,12.17,27.18,27.18c0,15.01-12.17,27.18-27.18,27.18 c-15.01,0-27.18-12.17-27.18-27.18C68.52,77.67,80.69,65.5,95.7,65.5L95.7,65.5z M92.35,102.95h6.49v5.74h-6.49V102.95 L92.35,102.95z M98.83,99.04h-6.48c-0.64-7.88-2-9.59-2-17.45c0-2.9,2.35-5.26,5.26-5.26c2.9,0,5.26,2.35,5.26,5.26 C100.86,89.45,99.49,91.17,98.83,99.04L98.83,99.04z M17.69,26.67c8.1,2.71,19.38,4.38,31.91,4.38s23.81-1.67,31.91-4.38 c7.11-2.37,11.51-5.25,11.51-8.06c0-2.81-4.4-5.69-11.51-8.06c-8.1-2.7-19.38-4.38-31.91-4.38s-23.81,1.67-31.91,4.38 C2.6,15.59,2.18,21.5,17.69,26.67L17.69,26.67z M6.24,47.86c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.71,19.38,4.38,31.91,4.38 s23.81-1.67,31.91-4.38c7.11-2.37,11.51-5.25,11.51-8.06h0.03v-19.3c-2.53,1.73-5.78,3.26-9.59,4.53 c-8.73,2.91-20.71,4.72-33.86,4.72c-13.16,0-25.13-1.8-33.86-4.72c-3.77-1.26-6.98-2.76-9.49-4.47V47.86L6.24,47.86z M63.3,92.54 c-4.35,0.44-8.95,0.67-13.7,0.67c-13.16,0-25.13-1.8-33.86-4.72c-3.77-1.26-6.98-2.76-9.49-4.47v18.49 c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.7,19.38,4.38,31.91,4.38c7.52,0,14.58-0.6,20.78-1.67c1.56,1.94,3.33,3.7,5.29,5.24 c-7.53,1.65-16.49,2.6-26.07,2.6c-13.16,0-25.13-1.8-33.86-4.72c-4.6-1.54-15.67-6.58-15.67-12.62c0-0.71,0-1.3,0-1.98 C0.06,73.69,0,46.15,0,18.61c0-5.76,6.01-10.65,15.73-13.9C24.46,1.8,36.44,0,49.6,0c13.16,0,25.13,1.8,33.86,4.72 c8.85,2.95,14.62,7.27,15.59,12.37c0.12,0.32,0.18,0.67,0.18,1.04v42.37c-1.2-0.14-2.42-0.21-3.66-0.21c-0.85,0-1.68,0.03-2.51,0.1 v-3.74c-2.53,1.73-5.78,3.26-9.59,4.53c-8.73,2.91-20.71,4.72-33.86,4.72c-13.16,0-25.13-1.8-33.86-4.72 c-3.77-1.26-6.98-2.76-9.49-4.47v18.49c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.7,19.38,4.38,31.91,4.38c5.01,0,9.82-0.27,14.31-0.76 C63.51,88.3,63.3,90.4,63.3,92.54L63.3,92.54z%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22/%3E%3C/g%3E%3C/svg%3E");
  background-color: #d63638;
}

html body .ec-event-calendar-app .ec-status-container.error .ec-status-text {
  color: #d63638;
}

/* --- VARIANTE 3: Favoriten-Filter Fehler (Spezial-Icon) --- */
html body .ec-event-calendar-app .ec-status-icon.ec-icon-fav-alert {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 109.57%22%3E%3Ctitle%3Edelete-from-wishlist%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M94.26,44.46A26.88,26.88,0,1,1,67.38,71.34,26.88,26.88,0,0,1,94.26,44.46ZM82.69,65.69a3.89,3.89,0,0,1-.86-1.29l0-.06a3.91,3.91,0,0,1-.29-1.45,4,4,0,0,1,.3-1.5,4.07,4.07,0,0,1,.85-1.29l0,0A3.92,3.92,0,0,1,84,59.22a4,4,0,0,1,1.52-.3,3.79,3.79,0,0,1,1.51.29l.07,0a4,4,0,0,1,1.21.82l5.62,5.62,5.61-5.61a3.87,3.87,0,0,1,1.28-.85,4,4,0,0,1,1.52-.31,4,4,0,0,1,1.5.3l.07,0A4.27,4.27,0,0,1,105,60l.12.11a3.89,3.89,0,0,1,.8,1.23,4,4,0,0,1,0,3l0,.07a4.14,4.14,0,0,1-.81,1.21l-5.62,5.62,5.6,5.61a3.92,3.92,0,0,1,1.16,2.8v.1a3.94,3.94,0,0,1-.29,1.4l0,.07a4,4,0,0,1-.81,1.21l0,0a4.09,4.09,0,0,1-1.28.85,3.86,3.86,0,0,1-1.52.31,3.94,3.94,0,0,1-1.5-.3,3.89,3.89,0,0,1-1.28-.84L93.9,76.9l-5.6,5.6a4.22,4.22,0,0,1-1.29.86l-.06,0a3.89,3.89,0,0,1-1.45.28,4,4,0,0,1-1.51-.3l-.07,0a4.14,4.14,0,0,1-1.21-.81l0,0a4.12,4.12,0,0,1-.86-1.28,4,4,0,0,1-.31-1.52,4,4,0,0,1,.3-1.5,3.92,3.92,0,0,1,.85-1.28l5.62-5.63-5.6-5.6ZM65.45,19.57l-4.52,4.74-4.52-4.43C49,12.58,43.4,7.08,31.89,6.93L30.46,7A25.75,25.75,0,0,0,13.74,13.6,22.58,22.58,0,0,0,6.63,30.17l0,1.37c.69,19.27,19.13,36.08,34.42,50,3,2.69,5.78,5.27,8.49,7.88l11.27,10.85,5.91-5.87c.68.8,1.39,1.58,2.13,2.32l0,0c.82.83,1.69,1.61,2.59,2.36l-10.59,10.5L45,94.22c-2.49-2.39-5.37-5-8.37-7.75C20.37,71.68.81,53.85,0,31.77l0-1.68A29.12,29.12,0,0,1,9.21,8.73a32.42,32.42,0,0,1,21-8.42H32c14,.18,20.45,6.34,28.8,14.55C67.66,7.54,73.39,1.55,85,.21a33.88,33.88,0,0,1,19,3.45,35.14,35.14,0,0,1,12.51,10.48,31.53,31.53,0,0,1,6.1,15.18,31,31,0,0,1-2.86,16.81l-.17-.18a36.18,36.18,0,0,0-5.14-4.27,24.26,24.26,0,0,0,1.57-11.6,25,25,0,0,0-4.83-12,28.62,28.62,0,0,0-10.14-8.5A27.27,27.27,0,0,0,85.79,6.82C76.47,7.89,71.5,13.17,65.45,19.57Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 109.57%22%3E%3Ctitle%3Edelete-from-wishlist%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M94.26,44.46A26.88,26.88,0,1,1,67.38,71.34,26.88,26.88,0,0,1,94.26,44.46ZM82.69,65.69a3.89,3.89,0,0,1-.86-1.29l0-.06a3.91,3.91,0,0,1-.29-1.45,4,4,0,0,1,.3-1.5,4.07,4.07,0,0,1,.85-1.29l0,0A3.92,3.92,0,0,1,84,59.22a4,4,0,0,1,1.52-.3,3.79,3.79,0,0,1,1.51.29l.07,0a4,4,0,0,1,1.21.82l5.62,5.62,5.61-5.61a3.87,3.87,0,0,1,1.28-.85,4,4,0,0,1,1.52-.31,4,4,0,0,1,1.5.3l.07,0A4.27,4.27,0,0,1,105,60l.12.11a3.89,3.89,0,0,1,.8,1.23,4,4,0,0,1,0,3l0,.07a4.14,4.14,0,0,1-.81,1.21l-5.62,5.62,5.6,5.61a3.92,3.92,0,0,1,1.16,2.8v.1a3.94,3.94,0,0,1-.29,1.4l0,.07a4,4,0,0,1-.81,1.21l0,0a4.09,4.09,0,0,1-1.28.85,3.86,3.86,0,0,1-1.52.31,3.94,3.94,0,0,1-1.5-.3,3.89,3.89,0,0,1-1.28-.84L93.9,76.9l-5.6,5.6a4.22,4.22,0,0,1-1.29.86l-.06,0a3.89,3.89,0,0,1-1.45.28,4,4,0,0,1-1.51-.3l-.07,0a4.14,4.14,0,0,1-1.21-.81l0,0a4.12,4.12,0,0,1-.86-1.28,4,4,0,0,1-.31-1.52,4,4,0,0,1,.3-1.5,3.92,3.92,0,0,1,.85-1.28l5.62-5.63-5.6-5.6ZM65.45,19.57l-4.52,4.74-4.52-4.43C49,12.58,43.4,7.08,31.89,6.93L30.46,7A25.75,25.75,0,0,0,13.74,13.6,22.58,22.58,0,0,0,6.63,30.17l0,1.37c.69,19.27,19.13,36.08,34.42,50,3,2.69,5.78,5.27,8.49,7.88l11.27,10.85,5.91-5.87c.68.8,1.39,1.58,2.13,2.32l0,0c.82.83,1.69,1.61,2.59,2.36l-10.59,10.5L45,94.22c-2.49-2.39-5.37-5-8.37-7.75C20.37,71.68.81,53.85,0,31.77l0-1.68A29.12,29.12,0,0,1,9.21,8.73a32.42,32.42,0,0,1,21-8.42H32c14,.18,20.45,6.34,28.8,14.55C67.66,7.54,73.39,1.55,85,.21a33.88,33.88,0,0,1,19,3.45,35.14,35.14,0,0,1,12.51,10.48,31.53,31.53,0,0,1,6.1,15.18,31,31,0,0,1-2.86,16.81l-.17-.18a36.18,36.18,0,0,0-5.14-4.27,24.26,24.26,0,0,0,1.57-11.6,25,25,0,0,0-4.83-12,28.62,28.62,0,0,0-10.14-8.5A27.27,27.27,0,0,0,85.79,6.82C76.47,7.89,71.5,13.17,65.45,19.57Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
}


/* ==============================
   8. FAVORITE HEART ANIMATION 
   ============================== */

html body .ec-event-calendar-app .ec-fav-btn,
html body .ec-event-calendar-app .ec-compact-fav-btn,
html body .ec-event-calendar-app .ec-fav-btn-single {
  overflow: visible;
  position: relative;
  touch-action: manipulation;
}

html body .ec-event-calendar-app .ec-icon-heart {
  display: inline-block;
  padding: 8px;
  margin: 0px;
  transform: translateZ(0);
  will-change: transform, background-color;
  backface-visibility: hidden;
  perspective: 1000px;
  z-index: 10;
  transition: transform 0.2s ease, background-color 0.1s ease;
}

/* Die Pop-Animation */
/* zwingend für background-color und transition, 
   da diese Werte im 'active' Status sonst vom Hover überschrieben werden könnten 
   oder durch JS-Styles beeinträchtigt werden. */
html body .ec-event-calendar-app .ec-fav-pop {
  animation: ec-heart-pop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  background-color: var(--ec-primary);
  transition: color 0s;
  position: relative;
  z-index: 9999;
  isolation: isolate;
}

/* =========================================
   9. GLOBAL KEYFRAME ANIMATIONS
   ========================================= */

/* Spinner Rotation */
@keyframes ec-spin-loader {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* Herz Pop Animation */
@keyframes ec-heart-pop {
  0% {
    transform: scale(1);
  }

  30% {
    transform: scale(1.4);
  }

  50% {
    transform: scale(0.9);
  }

  70% {
    transform: scale(1.1);
  }

  100% {
    transform: scale(1);
  }
}

/* 1. Alternative: Herz Animation Pulse */
/* 
@keyframes ec-heart-pulse {
    0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(226, 38, 77, 0.7); }
    70% { transform: scale(1.2); box-shadow: 0 0 0 15px rgba(226, 38, 77, 0); }
    100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(226, 38, 77, 0); }
}

.ec-event-calendar-app .ec-fav-pop {
    animation: ec-heart-pulse 0.5s ease-out;
} 
*/

/* 2. Alternative: Herz Animation Drehung */
/*
@keyframes ec-heart-flip {
    0% { transform: rotateY(0deg) scale(1); }
    50% { transform: rotateY(180deg) scale(1.3); }
    100% { transform: rotateY(360deg) scale(1); }
}

.ec-event-calendar-app .ec-fav-pop {
    animation: ec-heart-flip 0.6s ease-in-out;
}
*/



/* Der drehende Kreis */
html body .ec-event-calendar-app .ec-loader-spinner {
  width: 50px;
  height: 50px;
  margin-bottom: 20px;
  border: 5px solid #f3f3f3;
  /* Fallback-Farbe hinzugefügt, falls die Variable nicht geladen ist */
  border-top: 5px solid var(--ec-primary, #f76b15);
  border-radius: 50%;
  animation: ec-spin-loader 0.8s linear infinite;

  /* Sicherstellen, dass das Box-Modell nicht vom Theme überschrieben wird */
  box-sizing: border-box;
}

/* =========================================
   7.b STATUS MESSAGES (Empty & Error)
   ========================================= */

/* Der Container für Statusmeldungen */
html body .ec-event-calendar-app .ec-status-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  width: 100%;
  text-align: center;
  box-sizing: border-box;
}

/* Die Icon-Basis für Statusmeldungen */
html body .ec-event-calendar-app .ec-status-icon {
  width: 60px;
  /* Leicht vergrößert für bessere Wirkung */
  height: 60px;
  margin-bottom: 20px;
  display: inline-block;

  /* Masken-Logik für einfaches Einfärben via background-color */
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;

  /* Standard-Farbe (Neutral Grau) */
  background-color: #999;
}

/* Text-Styling unter den Icons */
html body .ec-event-calendar-app .ec-status-text {
  color: #999;
  font-style: italic;
  font-size: 1.1rem;
  line-height: 1.4;
  max-width: 400px;
  /* Verhindert zu lange Textzeilen */
}

/* --- VARIANTE 1: Keine Ergebnisse (Standard / Suche) --- */
html body .ec-event-calendar-app .ec-status-icon.ec-icon-alert {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 shape-rendering=%22geometricPrecision%22 text-rendering=%22geometricPrecision%22 image-rendering=%22optimizeQuality%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22 viewBox=%220 0 512 506.47%22%3E%3Cpath fill-rule=%22nonzero%22 d=%22M294.23 17.11c0-9.42 9.3-17.11 20.88-17.11 11.57 0 20.86 7.64 20.86 17.11v74.84c0 9.42-9.29 17.11-20.86 17.11-11.58 0-20.88-7.64-20.88-17.11V17.11zm119.98 304.68 14.12 14.1c3.3 3.32 3.3 8.86 0 12.18l-24.21 24.21 24.21 24.21c3.32 3.32 3.32 8.86 0 12.18l-14.11 14.1c-3.31 3.32-8.82 3.35-12.17 0l-24.21-24.21-24.24 24.23c-3.3 3.3-8.82 3.34-12.16 0l-14.11-14.11c-3.35-3.35-3.35-8.83 0-12.17l24.23-24.23-24.21-24.23c-3.35-3.34-3.35-8.81 0-12.16l14.1-14.1c3.35-3.35 8.86-3.32 12.16 0L377.84 346l24.21-24.21c3.35-3.35 8.89-3.29 12.16 0zm-36.4-83.69c37.02 0 70.6 15.04 94.88 39.32C496.96 301.69 512 335.24 512 372.3c0 36.97-15.04 70.56-39.34 94.83-24.25 24.3-57.8 39.34-94.85 39.34-37.03 0-70.56-15.04-94.84-39.3-24.32-24.27-39.34-57.85-39.34-94.87 0-37.06 15.04-70.61 39.31-94.88l.69-.64c24.24-23.9 57.53-38.68 94.18-38.68zm78.75 55.44c-20.15-20.14-48-32.61-78.75-32.61-30.5 0-58.14 12.25-78.19 32.02l-.55.59c-20.14 20.15-32.62 48.01-32.62 78.76 0 30.74 12.46 58.6 32.61 78.75 20.1 20.13 47.98 32.6 78.75 32.6 30.75 0 58.6-12.47 78.75-32.62 20.14-20.08 32.61-47.95 32.61-78.73 0-30.75-12.47-58.61-32.61-78.76zM56.81 242.28c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.2 2.24 11.54 0 6.38-.93 11.57-2.24 11.57H56.81zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.2 2.24 11.54 0 6.38-.93 11.57-2.24 11.57h-56.94zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.15 2.24 11.49-5.7 3.55-11.19 7.44-16.42 11.62h-42.76zM56.94 308.51c-1.19 0-2.23-5.2-2.23-11.57 0-6.38.92-11.58 2.23-11.58h56.93c1.19 0 2.25 5.2 2.25 11.58 0 6.37-.94 11.57-2.25 11.57H56.94zm90.77 0c-1.19 0-2.23-5.2-2.23-11.57 0-6.38.92-11.58 2.23-11.58h56.93c1.19 0 2.25 5.2 2.25 11.58 0 6.37-.94 11.57-2.25 11.57h-56.93zm-90.63 66.28c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.92-11.57 2.25-11.57h56.93c1.17 0 2.23 5.21 2.23 11.57 0 6.39-.92 11.59-2.23 11.59H57.08zm90.77 0c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.92-11.57 2.25-11.57h56.93c1.17 0 2.23 5.21 2.23 11.57 0 6.39-.92 11.59-2.23 11.59h-56.93zM106.82 17.11c0-9.42 9.3-17.11 20.86-17.11 11.59 0 20.88 7.64 20.88 17.11v74.84c0 9.42-9.34 17.11-20.88 17.11-11.56 0-20.86-7.64-20.86-17.11V17.11zM22.98 163.63h397.38V77.46c0-2.94-1.19-5.53-3.09-7.43-1.89-1.9-4.6-3.08-7.42-3.08h-38.1c-6.38 0-11.58-5.2-11.58-11.57 0-6.38 5.2-11.58 11.58-11.58h38.1c9.32 0 17.68 3.76 23.82 9.88 6.12 6.14 9.87 14.5 9.87 23.82v136.81c-7.6-2.61-15.41-4.73-23.43-6.29v-21.37h.25H22.98V409.8c0 2.95 1.18 5.53 3.08 7.43 1.9 1.9 4.61 3.08 7.45 3.08h188.84c2.14 8.02 4.85 15.83 8.11 23.36H33.71c-9.3 0-17.69-3.76-23.82-9.89C3.77 427.71 0 419.35 0 410V77.55c0-9.29 3.77-17.7 9.89-23.82 6.13-6.13 14.49-9.89 23.82-9.89h40.68c6.37 0 11.57 5.2 11.57 11.57 0 6.39-5.2 11.59-11.57 11.59H33.71c-2.96 0-5.53 1.18-7.43 3.08-1.9 1.9-3.08 4.59-3.08 7.42v86.17h-.22v-.04zm158.95-96.68c-6.39 0-11.57-5.2-11.57-11.57 0-6.38 5.18-11.58 11.57-11.58h77.55c6.37 0 11.57 5.2 11.57 11.58 0 6.37-5.2 11.57-11.57 11.57h-77.55z%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 shape-rendering=%22geometricPrecision%22 text-rendering=%22geometricPrecision%22 image-rendering=%22optimizeQuality%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22 viewBox=%220 0 512 506.47%22%3E%3Cpath fill-rule=%22nonzero%22 d=%22M294.23 17.11c0-9.42 9.3-17.11 20.88-17.11 11.57 0 20.86 7.64 20.86 17.11v74.84c0 9.42-9.29 17.11-20.86 17.11-11.58 0-20.88-7.64-20.88-17.11V17.11zm119.98 304.68 14.12 14.1c3.3 3.32 3.3 8.86 0 12.18l-24.21 24.21 24.21 24.21c3.32 3.32 3.32 8.86 0 12.18l-14.11 14.1c-3.31 3.32-8.82 3.35-12.17 0l-24.21-24.21-24.24 24.23c-3.3 3.3-8.82 3.34-12.16 0l-14.11-14.11c-3.35-3.35-3.35-8.83 0-12.17l24.23-24.23-24.21-24.23c-3.35-3.34-3.35-8.81 0-12.16l14.1-14.1c3.35-3.35 8.86-3.32 12.16 0L377.84 346l24.21-24.21c3.35-3.35 8.89-3.29 12.16 0zm-36.4-83.69c37.02 0 70.6 15.04 94.88 39.32C496.96 301.69 512 335.24 512 372.3c0 36.97-15.04 70.56-39.34 94.83-24.25 24.3-57.8 39.34-94.85 39.34-37.03 0-70.56-15.04-94.84-39.3-24.32-24.27-39.34-57.85-39.34-94.87 0-37.06 15.04-70.61 39.31-94.88l.69-.64c24.24-23.9 57.53-38.68 94.18-38.68zm78.75 55.44c-20.15-20.14-48-32.61-78.75-32.61-30.5 0-58.14 12.25-78.19 32.02l-.55.59c-20.14 20.15-32.62 48.01-32.62 78.76 0 30.74 12.46 58.6 32.61 78.75 20.1 20.13 47.98 32.6 78.75 32.6 30.75 0 58.6-12.47 78.75-32.62 20.14-20.08 32.61-47.95 32.61-78.73 0-30.75-12.47-58.61-32.61-78.76zM56.81 242.28c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.2 2.24 11.54 0 6.38-.93 11.57-2.24 11.57H56.81zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.2 2.24 11.54 0 6.38-.93 11.57-2.24 11.57h-56.94zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.39.93-11.54 2.24-11.54h56.94c1.18 0 2.24 5.15 2.24 11.49-5.7 3.55-11.19 7.44-16.42 11.62h-42.76zM56.94 308.51c-1.19 0-2.23-5.2-2.23-11.57 0-6.38.92-11.58 2.23-11.58h56.93c1.19 0 2.25 5.2 2.25 11.58 0 6.37-.94 11.57-2.25 11.57H56.94zm90.77 0c-1.19 0-2.23-5.2-2.23-11.57 0-6.38.92-11.58 2.23-11.58h56.93c1.19 0 2.25 5.2 2.25 11.58 0 6.37-.94 11.57-2.25 11.57h-56.93zm-90.63 66.28c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.92-11.57 2.25-11.57h56.93c1.17 0 2.23 5.21 2.23 11.57 0 6.39-.92 11.59-2.23 11.59H57.08zm90.77 0c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.92-11.57 2.25-11.57h56.93c1.17 0 2.23 5.21 2.23 11.57 0 6.39-.92 11.59-2.23 11.59h-56.93zM106.82 17.11c0-9.42 9.3-17.11 20.86-17.11 11.59 0 20.88 7.64 20.88 17.11v74.84c0 9.42-9.34 17.11-20.88 17.11-11.56 0-20.86-7.64-20.86-17.11V17.11zM22.98 163.63h397.38V77.46c0-2.94-1.19-5.53-3.09-7.43-1.89-1.9-4.6-3.08-7.42-3.08h-38.1c-6.38 0-11.58-5.2-11.58-11.57 0-6.38 5.2-11.58 11.58-11.58h38.1c9.32 0 17.68 3.76 23.82 9.88 6.12 6.14 9.87 14.5 9.87 23.82v136.81c-7.6-2.61-15.41-4.73-23.43-6.29v-21.37h.25H22.98V409.8c0 2.95 1.18 5.53 3.08 7.43 1.9 1.9 4.61 3.08 7.45 3.08h188.84c2.14 8.02 4.85 15.83 8.11 23.36H33.71c-9.3 0-17.69-3.76-23.82-9.89C3.77 427.71 0 419.35 0 410V77.55c0-9.29 3.77-17.7 9.89-23.82 6.13-6.13 14.49-9.89 23.82-9.89h40.68c6.37 0 11.57 5.2 11.57 11.57 0 6.39-5.2 11.59-11.57 11.59H33.71c-2.96 0-5.53 1.18-7.43 3.08-1.9 1.9-3.08 4.59-3.08 7.42v86.17h-.22v-.04zm158.95-96.68c-6.39 0-11.57-5.2-11.57-11.57 0-6.38 5.18-11.58 11.57-11.58h77.55c6.37 0 11.57 5.2 11.57 11.58 0 6.37-5.2 11.57-11.57 11.57h-77.55z%22/%3E%3C/svg%3E");
}

/* --- VARIANTE 2: Fehler (Rot) --- */
/* Nutzt die spezifische Fehlerfarbe, falls vom Theme/Plugin vorgegeben */
html body .ec-event-calendar-app .ec-status-container.error .ec-status-icon.ec-icon-error {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 viewBox=%220 0 122.88 120.54%22 style=%22enable-background:new 0 0 122.88 120.54%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath class=%22st0%22 d=%22M95.7,65.5c15.01,0,27.18,12.17,27.18,27.18c0,15.01-12.17,27.18-27.18,27.18 c-15.01,0-27.18-12.17-27.18-27.18C68.52,77.67,80.69,65.5,95.7,65.5L95.7,65.5z M92.35,102.95h6.49v5.74h-6.49V102.95 L92.35,102.95z M98.83,99.04h-6.48c-0.64-7.88-2-9.59-2-17.45c0-2.9,2.35-5.26,5.26-5.26c2.9,0,5.26,2.35,5.26,5.26 C100.86,89.45,99.49,91.17,98.83,99.04L98.83,99.04z M17.69,26.67c8.1,2.71,19.38,4.38,31.91,4.38s23.81-1.67,31.91-4.38 c7.11-2.37,11.51-5.25,11.51-8.06c0-2.81-4.4-5.69-11.51-8.06c-8.1-2.7-19.38-4.38-31.91-4.38s-23.81,1.67-31.91,4.38 C2.6,15.59,2.18,21.5,17.69,26.67L17.69,26.67z M6.24,47.86c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.71,19.38,4.38,31.91,4.38 s23.81-1.67,31.91-4.38c7.11-2.37,11.51-5.25,11.51-8.06h0.03v-19.3c-2.53,1.73-5.78,3.26-9.59,4.53 c-8.73,2.91-20.71,4.72-33.86,4.72c-13.16,0-25.13-1.8-33.86-4.72c-3.77-1.26-6.98-2.76-9.49-4.47V47.86L6.24,47.86z M63.3,92.54 c-4.35,0.44-8.95,0.67-13.7,0.67c-13.16,0-25.13-1.8-33.86-4.72c-3.77-1.26-6.98-2.76-9.49-4.47v18.49 c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.7,19.38,4.38,31.91,4.38c7.52,0,14.58-0.6,20.78-1.67c1.56,1.94,3.33,3.7,5.29,5.24 c-7.53,1.65-16.49,2.6-26.07,2.6c-13.16,0-25.13-1.8-33.86-4.72c-4.6-1.54-15.67-6.58-15.67-12.62c0-0.71,0-1.3,0-1.98 C0.06,73.69,0,46.15,0,18.61c0-5.76,6.01-10.65,15.73-13.9C24.46,1.8,36.44,0,49.6,0c13.16,0,25.13,1.8,33.86,4.72 c8.85,2.95,14.62,7.27,15.59,12.37c0.12,0.32,0.18,0.67,0.18,1.04v42.37c-1.2-0.14-2.42-0.21-3.66-0.21c-0.85,0-1.68,0.03-2.51,0.1 v-3.74c-2.53,1.73-5.78,3.26-9.59,4.53c-8.73,2.91-20.71,4.72-33.86,4.72c-13.16,0-25.13-1.8-33.86-4.72 c-3.77-1.26-6.98-2.76-9.49-4.47v18.49c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.7,19.38,4.38,31.91,4.38c5.01,0,9.82-0.27,14.31-0.76 C63.51,88.3,63.3,90.4,63.3,92.54L63.3,92.54z%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg version=%221.1%22 id=%22Layer_1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 x=%220px%22 y=%220px%22 viewBox=%220 0 122.88 120.54%22 style=%22enable-background:new 0 0 122.88 120.54%22 xml:space=%22preserve%22%3E%3Cg%3E%3Cpath class=%22st0%22 d=%22M95.7,65.5c15.01,0,27.18,12.17,27.18,27.18c0,15.01-12.17,27.18-27.18,27.18 c-15.01,0-27.18-12.17-27.18-27.18C68.52,77.67,80.69,65.5,95.7,65.5L95.7,65.5z M92.35,102.95h6.49v5.74h-6.49V102.95 L92.35,102.95z M98.83,99.04h-6.48c-0.64-7.88-2-9.59-2-17.45c0-2.9,2.35-5.26,5.26-5.26c2.9,0,5.26,2.35,5.26,5.26 C100.86,89.45,99.49,91.17,98.83,99.04L98.83,99.04z M17.69,26.67c8.1,2.71,19.38,4.38,31.91,4.38s23.81-1.67,31.91-4.38 c7.11-2.37,11.51-5.25,11.51-8.06c0-2.81-4.4-5.69-11.51-8.06c-8.1-2.7-19.38-4.38-31.91-4.38s-23.81,1.67-31.91,4.38 C2.6,15.59,2.18,21.5,17.69,26.67L17.69,26.67z M6.24,47.86c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.71,19.38,4.38,31.91,4.38 s23.81-1.67,31.91-4.38c7.11-2.37,11.51-5.25,11.51-8.06h0.03v-19.3c-2.53,1.73-5.78,3.26-9.59,4.53 c-8.73,2.91-20.71,4.72-33.86,4.72c-13.16,0-25.13-1.8-33.86-4.72c-3.77-1.26-6.98-2.76-9.49-4.47V47.86L6.24,47.86z M63.3,92.54 c-4.35,0.44-8.95,0.67-13.7,0.67c-13.16,0-25.13-1.8-33.86-4.72c-3.77-1.26-6.98-2.76-9.49-4.47v18.49 c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.7,19.38,4.38,31.91,4.38c7.52,0,14.58-0.6,20.78-1.67c1.56,1.94,3.33,3.7,5.29,5.24 c-7.53,1.65-16.49,2.6-26.07,2.6c-13.16,0-25.13-1.8-33.86-4.72c-4.6-1.54-15.67-6.58-15.67-12.62c0-0.71,0-1.3,0-1.98 C0.06,73.69,0,46.15,0,18.61c0-5.76,6.01-10.65,15.73-13.9C24.46,1.8,36.44,0,49.6,0c13.16,0,25.13,1.8,33.86,4.72 c8.85,2.95,14.62,7.27,15.59,12.37c0.12,0.32,0.18,0.67,0.18,1.04v42.37c-1.2-0.14-2.42-0.21-3.66-0.21c-0.85,0-1.68,0.03-2.51,0.1 v-3.74c-2.53,1.73-5.78,3.26-9.59,4.53c-8.73,2.91-20.71,4.72-33.86,4.72c-13.16,0-25.13-1.8-33.86-4.72 c-3.77-1.26-6.98-2.76-9.49-4.47v18.49c0.56,2.62,4.83,5.26,11.45,7.47c8.1,2.7,19.38,4.38,31.91,4.38c5.01,0,9.82-0.27,14.31-0.76 C63.51,88.3,63.3,90.4,63.3,92.54L63.3,92.54z%22 fill-rule=%22evenodd%22 clip-rule=%22evenodd%22/%3E%3C/g%3E%3C/svg%3E");
  background-color: #d63638;
}

html body .ec-event-calendar-app .ec-status-container.error .ec-status-text {
  color: #d63638;
}

/* --- VARIANTE 3: Favoriten-Filter Fehler (Spezial-Icon) --- */
html body .ec-event-calendar-app .ec-status-icon.ec-icon-fav-alert {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 109.57%22%3E%3Ctitle%3Edelete-from-wishlist%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M94.26,44.46A26.88,26.88,0,1,1,67.38,71.34,26.88,26.88,0,0,1,94.26,44.46ZM82.69,65.69a3.89,3.89,0,0,1-.86-1.29l0-.06a3.91,3.91,0,0,1-.29-1.45,4,4,0,0,1,.3-1.5,4.07,4.07,0,0,1,.85-1.29l0,0A3.92,3.92,0,0,1,84,59.22a4,4,0,0,1,1.52-.3,3.79,3.79,0,0,1,1.51.29l.07,0a4,4,0,0,1,1.21.82l5.62,5.62,5.61-5.61a3.87,3.87,0,0,1,1.28-.85,4,4,0,0,1,1.52-.31,4,4,0,0,1,1.5.3l.07,0A4.27,4.27,0,0,1,105,60l.12.11a3.89,3.89,0,0,1,.8,1.23,4,4,0,0,1,0,3l0,.07a4.14,4.14,0,0,1-.81,1.21l-5.62,5.62,5.6,5.61a3.92,3.92,0,0,1,1.16,2.8v.1a3.94,3.94,0,0,1-.29,1.4l0,.07a4,4,0,0,1-.81,1.21l0,0a4.09,4.09,0,0,1-1.28.85,3.86,3.86,0,0,1-1.52.31,3.94,3.94,0,0,1-1.5-.3,3.89,3.89,0,0,1-1.28-.84L93.9,76.9l-5.6,5.6a4.22,4.22,0,0,1-1.29.86l-.06,0a3.89,3.89,0,0,1-1.45.28,4,4,0,0,1-1.51-.3l-.07,0a4.14,4.14,0,0,1-1.21-.81l0,0a4.12,4.12,0,0,1-.86-1.28,4,4,0,0,1-.31-1.52,4,4,0,0,1,.3-1.5,3.92,3.92,0,0,1,.85-1.28l5.62-5.63-5.6-5.6ZM65.45,19.57l-4.52,4.74-4.52-4.43C49,12.58,43.4,7.08,31.89,6.93L30.46,7A25.75,25.75,0,0,0,13.74,13.6,22.58,22.58,0,0,0,6.63,30.17l0,1.37c.69,19.27,19.13,36.08,34.42,50,3,2.69,5.78,5.27,8.49,7.88l11.27,10.85,5.91-5.87c.68.8,1.39,1.58,2.13,2.32l0,0c.82.83,1.69,1.61,2.59,2.36l-10.59,10.5L45,94.22c-2.49-2.39-5.37-5-8.37-7.75C20.37,71.68.81,53.85,0,31.77l0-1.68A29.12,29.12,0,0,1,9.21,8.73a32.42,32.42,0,0,1,21-8.42H32c14,.18,20.45,6.34,28.8,14.55C67.66,7.54,73.39,1.55,85,.21a33.88,33.88,0,0,1,19,3.45,35.14,35.14,0,0,1,12.51,10.48,31.53,31.53,0,0,1,6.1,15.18,31,31,0,0,1-2.86,16.81l-.17-.18a36.18,36.18,0,0,0-5.14-4.27,24.26,24.26,0,0,0,1.57-11.6,25,25,0,0,0-4.83-12,28.62,28.62,0,0,0-10.14-8.5A27.27,27.27,0,0,0,85.79,6.82C76.47,7.89,71.5,13.17,65.45,19.57Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 109.57%22%3E%3Ctitle%3Edelete-from-wishlist%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M94.26,44.46A26.88,26.88,0,1,1,67.38,71.34,26.88,26.88,0,0,1,94.26,44.46ZM82.69,65.69a3.89,3.89,0,0,1-.86-1.29l0-.06a3.91,3.91,0,0,1-.29-1.45,4,4,0,0,1,.3-1.5,4.07,4.07,0,0,1,.85-1.29l0,0A3.92,3.92,0,0,1,84,59.22a4,4,0,0,1,1.52-.3,3.79,3.79,0,0,1,1.51.29l.07,0a4,4,0,0,1,1.21.82l5.62,5.62,5.61-5.61a3.87,3.87,0,0,1,1.28-.85,4,4,0,0,1,1.52-.31,4,4,0,0,1,1.5.3l.07,0A4.27,4.27,0,0,1,105,60l.12.11a3.89,3.89,0,0,1,.8,1.23,4,4,0,0,1,0,3l0,.07a4.14,4.14,0,0,1-.81,1.21l-5.62,5.62,5.6,5.61a3.92,3.92,0,0,1,1.16,2.8v.1a3.94,3.94,0,0,1-.29,1.4l0,.07a4,4,0,0,1-.81,1.21l0,0a4.09,4.09,0,0,1-1.28.85,3.86,3.86,0,0,1-1.52.31,3.94,3.94,0,0,1-1.5-.3,3.89,3.89,0,0,1-1.28-.84L93.9,76.9l-5.6,5.6a4.22,4.22,0,0,1-1.29.86l-.06,0a3.89,3.89,0,0,1-1.45.28,4,4,0,0,1-1.51-.3l-.07,0a4.14,4.14,0,0,1-1.21-.81l0,0a4.12,4.12,0,0,1-.86-1.28,4,4,0,0,1-.31-1.52,4,4,0,0,1,.3-1.5,3.92,3.92,0,0,1,.85-1.28l5.62-5.63-5.6-5.6ZM65.45,19.57l-4.52,4.74-4.52-4.43C49,12.58,43.4,7.08,31.89,6.93L30.46,7A25.75,25.75,0,0,0,13.74,13.6,22.58,22.58,0,0,0,6.63,30.17l0,1.37c.69,19.27,19.13,36.08,34.42,50,3,2.69,5.78,5.27,8.49,7.88l11.27,10.85,5.91-5.87c.68.8,1.39,1.58,2.13,2.32l0,0c.82.83,1.69,1.61,2.59,2.36l-10.59,10.5L45,94.22c-2.49-2.39-5.37-5-8.37-7.75C20.37,71.68.81,53.85,0,31.77l0-1.68A29.12,29.12,0,0,1,9.21,8.73a32.42,32.42,0,0,1,21-8.42H32c14,.18,20.45,6.34,28.8,14.55C67.66,7.54,73.39,1.55,85,.21a33.88,33.88,0,0,1,19,3.45,35.14,35.14,0,0,1,12.51,10.48,31.53,31.53,0,0,1,6.1,15.18,31,31,0,0,1-2.86,16.81l-.17-.18a36.18,36.18,0,0,0-5.14-4.27,24.26,24.26,0,0,0,1.57-11.6,25,25,0,0,0-4.83-12,28.62,28.62,0,0,0-10.14-8.5A27.27,27.27,0,0,0,85.79,6.82C76.47,7.89,71.5,13.17,65.45,19.57Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
}


/* ==============================
   8. FAVORITE HEART ANIMATION 
   ============================== */

html body .ec-event-calendar-app .ec-fav-btn,
html body .ec-event-calendar-app .ec-compact-fav-btn,
html body .ec-event-calendar-app .ec-fav-btn-single {
  overflow: visible;
  position: relative;
  touch-action: manipulation;
}

html body .ec-event-calendar-app .ec-icon-heart {
  display: inline-block;
  padding: 8px;
  margin: 0px;
  transform: translateZ(0);
  will-change: transform, background-color;
  backface-visibility: hidden;
  perspective: 1000px;
  z-index: 10;
  transition: transform 0.2s ease, background-color 0.1s ease;
}

/* Die Pop-Animation */
/* zwingend für background-color und transition, 
   da diese Werte im 'active' Status sonst vom Hover überschrieben werden könnten 
   oder durch JS-Styles beeinträchtigt werden. */
html body .ec-event-calendar-app .ec-fav-pop {
  animation: ec-heart-pop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  background-color: var(--ec-primary);
  transition: color 0s;
  position: relative;
  z-index: 9999;
  isolation: isolate;
}

/* =========================================
   9. GLOBAL KEYFRAME ANIMATIONS
   ========================================= */

/* Spinner Rotation */
@keyframes ec-spin-loader {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* Herz Pop Animation */
@keyframes ec-heart-pop {
  0% {
    transform: scale(1);
  }

  30% {
    transform: scale(1.4);
  }

  50% {
    transform: scale(0.9);
  }

  70% {
    transform: scale(1.1);
  }

  100% {
    transform: scale(1);
  }
}

/* 1. Alternative: Herz Animation Pulse */
/* 
@keyframes ec-heart-pulse {
    0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(226, 38, 77, 0.7); }
    70% { transform: scale(1.2); box-shadow: 0 0 0 15px rgba(226, 38, 77, 0); }
    100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(226, 38, 77, 0); }
}

.ec-event-calendar-app .ec-fav-pop {
    animation: ec-heart-pulse 0.5s ease-out;
} 
*/

/* 2. Alternative: Herz Animation Drehung */
/*
@keyframes ec-heart-flip {
    0% { transform: rotateY(0deg) scale(1); }
    50% { transform: rotateY(180deg) scale(1.3); }
    100% { transform: rotateY(360deg) scale(1); }
}

.ec-event-calendar-app .ec-fav-pop {
    animation: ec-heart-flip 0.6s ease-in-out;
}
*/

/* 3. Alternative: Herz Schwebend */
/*
@keyframes ec-heart-float {
    0% { transform: translateY(0); }
    50% { transform: translateY(-15px) scale(1.2); }
    100% { transform: translateY(0); }
}
*/


/* =========================================
   7.c EMPTY STATE: FAVORITEN (Titel + Hinweis + Aktion)
   Erweiterter Leerzustand analog zum Aussteller-Plugin.
   Greift nur bei .ec-status-favs-empty, alle anderen
   Statusmeldungen bleiben unveraendert.
   ========================================= */

html body .ec-event-calendar-app .ec-status-container.ec-status-favs-empty .ec-status-text {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-width: 460px;
  font-style: normal;
}

/* Titel: fett und dunkler als der Hinweis */
html body .ec-event-calendar-app .ec-status-container.ec-status-favs-empty .ec-status-title {
  color: #444;
  font-weight: 700;
  font-size: 1.15rem;
  line-height: 1.35;
}

/* Hinweistext unter dem Titel */
html body .ec-event-calendar-app .ec-status-container.ec-status-favs-empty .ec-status-hint {
  color: #888;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
}

/* Aktions-Button "Alle anzeigen" */
html body .ec-event-calendar-app .ec-status-container .ec-status-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 22px;
  min-height: 42px;
  padding: 0 26px;
  background-color: var(--ec-primary);
  color: #fff;
  border: 2px solid var(--ec-primary);
  border-radius: 4px;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  font-style: normal;
  line-height: 1.2;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

html body .ec-event-calendar-app .ec-status-container .ec-status-action:hover,
html body .ec-event-calendar-app .ec-status-container .ec-status-action:focus-visible {
  background-color: transparent;
  color: var(--ec-primary);
}

/* Schmale Container: Button auf volle Breite, Abstaende reduzieren */
@container ec-card-container (max-width: 480px) {
  html body .ec-event-calendar-app .ec-status-container.ec-status-favs-empty {
    padding: 48px 16px;
  }
  html body .ec-event-calendar-app .ec-status-container .ec-status-action {
    width: 100%;
    max-width: 320px;
  }
}

/* ==========================================================================
   DURCHGESTRICHENES HERZ ALS BUTTON-/KACHEL-ICON ("Alle anzeigen")
   --------------------------------------------------------------------------
   Zentrale Definition für Hauptkalender, Timetable und Live-Ticker. Vorher lag
   derselbe SVG-Pfad zusätzlich als Inline-Duplikat in ec-main-script.js und
   ec-timetable.js - jetzt kommt er nur noch aus icons/icon-fav-error.svg.

   Bei der Mask-Technik ist background-color die Icon-Farbe. currentColor
   entspricht dem früheren fill="currentColor" des Inline-SVG, Kontexte mit
   fester Farbe (aktive Modern-Kacheln) überschreiben das gezielt.
   Statusmeldungen nutzen .ec-status-icon.ec-icon-fav-alert (60px, weiter oben).
   ========================================================================== */
html body .ec-event-calendar-app .ec-icon-svg.ec-icon-fav-alert {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 109.57%22%3E%3Ctitle%3Edelete-from-wishlist%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M94.26,44.46A26.88,26.88,0,1,1,67.38,71.34,26.88,26.88,0,0,1,94.26,44.46ZM82.69,65.69a3.89,3.89,0,0,1-.86-1.29l0-.06a3.91,3.91,0,0,1-.29-1.45,4,4,0,0,1,.3-1.5,4.07,4.07,0,0,1,.85-1.29l0,0A3.92,3.92,0,0,1,84,59.22a4,4,0,0,1,1.52-.3,3.79,3.79,0,0,1,1.51.29l.07,0a4,4,0,0,1,1.21.82l5.62,5.62,5.61-5.61a3.87,3.87,0,0,1,1.28-.85,4,4,0,0,1,1.52-.31,4,4,0,0,1,1.5.3l.07,0A4.27,4.27,0,0,1,105,60l.12.11a3.89,3.89,0,0,1,.8,1.23,4,4,0,0,1,0,3l0,.07a4.14,4.14,0,0,1-.81,1.21l-5.62,5.62,5.6,5.61a3.92,3.92,0,0,1,1.16,2.8v.1a3.94,3.94,0,0,1-.29,1.4l0,.07a4,4,0,0,1-.81,1.21l0,0a4.09,4.09,0,0,1-1.28.85,3.86,3.86,0,0,1-1.52.31,3.94,3.94,0,0,1-1.5-.3,3.89,3.89,0,0,1-1.28-.84L93.9,76.9l-5.6,5.6a4.22,4.22,0,0,1-1.29.86l-.06,0a3.89,3.89,0,0,1-1.45.28,4,4,0,0,1-1.51-.3l-.07,0a4.14,4.14,0,0,1-1.21-.81l0,0a4.12,4.12,0,0,1-.86-1.28,4,4,0,0,1-.31-1.52,4,4,0,0,1,.3-1.5,3.92,3.92,0,0,1,.85-1.28l5.62-5.63-5.6-5.6ZM65.45,19.57l-4.52,4.74-4.52-4.43C49,12.58,43.4,7.08,31.89,6.93L30.46,7A25.75,25.75,0,0,0,13.74,13.6,22.58,22.58,0,0,0,6.63,30.17l0,1.37c.69,19.27,19.13,36.08,34.42,50,3,2.69,5.78,5.27,8.49,7.88l11.27,10.85,5.91-5.87c.68.8,1.39,1.58,2.13,2.32l0,0c.82.83,1.69,1.61,2.59,2.36l-10.59,10.5L45,94.22c-2.49-2.39-5.37-5-8.37-7.75C20.37,71.68.81,53.85,0,31.77l0-1.68A29.12,29.12,0,0,1,9.21,8.73a32.42,32.42,0,0,1,21-8.42H32c14,.18,20.45,6.34,28.8,14.55C67.66,7.54,73.39,1.55,85,.21a33.88,33.88,0,0,1,19,3.45,35.14,35.14,0,0,1,12.51,10.48,31.53,31.53,0,0,1,6.1,15.18,31,31,0,0,1-2.86,16.81l-.17-.18a36.18,36.18,0,0,0-5.14-4.27,24.26,24.26,0,0,0,1.57-11.6,25,25,0,0,0-4.83-12,28.62,28.62,0,0,0-10.14-8.5A27.27,27.27,0,0,0,85.79,6.82C76.47,7.89,71.5,13.17,65.45,19.57Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg id=%22Layer_1%22 data-name=%22Layer 1%22 xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 122.88 109.57%22%3E%3Ctitle%3Edelete-from-wishlist%3C/title%3E%3Cpath class=%22cls-1%22 d=%22M94.26,44.46A26.88,26.88,0,1,1,67.38,71.34,26.88,26.88,0,0,1,94.26,44.46ZM82.69,65.69a3.89,3.89,0,0,1-.86-1.29l0-.06a3.91,3.91,0,0,1-.29-1.45,4,4,0,0,1,.3-1.5,4.07,4.07,0,0,1,.85-1.29l0,0A3.92,3.92,0,0,1,84,59.22a4,4,0,0,1,1.52-.3,3.79,3.79,0,0,1,1.51.29l.07,0a4,4,0,0,1,1.21.82l5.62,5.62,5.61-5.61a3.87,3.87,0,0,1,1.28-.85,4,4,0,0,1,1.52-.31,4,4,0,0,1,1.5.3l.07,0A4.27,4.27,0,0,1,105,60l.12.11a3.89,3.89,0,0,1,.8,1.23,4,4,0,0,1,0,3l0,.07a4.14,4.14,0,0,1-.81,1.21l-5.62,5.62,5.6,5.61a3.92,3.92,0,0,1,1.16,2.8v.1a3.94,3.94,0,0,1-.29,1.4l0,.07a4,4,0,0,1-.81,1.21l0,0a4.09,4.09,0,0,1-1.28.85,3.86,3.86,0,0,1-1.52.31,3.94,3.94,0,0,1-1.5-.3,3.89,3.89,0,0,1-1.28-.84L93.9,76.9l-5.6,5.6a4.22,4.22,0,0,1-1.29.86l-.06,0a3.89,3.89,0,0,1-1.45.28,4,4,0,0,1-1.51-.3l-.07,0a4.14,4.14,0,0,1-1.21-.81l0,0a4.12,4.12,0,0,1-.86-1.28,4,4,0,0,1-.31-1.52,4,4,0,0,1,.3-1.5,3.92,3.92,0,0,1,.85-1.28l5.62-5.63-5.6-5.6ZM65.45,19.57l-4.52,4.74-4.52-4.43C49,12.58,43.4,7.08,31.89,6.93L30.46,7A25.75,25.75,0,0,0,13.74,13.6,22.58,22.58,0,0,0,6.63,30.17l0,1.37c.69,19.27,19.13,36.08,34.42,50,3,2.69,5.78,5.27,8.49,7.88l11.27,10.85,5.91-5.87c.68.8,1.39,1.58,2.13,2.32l0,0c.82.83,1.69,1.61,2.59,2.36l-10.59,10.5L45,94.22c-2.49-2.39-5.37-5-8.37-7.75C20.37,71.68.81,53.85,0,31.77l0-1.68A29.12,29.12,0,0,1,9.21,8.73a32.42,32.42,0,0,1,21-8.42H32c14,.18,20.45,6.34,28.8,14.55C67.66,7.54,73.39,1.55,85,.21a33.88,33.88,0,0,1,19,3.45,35.14,35.14,0,0,1,12.51,10.48,31.53,31.53,0,0,1,6.1,15.18,31,31,0,0,1-2.86,16.81l-.17-.18a36.18,36.18,0,0,0-5.14-4.27,24.26,24.26,0,0,0,1.57-11.6,25,25,0,0,0-4.83-12,28.62,28.62,0,0,0-10.14-8.5A27.27,27.27,0,0,0,85.79,6.82C76.47,7.89,71.5,13.17,65.45,19.57Z%22 fill-rule=%22evenodd%22/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  display: inline-block;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  background-color: currentColor;
}

/* ==========================================================================
   HINWEIS: SHORTCODE EINES INAKTIVEN ADD-ONS
   Platzhalter aus shortcodes.php (ec_addon_placeholder_shortcode). Nur für
   angemeldete Redakteure sichtbar - Besucher bekommen gar keine Ausgabe.
   ========================================================================== */
html body .ec-event-calendar-app .ec-addon-missing-notice {
  margin: 1em 0;
  padding: 12px 16px;
  border: 1px dashed #d63638;
  border-left: 4px solid #d63638;
  border-radius: 4px;
  background: #fcf0f1;
  color: #50575e;
  font-size: 14px;
  line-height: 1.5;
}
