.events-hint{margin:0 0 12px;font-size:.92em}.events-local-test{font-size:.8em;color:#526448;margin-bottom:12px;padding:8px 10px;background:#f2f5ef}.events-local-test button{border:0;background:none;color:#315947;text-decoration:underline;padding:0;font:inherit;cursor:pointer}.ek-events-layout{display:grid;grid-template-columns:minmax(0,65fr) minmax(0,35fr);gap:20px;align-items:start}.ek-events-map{height:610px;width:100%;border:1px solid #bdcbb5}.ek-events-map-wrap{position:relative}.events-reset{position:absolute;z-index:1000;top:10px;right:10px;max-width:calc(100% - 65px);padding:8px 10px;background:#fff;border:1px solid #bdcbb5;border-radius:4px;color:#315947;font-size:.85em}.events-disable{margin-bottom:8px;font-size:.8em;padding:5px 10px}.events-status{font-size:.8em}.events-consent{padding:22px;border:1px solid #bdcbb5;min-height:280px}.events-date-nav{display:flex;position:relative;align-items:center;justify-content:space-between;gap:3px}.events-date-nav button{background:none;border:0;padding:5px;color:#234b35;cursor:pointer;font:inherit}.events-date-nav button:first-child,.events-date-nav button:last-child{font-size:28px;line-height:1}.events-date-nav button:nth-child(2){white-space:normal;font-size:.9em;font-weight:600}.events-date-picker{position:absolute;left:25%;top:80%;width:1px;height:1px;opacity:0;pointer-events:none}.events-date-nav .events-red-day{color:#bc242d}.events-summary{font-size:.82em;margin:5px 0 10px;color:#526448}.ek-event-row{display:block;width:100%;padding:2px 4px;margin:0 0 4px;text-align:left;background:none;border:0;border-radius:2px;cursor:pointer;color:#243d28;font:inherit;line-height:1.23}.ek-event-row:hover,.ek-event-row:focus-visible{background:#e9f0e3}.ek-event-location{display:block;font-size:.78em;color:#62705d}.ek-event-title{display:block;font-size:.91em}.ek-event-time{color:#287342;white-space:nowrap}.events-empty{font-size:.9em}.events-pin{display:grid;place-items:center;width:28px;height:28px;border:3px solid white;border-radius:50%;background:#226baa;color:#fff;box-shadow:0 1px 4px #0006;font:bold 13px Arial}.events-cluster{background:#234b35}.ek-event-dialog{width:640px;max-width:calc(100vw - 36px);max-height:85vh;border:1px solid #a9bca0;border-radius:6px;padding:22px;color:#243d28}.ek-event-dialog::backdrop{background:#0006}.ek-event-dialog>button:first-child{float:right}.ek-event-dialog h2{font-size:1.4em;padding-right:70px}.ek-event-dialog>img{max-width:100%;max-height:300px;object-fit:contain}.ek-event-dialog>a{display:block;margin:8px 0}.ek-event-description{white-space:pre-line}.ek-event-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.ek-event-actions button:disabled{background:#e0e0e0;color:#777;border-color:#bbb;cursor:default}@media(max-width:850px),(orientation:portrait) and (max-width:1100px){.ek-events-layout{grid-template-columns:1fr}.ek-events-map{height:420px}.events-date-nav{justify-content:center}.events-date-nav button:nth-child(2){min-width:240px}.ek-event-dialog{padding:16px}.ek-event-dialog h2{font-size:1.2em}.ek-events-calendar{min-width:0}}@media(max-width:400px){.ek-events-map{height:380px}.events-reset{font-size:.75em;padding:8px}.events-date-nav button:nth-child(2){min-width:0;flex:1}}
.ek-event-dialog{position:fixed;inset:0;margin:auto;box-sizing:border-box}

.ek-event-line{display:grid;grid-template-columns:5.6em minmax(0,1fr);column-gap:7px;align-items:start;font-size:.91em}.ek-event-line .ek-event-title{font-size:1em;display:block;min-width:0}.ek-event-time{display:block;line-height:inherit}.ek-event-line.without-time{grid-template-columns:1fr}.events-pin.is-active{background:#cf2735;transform:scale(1.16)}.ek-event-row.is-active{background:#e9f0e3}.events-action-icon{display:inline-block;flex:none;width:28px;height:26px;vertical-align:middle;background-position:center;background-size:contain;background-repeat:no-repeat}.events-ticket-icon{background-image:url('/assets/ticket-vorverkauf.svg')}.events-calendar-icon{background-image:url('/assets/events-calendar.svg')}.events-date-nav button:nth-child(2){display:inline-flex;align-items:center;justify-content:center;gap:9px}.events-date-nav .events-calendar-icon{width:32px;height:32px}.ek-event-actions button{display:inline-flex;align-items:center;gap:7px}.ek-event-actions button:disabled .events-action-icon{filter:grayscale(1);opacity:.55}.ek-event-detail-place{margin:22px 0 24px;padding:12px 14px;background:#f2f5ef;border-left:3px solid #9ab3a5;line-height:1.55}.ek-event-detail-place>strong,.ek-event-detail-place>span{display:block}.ek-event-navigation{display:inline-block;margin-top:8px;font-size:.9em}.events-start-highlights{margin-top:22px}.events-start-highlights .highlights{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:0}.events-start-highlights .highlight h2{font-size:1.15em}.events-start-highlights .highlight p{font-size:.86em}.events-start-highlights .highlight small{font-size:.72em}.events-start-highlights .highlight-measure{grid-template-columns:repeat(3,minmax(0,1fr))}.events-start-highlights .highlight img{height:150px}.events-start-highlights .highlight-measure .highlight img{height:150px}
@media(max-width:850px),(orientation:portrait) and (max-width:1100px){.ek-events-map-column{display:contents}.events-consent,.events-disable{order:0}.ek-events-map-wrap{order:1}.events-status{order:2}.ek-events-calendar{order:3}.events-start-highlights{order:4;margin-top:10px}.events-start-highlights .highlights,.events-start-highlights .highlight-measure{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.events-start-highlights .highlights,.events-start-highlights .highlight-measure{grid-template-columns:1fr}.events-start-highlights .highlight img,.events-start-highlights .highlight-measure .highlight img{height:180px}}
.ek-event-line{grid-template-columns:max-content minmax(0,1fr);column-gap:.3em}.ek-event-time{font-variant-numeric:tabular-nums}.ek-event-line .ek-event-title{font-weight:600}
.events-start-highlights .tips-static,.events-start-highlights .tips-highlight{display:none!important}

.ek-event-row.needs-review,.ek-event-row.needs-review .ek-event-location,.ek-event-row.needs-review .ek-event-time{color:#b3212a}.ek-event-row.needs-review{border-left:3px solid #b3212a;background:#fff4f3}.events-review-note{display:block;color:#b3212a;font-size:.78em;margin:5px 0}.events-local-test a{color:#315947;text-decoration:underline}
.events-pin,.events-cluster{background:#226baa;box-sizing:border-box}.events-pin.is-active{background:#cf2735}.events-more-hint{font-size:.86em;padding:10px 12px;background:#f2f5ef;color:#315947}.events-close-hint{display:block;margin-top:15px;font-size:.78em;color:#62705d}
.events-pin,.events-cluster{display:block;position:relative;border:0;border-radius:0;background:transparent;box-shadow:none;color:#226baa;filter:drop-shadow(1px 3px 2px #0005);transform-origin:50% 100%}.events-pin svg{display:block;width:100%;height:100%}.events-pin-count{position:absolute;top:15%;left:0;width:100%;text-align:center;color:white;line-height:1.2}.events-pin.is-active{background:transparent;color:#cf2735}.events-editor-note{display:block;color:#b3212a!important;font-size:.85em;margin:10px 0}.events-geo-map{height:360px;width:100%;margin:12px 0}.events-geo-editor input{display:block;width:100%;box-sizing:border-box;margin:8px 0;padding:8px}.events-geo-choices{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.events-geo-editor button{color:#b3212a}.events-draft-marker{font-size:24px;color:#b3212a;text-shadow:0 1px 3px #0006}
.events-pin-count{top:35%;transform:translateY(-50%);font-size:inherit;font-weight:700;line-height:1;letter-spacing:-.03em}

.ek-event-dialog form{display:grid;gap:12px}.ek-event-dialog form input,.ek-event-dialog form textarea{width:100%;box-sizing:border-box;padding:10px;font:inherit}.ek-event-description{white-space:pre-wrap}

.ek-events-calendar{position:relative}.events-conditional-tips{position:absolute;left:0;right:0}.events-conditional-tips[hidden]{display:none}.events-conditional-tips .highlight img{width:100%;height:150px;object-fit:contain}.events-conditional-tips .highlight h2{font-size:1.15em}.events-conditional-tips .highlight p{font-size:.86em}.events-conditional-tips .highlight small{font-size:.72em}

.events-disclaimer{font-size:.75em;color:#777;margin:6px 0;line-height:1.35}
@media(max-width:850px),(orientation:portrait) and (max-width:1100px){.events-disclaimer{order:2}}

.events-sections{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.events-sections button{padding:10px 18px;border:1px solid #236b8e;border-radius:6px;background:white;color:#23536b;font:inherit;cursor:pointer}.events-sections button[aria-pressed="true"]{background:#236b8e;color:white}

/* Version 2.0: generous touch targets for both date navigation rows. */
@media(max-width:850px),(orientation:portrait) and (max-width:1100px){
 .events-date-nav{gap:8px;width:100%;margin:12px 0}
 .events-date-nav button{min-height:56px;touch-action:manipulation;border-radius:8px}
 .events-date-nav button:first-child,.events-date-nav button:last-child{flex:0 0 48px;min-width:48px;padding:8px}
 .events-date-nav button:nth-child(2){flex:1;min-width:0;padding:10px 8px;background:#e5edf2;border:1px solid #9eb8c6;font-size:1rem;line-height:1.3}
 .events-date-nav button:focus-visible{outline:3px solid #236b8e;outline-offset:2px}
 .events-date-nav button:active{background:#d3e3ed}
}

/* Version 2.0: spherical blue count pins; selected pins retain red feedback. */
.events-pin{--pin-light:#91c9f5;--pin-mid:#398cd0;--pin-base:#1b62a4;--pin-dark:#103761;filter:drop-shadow(0 2px 1px #102c4659) drop-shadow(1px 4px 3px #102c4633)}
.events-pin-light{stop-color:var(--pin-light)}.events-pin-mid{stop-color:var(--pin-mid)}.events-pin-base{stop-color:var(--pin-base)}.events-pin-dark{stop-color:var(--pin-dark)}
.events-pin.is-active{--pin-light:#ffa7ae;--pin-mid:#e95764;--pin-base:#bc2536;--pin-dark:#711523}
.events-pin-count{text-shadow:0 1px 2px #082e59;top:36.25%;font-variant-numeric:tabular-nums}

/* Version 2.0: complete responsive highlight rows and measured short-list slots. */
.ek-events-map-column{position:relative;min-width:0}
.events-start-highlights,.events-highlight-measure{display:grid;grid-template-columns:repeat(var(--highlight-columns,3),minmax(0,1fr));gap:12px;align-items:stretch}
.events-start-highlights[hidden],.events-extra-highlights[hidden]{display:none}
.events-highlight-measure{position:absolute;top:0;left:0;visibility:hidden;pointer-events:none;z-index:-1}
.ek-program-highlight{min-width:0;box-sizing:border-box;padding:12px;background:white;border:1px solid #d9e1e4;border-radius:8px;overflow-wrap:anywhere;animation:ek-highlight-in .8s ease both}
.events-start-highlights>.ek-program-highlight,.events-extra-highlights>.ek-program-highlight{min-height:var(--highlight-height,0px)}
.ek-program-highlight a{color:inherit;text-decoration:none;display:block}.ek-program-highlight a:focus-visible{outline:3px solid #236b8e;outline-offset:3px}
.ek-program-highlight img{display:block;width:100%;height:150px;object-fit:cover}.ek-program-highlight h3{font-size:1.08rem;line-height:1.25;margin:8px 0}.ek-program-highlight p{font-size:.86rem;line-height:1.4}.ek-program-highlight small{font-size:.72rem;line-height:1.3}
.events-extra-highlights{display:grid;gap:12px;margin-top:16px}
@keyframes ek-highlight-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.ek-program-highlight{animation:none}}

.events-start-highlights,.events-extra-highlights{position:relative}.events-highlight-outgoing{pointer-events:none;z-index:1;animation:ek-highlight-out .8s ease both!important}@keyframes ek-highlight-out{from{opacity:1}to{opacity:0}}

/* Extra cards use the same measured dimensions as cards beneath the map. */
.events-extra-highlights{justify-items:center}.events-extra-highlights>.ek-program-highlight{width:var(--highlight-card-width);max-width:100%}

/* Continue the left highlight grid into the event column. */
.ek-events-layout{column-gap:12px}.events-extra-highlights{justify-items:start}

.events-location-controls{margin:10px 0;order:2}.events-own-location{min-height:48px;padding:10px 18px;border:1px solid #236b8e;border-radius:8px;color:#164b69;background:white;font:inherit;cursor:pointer}.events-own-location:focus-visible{outline:3px solid #236b8e;outline-offset:2px}.events-own-location:disabled{opacity:.65;cursor:wait}.events-location-message{font-size:.9em;margin:8px 0}.events-location-message:empty{display:none}.events-location-controls details{font-size:.78em;color:#526448;margin-top:6px}

.events-location-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 10px;order:0}.events-location-controls .events-disable{margin:0;min-height:48px;padding:10px 14px;font:inherit}.events-location-message{order:0}

/* Matching map controls. */
.events-location-controls .events-disable,.events-location-controls .events-own-location{box-sizing:border-box;margin:0;min-height:48px;padding:10px 18px;border:1px solid #236b8e;border-radius:8px;background:#fff;color:#164b69;font:400 16px/1.4 system-ui;cursor:pointer}
.events-location-controls button:hover:not(:disabled){background:#e5edf2}
.events-location-controls button:focus-visible{outline:3px solid #236b8e;outline-offset:2px}
.events-location-controls button:disabled{opacity:.65;cursor:wait}

/* Keep the attribution notice close to the map in both layouts. */
.events-disclaimer{margin:3px 0 0}.ek-events-map-wrap{margin-bottom:0}
@media(max-width:850px),(orientation:portrait) and (max-width:1100px){.ek-events-layout{row-gap:0}.ek-events-calendar{margin-top:20px}}

/* Shared map toolbar, aligned with Leaflet's upper zoom control. */
.ek-events-map-wrap{display:flex;flex-direction:column}.ek-events-map-wrap>.events-location-controls{position:static;order:-1;display:flex;align-items:stretch;gap:6px;flex-wrap:nowrap;margin:0 0 5px}
.events-location-controls .events-disable,.events-location-controls .events-own-location,.events-location-controls .events-reset{position:static;box-sizing:border-box;flex:0 1 auto;min-width:0;min-height:36px;max-width:none;margin:0;padding:8px 10px;border:1px solid #bdcbb5;border-radius:4px;background:#fff;color:#315947;font:400 13px/1.3 system-ui;box-shadow:0 1px 3px #0002;white-space:normal}
.events-location-controls .events-reset{margin-left:auto}
@media(max-width:480px){.ek-events-map-wrap>.events-location-controls{gap:4px}.events-location-controls .events-disable,.events-location-controls .events-own-location,.events-location-controls .events-reset{padding:6px 5px;font-size:11px}}

.calendar-highlight-toggle{display:flex;align-items:center;gap:10px;font-weight:700}.ek-event-dialog form .calendar-highlight-toggle input{appearance:none;width:46px;height:26px;margin:0;padding:0;border-radius:15px;border:1px solid #a5b29f;background:#d7ddd3;position:relative;cursor:pointer}.calendar-highlight-toggle input:before{content:"";position:absolute;width:20px;height:20px;left:2px;top:2px;border-radius:50%;background:white;box-shadow:0 1px 3px #0003}.ek-event-dialog form .calendar-highlight-toggle input:checked{background:#315c4f;border-color:#315c4f}.calendar-highlight-toggle input:checked:before{left:22px}.calendar-highlight-toggle input:focus-visible{outline:2px solid #a7652d;outline-offset:3px}

.daily-edit-form{position:sticky;top:20px;background:white;padding:20px;border-radius:8px}.daily-edit-form [contenteditable]{white-space:pre-wrap;outline-offset:4px;min-height:24px}.daily-edit-form select{font:inherit;padding:8px}.daily-editor .events-more-hint,.daily-editor .events-start-highlights{display:none}.ek-event-row.event-hidden{opacity:1}.ek-event-row.event-hidden,.ek-event-row.event-hidden .ek-event-location,.ek-event-row.event-hidden .ek-event-time,.ek-event-row.event-hidden .ek-event-title{color:#b0b0b0}.daily-edit-form button{font:inherit;padding:10px 18px;margin:8px 8px 0 0}

.daily-detail-content{display:grid;grid-template-columns:minmax(100px,35%) minmax(0,1fr);gap:16px;align-items:start;margin:18px 0}.daily-detail-content.without-image{grid-template-columns:1fr}.daily-detail-picture img{display:block;width:100%;max-height:320px;object-fit:contain}.daily-detail-picture small{display:block;color:#888;font-size:11px;margin-top:5px}.daily-detail-content p{margin:0}.daily-visibility-status{font-size:13px;color:#666}@media(max-width:520px){.daily-detail-content{grid-template-columns:1fr}}

.daily-contact-data{white-space:pre-wrap;overflow-wrap:anywhere}

/* Shared action appearance for public details and direct editorial details. */
.ek-event-actions{gap:12px}
.ek-event-actions button,.daily-edit-form .ek-event-actions button{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:10px;min-width:190px;min-height:56px;margin:0;padding:10px 18px;font:700 17px/1.2 Arial,Helvetica,sans-serif;color:white;background:linear-gradient(#4c7967,#315c4f);border:1px solid #294d41;border-bottom:4px solid #1e3b31;border-radius:6px;box-shadow:inset 0 1px 0 #ffffff60,0 2px 3px #0002;cursor:pointer}
.ek-event-actions .events-action-icon{width:32px;height:30px;flex:none}
.ek-event-actions .events-ticket-icon{background-image:url('/highlights/images/ticket-button.svg')}
.ek-event-actions .events-calendar-icon{background-image:url('/highlights/images/calendar-button.svg')}
.ek-event-actions button:disabled,.daily-edit-form .ek-event-actions button:disabled{background:linear-gradient(#ededed,#d2d2d2);color:#777;border-color:#b8b8b8;border-bottom-color:#aaa;cursor:default}
.ek-event-actions button:not(:disabled):active{transform:translateY(2px);border-bottom-width:2px}
@media(max-width:520px){.ek-event-actions button,.daily-edit-form .ek-event-actions button{flex:1 1 180px;min-width:0}}

.event-image-indicator{float:right;color:#667766;font-size:18px;margin-left:5px}.daily-priority{display:flex;flex-direction:column;gap:5px;margin:4px 0 20px 28px}.daily-priority select{max-width:240px}.daily-image-tools{margin:20px 0}.daily-image-tools label{display:block;margin:12px 0}.daily-image-tools input{display:block;max-width:100%}.daily-image-library{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.daily-image-library button{padding:3px;margin:0}.daily-image-library img{width:100%;height:80px;object-fit:cover}.daily-image-frame{overflow:hidden}.daily-image-frame.is-cropped img{width:100%;height:100%;max-height:none;object-fit:cover}.daily-detail-picture[hidden]{display:none}

.daily-highlight-options{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.daily-highlight-options .daily-priority{margin:5px 0 14px}.daily-crop-formats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.daily-format-card{min-width:0;border:1px solid #d5decf;border-radius:5px;padding:10px}.daily-image-tools .daily-format-check{display:flex;gap:6px;align-items:center;margin:0 0 9px}.daily-format-check input{width:auto;margin:0}.daily-crop-frame{position:relative;width:100%;overflow:hidden;background:#e6ebe1;touch-action:none;cursor:grab;outline:1px solid #ccd7c8}.daily-crop-frame:active{cursor:grabbing}.daily-crop-frame img{position:absolute;max-width:none;max-height:none;user-select:none;pointer-events:none}.daily-crop-frame.square{aspect-ratio:1}.daily-crop-frame.portrait{aspect-ratio:1/2}.daily-crop-frame.landscape{aspect-ratio:2}.daily-format-card input[type=range]{padding:0;width:100%;margin-top:8px}.daily-edit-form .daily-format-card button{font-size:11px;padding:5px 8px;margin-top:5px}.daily-format-card label{font-size:13px}@media(max-width:500px){.daily-crop-formats{grid-template-columns:1fr}.daily-crop-frame{max-width:280px;margin:auto}.daily-crop-frame.portrait{max-width:160px}}

.daily-contact-data a{color:#315c4f;text-decoration:underline;text-underline-offset:2px}.daily-contact-data a:focus-visible{outline:2px solid #a7652d;outline-offset:3px}

/* Editorial workspace keeps the public list in its own right-hand column. */
.daily-editor,.daily-editor *{box-sizing:border-box}
.daily-editor .ek-events-layout{display:grid;grid-template-columns:minmax(0,65fr) minmax(0,35fr);gap:24px;align-items:start}
.daily-editor .ek-events-map-column,.daily-editor .ek-events-calendar{position:relative;min-width:0;width:auto;max-width:100%;margin:0;float:none}
.daily-editor .daily-edit-form{position:static;width:100%;max-width:100%;min-width:0;margin:0;overflow-wrap:anywhere}
.daily-editor .daily-detail-content>*{min-width:0}
.daily-editor .daily-edit-form input,.daily-editor .daily-edit-form select{max-width:100%}
.daily-editor .daily-crop-formats,.daily-editor .daily-highlight-options{min-width:0}
.daily-editor .ek-event-actions button{min-width:0;flex:1 1 170px}
.daily-editor .ek-event-row{overflow-wrap:anywhere}
.daily-editor .events-date-nav button:nth-child(2){min-width:0}
@media(max-width:600px){.daily-editor .ek-events-layout{grid-template-columns:1fr;gap:20px}}

@media(min-width:900px){.ek-event-dialog{width:1040px;max-width:calc(100vw - 64px);max-height:calc(100vh - 48px);padding:26px}.ek-event-dialog .daily-detail-content{grid-template-columns:minmax(0,30fr) minmax(0,70fr);gap:22px}.ek-event-dialog .daily-detail-content.without-image{grid-template-columns:1fr}.ek-event-dialog .daily-detail-picture img{max-height:300px}.ek-event-dialog .ek-event-description{font-size:15px;line-height:1.45}}
.events-date-nav .events-calendar-icon{background-image:url('/assets/events-calendar.svg')}

@media(min-width:900px){.ek-event-dialog{width:1120px;padding:20px}.ek-event-dialog h2{margin:0 0 10px;font-size:1.35em}.ek-event-dialog .ek-event-detail-date{margin:8px 0}.ek-event-dialog .ek-event-detail-place{margin:10px 0 14px;padding:8px 12px}.ek-event-dialog .daily-detail-content{margin:12px 0}.ek-event-dialog .daily-detail-picture img{max-height:220px}.ek-event-dialog .ek-event-actions{margin-top:12px}.ek-event-dialog>a{margin:6px 0}.ek-event-dialog>p{margin:8px 0}}

.daily-highlight-options{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-highlight-options>div,.daily-highlight-options label,.daily-highlight-options span{min-width:0;overflow-wrap:anywhere}.daily-highlight-options select{width:100%;min-width:0}.daily-highlight-options .calendar-highlight-toggle input{flex-shrink:0}@media(max-width:500px){.daily-highlight-options{gap:10px}.daily-highlight-options .calendar-highlight-toggle{gap:5px;font-size:13px}.daily-priority{font-size:12px}}

.daily-tip-quick{float:right;width:24px;height:24px;margin:0 4px;padding:0;border:1px solid #aaa;border-radius:4px;background:#eee;color:#999;cursor:pointer;text-align:center;font:16px Arial}.daily-tip-quick.active{background:#c92e38;color:white;border-color:#b5212b}.ek-event-row.is-active{background:#e9f0e3}

.daily-mode-toolbar{margin:10px 0 18px}.daily-mode-toolbar button{font:inherit;padding:10px 16px;background:#315c4f;color:white;border:1px solid #294d41;border-radius:5px}.neutral-import-frame{display:block;width:100%;height:1300px;border:0;background:white;min-width:0}

.events-month-dialog{width:340px;max-width:calc(100vw - 24px);box-sizing:border-box;padding:12px;border:1px solid #a9bca0;border-radius:6px;color:#243d28}.events-month-dialog::backdrop{background:#0005}.events-month-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.events-month-dialog button{min-height:44px;min-width:40px;border:0;border-radius:4px;background:#f0f4ec;color:#234b35;font:inherit;cursor:pointer}.events-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center;margin-bottom:8px}.events-month-grid small{padding:5px 0}.events-month-grid button[aria-pressed=true]{background:#315c4f;color:#fff}.events-month-grid button{min-width:0}.events-month-heading button{font-size:26px}@media(max-width:850px){.events-hint{font-size:.85em;line-height:1.2;margin-bottom:6px}}

@media(min-width:851px){.ek-events-entries{max-height:610px;max-height:min(610px,75dvh);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#64806b #edf1e9;padding-right:7px;scrollbar-gutter:stable}.ek-events-entries::-webkit-scrollbar{width:8px}.ek-events-entries::-webkit-scrollbar-thumb{background:#64806b;border-radius:6px}.ek-events-entries::-webkit-scrollbar-track{background:#edf1e9}}

@media(max-width:850px){.ek-events-entries{max-height:70vh;max-height:70dvh;overflow-y:auto;overscroll-behavior-y:auto;scrollbar-width:thin;padding-right:4px;-webkit-overflow-scrolling:touch}}

.events-date-nav button:disabled,.events-month-dialog button:disabled{opacity:.35;cursor:default;color:#777;background:transparent}

@media(min-width:851px){#calendar:not(.daily-editor) .ek-events-entries{max-height:var(--calendar-list-height,610px)}}
.ek-event-row.has-ticket-indicator{position:relative;box-sizing:border-box;padding-right:23px}.event-ticket-indicator{position:absolute;right:3px;top:50%;width:16px;height:25px;transform:translateY(-50%);background:url("/assets/event-ticket.svg") center/contain no-repeat;pointer-events:none}.event-hidden .event-ticket-indicator{opacity:.35;filter:grayscale(1)}

.event-publication-source{display:flex!important;align-items:center;gap:12px;margin:16px 0;color:#315c4f;font-size:.85em}.event-publication-source img{width:48px;height:68px;object-fit:contain}.event-publication-source span{max-width:300px}

.event-detail-source-grid{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;align-items:stretch;margin-top:8px}.event-detail-source-grid.without-cover{grid-template-columns:minmax(0,1fr)}.event-publication-cover{display:block;align-self:stretch;min-height:210px}.event-publication-cover img{display:block;width:100%;height:100%;max-height:420px;object-fit:contain;object-position:left top}.event-detail-source-text{min-width:0}.event-detail-source-text>.ek-event-navigation{margin-top:0}.event-detail-source-text>a{display:block;margin-bottom:10px}.event-publication-label{font-size:.85em;color:#677168;margin:8px 0 14px}.event-detail-source-text .ek-event-actions{margin-bottom:0}@media(max-width:600px){.event-detail-source-grid{grid-template-columns:95px minmax(0,1fr);gap:12px}.event-publication-cover{min-height:140px}.event-detail-source-text .ek-event-actions{gap:8px}}

.event-publication-cover{position:relative;min-height:0!important;align-self:stretch}.event-publication-cover img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain;object-position:left top}.event-detail-source-text .ek-event-actions{align-items:stretch}.event-share-feedback{flex-basis:100%;font-size:12px;color:#68766b;margin:0}.event-share-feedback:empty{display:none}.event-navigation-symbol,.event-share-symbol{font-size:24px;margin-right:6px}

.event-detail-source-grid{column-gap:8px}.event-publication-label,.event-publication-label a{font-size:inherit;color:#808080}.event-publication-label{margin:10px 0}.event-detail-source-text>a,.event-publication-label{font-size:1em}@media(max-width:600px){.event-detail-source-grid{column-gap:7px}}
.event-detail-source-grid{grid-template-columns:125px minmax(0,1fr);column-gap:4px}.event-detail-source-grid.without-cover{grid-template-columns:minmax(0,1fr)}.event-detail-source-text>a{margin:0 0 4px}.event-detail-source-text .event-publication-label{margin:4px 0}.ek-event-dialog .event-detail-source-text .ek-event-actions{margin-top:5px;column-gap:7px;row-gap:7px}.ek-event-dialog .event-detail-source-text .daily-detail-content{margin:4px 0}.event-detail-source-text .ek-event-description{margin:4px 0}@media(max-width:600px){.event-detail-source-grid{grid-template-columns:85px minmax(0,1fr);column-gap:4px}}
.event-detail-source-grid{column-gap:22px}.event-publication-cover img{object-position:right top}@media(min-width:900px){.event-detail-source-grid{column-gap:20px}}@media(max-width:850px){.event-detail-source-grid{column-gap:16px}}
.event-publication-cover img{filter:drop-shadow(3px 4px 3px rgba(0,0,0,.22))}

.events-date-nav button:nth-child(2){font-size:1em}.events-month-dialog{position:fixed;inset:0;margin:auto}

@media(max-width:650px){.events-hint{white-space:nowrap;font-size:clamp(7px,2.25vw,13px);line-height:1.3;margin-bottom:5px}}

@media(max-width:650px){.events-hint,.events-disclaimer{white-space:nowrap;line-height:1.2;letter-spacing:0}.events-disclaimer{margin-top:3px}}

@media(max-width:650px){.ek-events-layout{grid-template-columns:minmax(0,1fr)}.ek-events-layout>*{min-width:0}.events-hint,.events-disclaimer{min-width:0;max-width:100%}}

/* Standard share (box with upward arrow) and navigation arrow. */
.event-share-symbol,.event-navigation-symbol{display:inline-block!important;width:20px!important;height:22px!important;font-size:0!important;vertical-align:middle;background:currentColor;mask:var(--ek-icon) center/contain no-repeat;-webkit-mask:var(--ek-icon) center/contain no-repeat}
.event-share-symbol{--ek-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 5l4-4 4 4M12 1v14M7 9H4v13h16V9h-3'/%3E%3C/svg%3E")}
.event-navigation-symbol{--ek-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 2L3 10l8 3 3 8z' fill='black'/%3E%3C/svg%3E")}
.ek-info-button{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;padding:8px 18px!important;border:1px solid #547565!important;border-radius:6px;background:#eff4f0;color:#234b35!important;text-decoration:none!important;font:600 15px/1.3 Arial;margin:8px 0}.ek-info-button:hover{background:#dfece3}
.events-date-nav button.events-today{color:#26743c!important}.events-date-nav button.events-future{color:#216ac1!important}
.ek-history-controls{display:flex;gap:4px;flex:none}.ek-history-controls button{background:transparent;color:#52675c;border:1px solid #d7dfd9;border-radius:5px;min-width:38px;min-height:38px;font:26px/1 Arial;cursor:pointer}.ek-history-controls button:hover{background:#e8f0eb}.ek19-site-header .masthead{flex-wrap:wrap}.ek19-site-header .ek-history-controls{margin-left:auto}@media(max-width:680px){.ek-history-controls button{min-width:48px;min-height:48px}.ek19-site-header .ek-history-controls{margin:0;align-self:center}}
footer a[href='/ueber-uns.html']{display:inline-block;margin-left:16px}.about-copy{max-width:820px;margin:auto}.about-copy h1{font:700 38px Georgia;color:#444}.about-copy h2{font:600 25px Georgia;color:#444;margin:30px 0 12px}.about-copy p{margin:0 0 18px;line-height:1.7}.about-copy .about-lead{font-size:21px;color:#435c4d}

/* Eulenabschluss: im normalen Listenfluss, keine Überlagerung oder gekürzte Zeilen. */
.calendar-owl{display:block;box-sizing:border-box;margin:8px 0 0;padding:0;width:100%;aspect-ratio:1200/513;flex:none;clear:both}.calendar-owl[hidden]{display:none!important}.calendar-owl img{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;aspect-ratio:1200/513;object-fit:contain!important;object-position:center;border:0}

/* Redaktion 2.1.5: aktuelle Karte/Liste behalten; Bearbeitung unter der Karte. */
.daily-editor-panel{margin-top:24px;border-top:1px solid #d1dccf;padding-top:16px}.daily-editor-panel>h2{font-size:20px}.daily-editor .events-hint{color:#677467;font-size:13px}.daily-editor .ek-events-map{height:610px}.daily-editor .events-consent{min-height:280px}.daily-editor .ek-events-entries{max-height:620px;overflow-y:auto}.daily-editor .events-local-test{padding:6px 8px;margin-bottom:8px}.daily-editor .daily-editor-panel:has(form){scroll-margin-top:20px}@media(max-width:850px),(orientation:portrait) and (max-width:1100px){.daily-editor .ek-events-layout{grid-template-columns:1fr}.daily-editor .ek-events-map{height:420px}.daily-editor-panel{grid-column:1/-1}.daily-editor .ek-events-entries{max-height:480px}}

.daily-editor .ek-events-map-column{display:block}

/* Redaktion: Besucher-Detailfenster links, Tagesauswahl rechts; ohne Karte. */
.daily-editor .daily-editor-panel{margin:0;border:0;padding:0}.daily-editor .daily-edit-form{padding:20px;border:1px solid #cbd8c7;border-radius:6px}.daily-editor .ek-events-entries{max-height:calc(100vh - 260px);min-height:250px}@media(max-width:850px),(orientation:portrait) and (max-width:1100px){.daily-editor .ek-events-calendar{grid-row:1}.daily-editor .ek-events-map-column{grid-row:2}.daily-editor .ek-events-entries{max-height:440px}}@media(max-width:520px){}

/* Hidden events remain available exclusively in the editorial list. */
.daily-editor .ek-event-row.event-hidden{background:#f1f1f1;color:#929292;border-left:3px solid #b3b3b3;padding-left:8px}.daily-editor .ek-event-row.event-hidden .daily-tip-quick{filter:grayscale(1);opacity:.45}

/* Update 2.1.6: controls remain outside the collapsible map. */
.ek-events-map-wrap[hidden],.events-consent[hidden]{display:none!important}
.events-location-controls{display:flex;gap:6px;flex-wrap:nowrap;margin:0 0 5px}
.events-location-controls .events-search,.events-mobile-search button{box-sizing:border-box;min-height:40px;padding:8px 12px;border:1px solid #bdcbb5;border-radius:4px;background:white;color:#315947;font:400 13px/1.3 system-ui;box-shadow:0 1px 3px #0002;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.calendar-search-icon{position:relative;display:inline-block;flex:none;width:16px;height:16px;border:3px solid #dc7d26;border-radius:50%;box-sizing:border-box;margin-right:3px}
.calendar-search-icon:after{content:'';position:absolute;width:8px;height:3px;background:#dc7d26;transform:rotate(45deg);left:9px;top:10px;border-radius:2px}
.events-mobile-search{display:none}.events-search:hover,.events-mobile-search button:hover{background:#fff5e7}.events-search:focus-visible,.events-mobile-search button:focus-visible{outline:3px solid #c36c22;outline-offset:2px}
.calendar-map-off .events-start-highlights{margin-top:10px}
.calendar-search-dialog{position:fixed;inset:0;margin:auto;width:620px;max-width:calc(100vw - 24px);max-height:85dvh;box-sizing:border-box;border:1px solid #b8c8bb;border-radius:10px;padding:20px;color:#294537;overflow:auto;background:white}
.calendar-search-dialog::backdrop{background:#0007}.calendar-search-dialog>button:first-child{float:right}.calendar-search-dialog h2{margin:4px 90px 18px 0;font-size:1.3rem}.calendar-search-dialog label{display:grid;gap:8px;font-weight:600}.calendar-search-dialog input{box-sizing:border-box;min-width:0;width:100%;min-height:48px;padding:12px;border:1px solid #7e9d8c;border-radius:6px;font:inherit}.calendar-search-dialog p{font-size:.85rem;color:#617167}.calendar-search-results{display:grid;gap:6px}.calendar-search-results h3{font-size:.9rem;margin:14px 0 3px}.calendar-search-results button{padding:12px;text-align:left;border:1px solid #dae2db;border-radius:6px;background:#f7faf7;color:#294537;font:inherit;min-height:44px}.calendar-search-results button:hover{background:#e8f1e8}.calendar-search-dialog>button:last-child{margin-top:18px;padding:10px}

@media(max-width:650px){
 .events-location-controls{order:0;gap:4px}.events-location-controls .events-search{display:none}.events-location-controls .events-disable,.events-location-controls .events-own-location,.events-location-controls .events-reset{flex:1;min-height:44px;padding:6px;font-size:11px}
 .events-mobile-search{display:block;order:2;width:100%;position:sticky;top:0;z-index:600;background:white;padding:4px 0;box-sizing:border-box}.events-mobile-search button{width:100%;min-height:44px;font-size:15px}
 .events-disclaimer,.events-status{order:3}.ek-events-calendar{order:4}.events-start-highlights{order:5}
 .calendar-mobile-pinned .ek-events-entries{height:var(--mobile-list-height,45dvh)!important;max-height:var(--mobile-list-height,45dvh)!important;overflow:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .calendar-mobile-pinned .events-more-hint,.calendar-mobile-pinned .events-extra-highlights,.calendar-mobile-pinned .events-conditional-tips{display:none}
 .calendar-mobile-pinned .ek-events-calendar{margin-top:4px}.calendar-mobile-pinned .events-summary{margin:4px 0}.calendar-mobile-pinned .events-date-nav{margin:4px 0}
}

.calendar-scroll-anchor{display:none}@media(max-width:650px){.calendar-scroll-anchor{display:block;order:2;height:0;min-height:0;margin:0;padding:0}}

/* Update 2.1.7: event websites remain recognisable when unavailable. */
.ek-website-button{display:inline-flex;align-items:center;gap:7px;cursor:pointer}
.ek-website-button .event-web-symbol{display:inline-flex;align-items:center}
.ek-website-button:disabled{background:#eceff1!important;color:#92989d!important;border-color:#d9dde0!important;cursor:default;opacity:1}
.ek-website-button:disabled .event-web-symbol{filter:grayscale(1);opacity:.5}

@media(min-width:651px){.events-location-controls .events-search{flex:1 1 auto;min-width:110px;font-size:15px}.events-location-controls .events-reset{margin-left:0}.events-location-controls>button:not(.events-search){flex:0 0 auto}}

.daily-auto-panel{border:1px solid #b9cbbb;border-radius:8px;padding:16px;margin:14px 0;background:#f4f7f0}.daily-auto-panel summary{font-weight:bold;cursor:pointer}.daily-auto-panel fieldset{margin:14px 0;padding:12px;display:flex;gap:12px;flex-wrap:wrap;border:1px solid #c8d4c5}.daily-auto-panel label{display:flex;align-items:center;gap:7px}.daily-auto-panel input[type=month],.daily-auto-panel input[type=number]{padding:8px;margin:10px}.daily-auto-panel input[type=checkbox]{width:20px;height:20px;flex:none}.daily-auto-rule{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0}.daily-auto-rule input[type=text]{min-width:220px;flex:1}.daily-auto-panel button,.daily-auto-panel select,.daily-auto-rule input{padding:9px}.daily-tip-unselected{opacity:.7}.daily-tip-quick{color:#8a8a8a!important}.daily-tip-quick.active{color:#cf2445!important}.daily-selection-host>label{display:flex;gap:12px;align-items:center;margin:12px 0}.daily-selection-host select{padding:9px}

.daily-tip-quick,.daily-tip-quick.active{background:transparent!important;border:0!important;box-shadow:none!important;font-size:23px!important;line-height:1!important;padding:4px!important;min-width:32px;min-height:32px}.daily-tip-quick{color:#8a8a8a!important}.daily-tip-quick.active{color:#cf2445!important}

.daily-tip-region-switch{display:flex;flex-wrap:wrap;gap:18px;border:1px solid #b9cbbb;border-radius:8px;padding:16px;margin:16px 0}.daily-tip-region-switch label{display:flex;gap:10px;align-items:center;padding:10px;font-weight:bold}.daily-tip-region-switch input{width:22px;height:22px}.daily-tip-region-switch label:has(input:checked){background:#e8f1e5;border-radius:6px;color:#235239}.daily-auto-rule strong{flex:1 0 100%}.daily-auto-rule small{color:#68766b}.daily-auto-panel select[aria-label="Zeitraum für Tages-Tipps"]{margin:10px}

/* Beta 6: phone landscape keeps highlights below the list in two columns.
   Portrait, tablet portrait and desktop keep their existing layout. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:600px) and (pointer:coarse){
 .ek-events-layout{grid-template-columns:1fr;row-gap:0}
 .ek-events-map-column{display:contents}
 .ek-events-map-wrap{order:1}
 .events-disclaimer,.events-status{order:2}
 .ek-events-calendar{order:3;min-width:0;margin-top:20px}
 .events-start-highlights{order:4;margin-top:10px}
 .events-start-highlights,.events-highlight-measure{grid-template-columns:repeat(var(--highlight-columns,2),minmax(0,1fr))}
}

/* Optional landscape image is part of the existing clickable/coloured event row. */
.event-list-picture{display:block;position:relative;overflow:hidden;margin-top:6px;margin-bottom:4px;background:#e6ebe1;box-sizing:border-box}
.event-list-picture img{display:block;position:absolute;max-width:none;pointer-events:none;user-select:none}
.ek-event-row.has-list-image{padding-right:4px;overflow:hidden}
.ek-event-row.has-list-image .ek-event-line{padding-right:19px}
.ek-event-row.has-list-image .event-ticket-indicator{top:18px;transform:none}
.daily-edit-form .calendar-list-image-toggle[aria-pressed=true]{background:#267342;color:#fff;border-color:#1a6033}
.daily-edit-form .calendar-list-image-toggle[aria-pressed=false]{background:#edf0eb;color:#344a36;border:1px solid #a5b4a5}

/* Clear, keyboard-accessible image upload and full-width credit entry. */
.daily-image-tools .daily-image-upload{margin:12px 0}
.daily-image-tools .daily-image-file-input{display:none!important}
.daily-edit-form .daily-image-upload-button{display:inline-flex;flex-direction:column;align-items:flex-start;gap:3px;max-width:100%;box-sizing:border-box;border:1px solid #8da294;border-radius:5px;background:#edf2ee;color:#243d28;cursor:pointer;white-space:normal;text-align:left}
.daily-image-upload-button .daily-upload-status{display:block;max-width:100%;font-size:12px;color:#526453;overflow-wrap:anywhere;font-weight:400}
.daily-image-upload-button:focus-visible{outline:2px solid #267342;outline-offset:2px}
.daily-image-tools .daily-image-credit-label{display:block;width:100%;font-weight:600}
.daily-image-tools input.daily-image-credit{display:block;width:100%;max-width:none;box-sizing:border-box;min-height:44px;margin-top:6px;padding:10px 12px;border:1px solid #8b9e90;border-radius:5px;background:#fff;color:#243d28;font:inherit;box-shadow:inset 0 1px 2px #0000000d;cursor:text}
.daily-image-tools input.daily-image-credit:focus{outline:2px solid #267342;outline-offset:1px;border-color:#267342}

.event-list-credit{display:block;box-sizing:border-box;margin-top:2px;margin-bottom:4px;padding:0;color:#888;font-size:11px;font-weight:400;line-height:1.3;overflow-wrap:anywhere}

/* Beta 7: page-scroll margins and full-width mobile details. */
@media(max-width:1100px){.ek-events-map{width:100%!important;margin-inline:0}.ek-events-map-wrap{touch-action:pan-y;background:transparent}}
@media(max-width:650px){.ek-event-dialog .event-detail-source-grid,.editor-user-detail .event-detail-source-grid{display:block}.ek-event-dialog .event-publication-cover,.editor-user-detail .event-publication-cover{float:none;width:75px;height:100px;margin-bottom:10px}.ek-event-dialog .daily-detail-content,.editor-user-detail .daily-detail-content{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.daily-detail-content .ek-event-description{width:100%;box-sizing:border-box;min-width:0;margin-inline:0}.daily-detail-picture{width:100%}}

@media(max-width:650px){.ek-events-calendar .events-date-nav~.events-date-nav{display:none!important}.ek-events-calendar>.events-date-nav:first-of-type{position:sticky;top:0;z-index:600;background:white}}

@media (pointer:coarse) and (orientation:landscape) and (max-height:500px){.ek-events-calendar .events-date-nav~.events-date-nav{display:none!important}.ek-events-calendar>.events-date-nav:first-of-type{position:sticky;top:0;z-index:800;background:white}}
