.elementor-71 .elementor-element.elementor-element-230c4d97{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}/* Start custom CSS for text-editor, class: .elementor-element-530ed6d1 */.ics-calendar .ics-calendar-title {
    font-size: 1.5rem !important;
    margin-bottom: 0.25em !important;
}

.ics-calendar .ics-calendar-description {
    color: #666666 !important;
    margin-bottom: 1.5em !important;
}

/* Card for each event */
.ics-calendar.layout-basic .ics-calendar-basic-wrapper ul.events li {
    background: #ffffff !important;
    border: 1px solid #e6e6e6 !important;
    border-radius: 10px !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
    padding: 20px 22px !important;
    margin: 0 0 16px 0 !important;
    transition: box-shadow 0.15s ease, transform 0.15s ease !important;
}

.ics-calendar.layout-basic .ics-calendar-basic-wrapper ul.events li:hover {
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1) !important;
    transform: translateY(-1px) !important;
}

.ics-calendar.layout-basic .ics-calendar-basic-wrapper ul.events li[data-rel2today="today"] {
    border-left: 4px solid #e61224 !important;
}

.ics-calendar.layout-basic .ics-calendar-basic-wrapper ul.events li[data-rel2today="past"] {
    opacity: 0.55 !important;
}

/* Date badge (single-day) */
.ics-calendar.layout-basic .ics-calendar-basic-wrapper .ics-calendar-date {
    background: #e61224 !important;
    border: none !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    min-width: 4em !important;
    padding: 10px 12px !important;
    text-align: center !important;
}

/* Date badge (multi-day, e.g. "Monday 21.09 – Wednesday 23.09") */
.ics-calendar.layout-basic .ics-calendar-basic-wrapper .ics-calendar-date.multiday {
    background: #e61224 !important;
    border: none !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    padding: 10px 12px !important;
}

.ics-calendar.layout-basic .ics-calendar-basic-wrapper .ics-calendar-date.multiday *,
.ics-calendar.layout-basic .ics-calendar-basic-wrapper .ics-calendar-date.multiday .multiday-sep {
    color: #ffffff !important;
}

/* Event title / time */
.ics-calendar.layout-basic .ics-calendar-basic-wrapper ul.events .event .title {
    color: #1a1a1a !important;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
}

.ics-calendar.layout-basic .ics-calendar-basic-wrapper ul.events .event .title a {
    color: inherit !important;
    text-decoration: none !important;
}

.ics-calendar.layout-basic .ics-calendar-basic-wrapper ul.events .event .title a:hover {
    color: #e61224 !important;
    text-decoration: underline !important;
}

.ics-calendar.layout-basic .ics-calendar-basic-wrapper ul.events .event .time {
    color: #777777 !important;
}

/* Location line */
.ics-calendar.layout-basic .ics-calendar-basic-wrapper .location {
    color: #555555 !important;
    font-size: 0.9rem !important;
    margin-top: 6px !important;
}

.ics-calendar.layout-basic .ics-calendar-basic-wrapper .location::before {
    content: "📍 " !important;
}

/* Description text */
.ics-calendar.layout-basic .ics-calendar-basic-wrapper .eventdesc {
    color: #444444 !important;
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
    margin-top: 10px !important;
}

.ics-calendar.layout-basic .ics-calendar-basic-wrapper .eventdesc p {
    margin: 0 0 12px 0 !important;
}

/* Fee / info boxes inside the event description */
.ics-calendar.layout-basic .ics-calendar-basic-wrapper .eventdesc blockquote,
.ics-calendar.layout-basic .ics-calendar-basic-wrapper .eventdesc table {
    background: #fafafa !important;
    border: 1px solid #e6e6e6 !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
}

/* Cancelled badge */
.ics-calendar .event_status_cancelled {
    background: #e61224 !important;
    border-radius: 4px !important;
    color: #ffffff !important;
    font-size: 0.75rem !important;
    margin-left: 8px !important;
    padding: 1px 6px !important;
    text-transform: uppercase !important;
}

/* No-events message */
.ics-calendar .ics-calendar-error {
    background: #f7f7f7 !important;
    border-radius: 8px !important;
    color: #777777 !important;
    padding: 20px !important;
    text-align: center !important;
}

@media (max-width: 600px) {
    .ics-calendar.layout-basic .ics-calendar-basic-wrapper ul.events li {
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .ics-calendar.layout-basic .ics-calendar-basic-wrapper .ics-calendar-date {
        margin-bottom: 12px !important;
    }
}

a[href="https://kum.webling.ch/portal#/upcoming_events"]{
    color:red;
    font-weight: 700;
    text-decoration: underline;
}/* End custom CSS */