/* Öffentliche Kalenderansicht (frontend/course/kalender.html.twig) –
   mobile first: Liste der Tage mit Kursen, ab 768 px Monatstabelle. */
.kurskalender-tabelle thead { display: none; }
.kurskalender-tabelle, .kurskalender-tabelle tbody, .kurskalender-tabelle tr, .kurskalender-tabelle td { display: block; width: 100%; border: 0; }
.kurskalender-tabelle td { padding: .5rem 0; border-bottom: 1px solid var(--bs-border-color, #dee2e6); }
.kurskalender-tabelle td.kurskalender-leer, .kurskalender-tabelle td.kurskalender-fremd { display: none; }
.kurskalender-datum { font-weight: 600; margin-bottom: .25rem; }
.kurskalender-eintrag { display: block; padding: .25rem .5rem; margin-bottom: .25rem; border-left: 3px solid var(--bs-primary, #0d6efd); background: var(--bs-light, #f8f9fa); color: inherit; text-decoration: none; }
.kurskalender-eintrag:hover { background: var(--bs-secondary-bg, #e9ecef); }
.kurskalender-zeit { display: block; font-size: .85em; opacity: .8; }
.kurskalender-titel { display: block; }
.kurskalender-kursleitung { display: block; font-size: .8em; opacity: .75; }

/* Vorschau beim Überfahren (Stimulus kalender-vorschau): Karte aus der Kursliste, nur zum Ansehen */
.kurskalender-vorschau { position: absolute; z-index: 1080; width: 300px; max-width: calc(100vw - 24px); pointer-events: none; }
.kurskalender-vorschau .course-card { height: auto; box-shadow: 0 12px 32px rgba(0, 0, 0, .18); transform: none; }
.kurskalender-vorschau .course-image { height: 150px; }

@media (min-width: 768px) {
    .kurskalender-tabelle { display: table; table-layout: fixed; border-collapse: collapse; }
    .kurskalender-tabelle thead { display: table-header-group; }
    .kurskalender-tabelle tbody { display: table-row-group; }
    .kurskalender-tabelle tr { display: table-row; }
    .kurskalender-tabelle td, .kurskalender-tabelle td.kurskalender-leer, .kurskalender-tabelle td.kurskalender-fremd { display: table-cell; width: auto; height: 6rem; vertical-align: top; padding: .25rem; border: 1px solid var(--bs-border-color, #dee2e6); }
    .kurskalender-tabelle td.kurskalender-fremd { opacity: .45; }
    .kurskalender-datum-lang { display: none; }
    .kurskalender-eintrag { font-size: .8rem; }
}
