/* File: event-posts/css/event-meta-block.css */
 /* =====================================================
           ter_kal_: GLOBAL – beide Seiten-Typen
 ===================================================== */
.ter-kal-event-meta {
    background: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    /*margin-bottom: 30px;*/
    margin: 20px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    /* Fallback-Farben, falls die Inline-Styles fehlen */
    --ter-kal-bg-color: #0073aa;
    --ter-kal-text-color: #ffffff;
    border-left: 4px solid var(--ter-kal-bg-color);
    overflow-wrap: break-word;
    word-break: break-word;
}

.ter-kal-meta-section {
    display: flex;
    align-items: flex-start;
    /*margin-bottom: 15px;*/
    gap: 10px;
    min-width: 250px;
    flex: 1;
    flex-direction: column;
    gap: 4px;
}
.ter-kal-meta-section:last-child { margin-bottom: 0; }
.ter-kal-meta-section .dashicons {
    color: var(--ter-kal-bg-color);
    font-size: 30px;
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    margin-top: 2px;
}


.ter-kal-meta-content {
    flex: 1;
    font-size: 0.95em;
    line-height: 1.6;
    color: #333;
    word-break: break-all;
    overflow-wrap: anywhere;
}

/* Mobil-Optimierung */
@media (max-width: 600px) {
    .ter-kal-event-meta {
        flex-direction: column;
        padding: 12px;
        gap: 12px;
    }
}

.ter-kal-category-badge {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 0.9em;
    font-weight: 500;
    line-height: 1.4;
}
        /* =====================================================
           ter_kal_: ARCHIV – gilt auf Archiv- UND Single-Seiten
           ===================================================== */

        /* ter_kal_: Archiv-Liste – Bild-Containment */
        .post-type-archive-termin_kalender .ter-kal-event-list,
        .post-type-archive-termin_kalender .ter-kal-archive-list {
            container-type: inline-size; /* ter_kal_: Container Queries Basis */
        }

        /* ter_kal_: Jede Archiv-Karte bekommt einen Bild-Wrapper */
        .post-type-archive-termin_kalender .ter-kal-event-item,
        .post-type-archive-termin_kalender article.type-termin_kalender {
            overflow: hidden; /* ter_kal_: verhindert Bild-Overflow */
        }

        /* ter_kal_: Bilder in Archiv-Karten */
        .post-type-archive-termin_kalender .ter-kal-event-item img,
        .post-type-archive-termin_kalender article.type-termin_kalender img,
        .post-type-archive-termin_kalender .wp-post-image {
            max-width: 100%;
            width: 100%;          /* ter_kal_: füllt Karte, skaliert proportional */
            height: auto;
            object-fit: cover;
            display: block;
        }

        /* ter_kal_: Beschreibungs-Bilder im Archiv gezielt begrenzen */
        .post-type-archive-termin_kalender .ter-kal-event-description img,
        .post-type-archive-termin_kalender .ter-kal-event-description .wp-block-image {
            max-width: 100%;
            height: auto;
            object-fit: contain; /* ter_kal_: kein Crop bei Content-Bildern */
        }

        /* ter_kal_: Overflow-Schutz für langen Text */
        .post-type-archive-termin_kalender .ter-kal-event-excerpt {
            overflow: hidden;
            display: -webkit-box;
            -webkit-line-clamp: 3;  /* ter_kal_: max 3 Zeilen im Archiv */
            -webkit-box-orient: vertical;
        }


        /* =====================================================
           ter_kal_: BESCHREIBUNG / CONTENT
        ===================================================== */

            .ter-kal-event-description {
                margin-top: 20px;
                overflow-wrap: break-word;
                word-break: break-word
            }
            /* ter_kal_: Alle Bilder im Content */
            .ter-kal-event-description img,
            .ter-kal-event-description .wp-block-image img,
            .ter-kal-event-description .wp-block-image {
                max-width: 100%;
                height: auto;
                display: block;
            }

            /* ter_kal_: Responsive Tabellen */
            .ter-kal-event-description table {
                max-width: 100%;
                overflow-x: auto;
                display: block;
            }

            /* ter_kal_: Code-Blöcke */
            .ter-kal-event-description code,
            .ter-kal-event-description pre {
                white-space: pre-wrap;
                overflow-wrap: break-word;
                max-width: 100%;
            }

            /* ter_kal_: Blockquotes */
            .ter-kal-event-description blockquote {
                border-left: 4px solid var(--ter-kal-bg-color, #0073aa);
                margin-left: 0;
                padding-left: 1em;
                color: #555;
                font-style: italic;
            }

            /* ter_kal_: Horizontale Linie */
            .ter-kal-event-description hr {
                border: none;
                border-top: 2px solid var(--ter-kal-bg-color, #0073aa);
                opacity: 0.3;
                margin: 1.5em 0;
            }

        <?php if ( is_singular('post') ) : ?>
        /* =====================================================
           ter_kal_: SINGLE – nur auf Einzel-Seiten
           ===================================================== */

            .single-termin_kalender .entry-title {
                background: var(--ter-kal-bg-color, #0073aa);
                color: var(--ter-kal-text-color, #ffffff);
                border-radius: 0.3rem;
                padding: 0.5rem;
                display: inline-block;
                max-width: 100%;            /* ter_kal_: kein Overflow auf mobil */
                overflow-wrap: break-word;
            }
            .single-termin_kalender .entry-title-dashicon {
                margin-right: 2.5rem;
                height: 1rem;
                line-height: 1.6rem;
                vertical-align: middle;     /* ter_kal_: Icon-Alignment */
            }


        /* ter_kal_: Featured Image auf Single */
        .single-termin_kalender .post-thumbnail img,
        .single-termin_kalender .wp-post-image {
            max-width: 100%;
            height: auto;
            border-radius: 4px;
        }




            .single-termin_kalender .entry-title {
                font-size: 1.2rem;
                padding: 0.4rem 0.6rem;
            }
        }