/* Zusatzstile fuer die statische Fassung (bewusst minimal). */

.om-page {
    max-width: 900px;
    margin: 0 auto;
    padding: 40px 20px 60px;
}

.om-page h1 {
    margin-bottom: 10px;
}

.om-event-list {
    list-style: none;
    margin: 0 0 30px;
    padding: 0;
    border-top: 1px solid #e0e0e0;
}

.om-event {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 16px;
    align-items: baseline;
    padding: 12px 4px;
    border-bottom: 1px solid #e0e0e0;
}

.om-event time {
    flex: 0 0 105px;
    color: #555;
    font-variant-numeric: tabular-nums;
}

.om-event a {
    font-weight: 600;
}

.om-event .om-venue {
    flex-basis: 100%;
    color: #666;
    font-size: 0.9em;
}

.om-search {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: flex-end;
    margin: 20px 0;
}

.om-search input {
    flex: 1 1 260px;
    padding: 10px 12px;
    border: 1px solid #bbb;
    font-size: 1em;
}

.om-search label {
    flex-basis: 100%;
    font-weight: 600;
}

.om-results {
    list-style: none;
    padding: 0;
}

.om-results li {
    padding: 12px 0;
    border-bottom: 1px solid #e0e0e0;
}

.om-results .om-snippet {
    display: block;
    color: #555;
    font-size: 0.92em;
}

.om-filter-empty {
    margin: 20px 0;
    font-style: italic;
}

/* Sichtbare Fokuszustaende (Barrierefreiheit) */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 3px solid #7a1f2b;
    outline-offset: 2px;
}

/* Cookie-Hinweis: nach Zustimmung zuverlaessig ausblenden
   (das Original-Plugin nutzt dafuer eine jQuery-Animation, die in Safari
   nicht immer greift). */
body.cookies-set #cookie-notice,
body.cookies-revoke #cookie-notice {
    display: none !important;
}
