.dkz5-events-module{--dkz-ink:#27231f;--dkz-muted:#6f675f;--dkz-line:#e7e1da;--dkz-soft:#f8f5f1;--dkz-accent:#9a7449;max-width:1380px;margin:0 auto;padding:8px 16px 40px;box-sizing:border-box;color:var(--dkz-ink)}
.dkz5-events-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:36px;align-items:start}.dkz5-events-layout.no-filters{grid-template-columns:1fr}.dkz5-events-filters{position:sticky;top:24px;border:1px solid var(--dkz-line);border-radius:18px;background:#fff;padding:18px;box-shadow:0 10px 28px rgba(40,32,24,.06)}
.dkz5-events-filter-head{display:grid;grid-template-columns:1fr;gap:8px;padding-bottom:14px;border-bottom:1px solid var(--dkz-line)}.dkz5-events-filter-head strong{font-size:17px;line-height:1.25}.dkz5-events-filter-head button{justify-self:start;padding:0}.dkz5-events-filter-head button{border:0;background:none;text-decoration:underline;cursor:pointer;color:var(--dkz-muted)}.dkz5-events-filters fieldset{border:0;margin:18px 0 0;padding:0}.dkz5-events-filters legend{font-weight:750;margin-bottom:9px}.dkz5-events-filters label{display:flex;gap:8px;align-items:center;margin:8px 0;cursor:pointer;font-size:14px}.dkz5-events-filter-toggle{display:none;width:100%;border:1px solid var(--dkz-line);border-radius:12px;background:#fff;padding:12px 14px;font-weight:700;margin-bottom:12px}
.dkz5-events-result-head{display:flex;justify-content:space-between;gap:14px;align-items:end;margin:0 0 16px}.dkz5-events-result-head strong{font-size:20px}.dkz5-events-result-head span{font-size:13px;color:var(--dkz-muted)}.dkz5-events-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dkz5-event-card{border:1px solid var(--dkz-line);border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(40,32,24,.06);display:flex;flex-direction:column}.dkz5-event-card.is-featured{box-shadow:0 14px 34px rgba(40,32,24,.11)}.dkz5-event-media{aspect-ratio:16/8;overflow:hidden;background:var(--dkz-soft)}.dkz5-event-media img{width:100%;height:100%;object-fit:cover;display:block}.dkz5-event-body{padding:20px;display:flex;flex-direction:column;flex:1}.dkz5-event-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:9px}.dkz5-event-badges span{font-size:11px;font-weight:750;letter-spacing:.02em;padding:5px 8px;border-radius:999px;background:var(--dkz-soft);color:#5c5147}.dkz5-event-body h3{font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.15;margin:0 0 10px}.dkz5-event-date{display:flex;flex-direction:column;gap:2px;font-size:15px}.dkz5-event-date span{color:var(--dkz-muted)}.dkz5-event-intro{color:var(--dkz-muted);line-height:1.55;margin:14px 0}.dkz5-event-meta{display:grid;gap:5px;margin:5px 0 18px}.dkz5-event-meta div{display:flex;gap:8px}.dkz5-event-meta dt{font-weight:700;min-width:55px}.dkz5-event-meta dd{margin:0;color:var(--dkz-muted)}.dkz5-event-foot{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-top:auto;padding-top:15px;border-top:1px solid var(--dkz-line)}.dkz5-event-price{display:grid;grid-template-columns:auto auto;column-gap:8px;align-items:baseline}.dkz5-event-price small{grid-column:1/-1;color:var(--dkz-muted)}.dkz5-event-price strong{font-size:21px}.dkz5-event-price del{font-size:13px;color:var(--dkz-muted)}.dkz5-event-button{border:0;border-radius:12px;padding:12px 15px;background:#282421;color:#fff;font-weight:750;cursor:pointer}.dkz5-event-button.is-disabled{opacity:.5;cursor:not-allowed}.dkz5-events-empty{padding:28px;border:1px dashed var(--dkz-line);border-radius:16px;text-align:center;color:var(--dkz-muted);background:var(--dkz-soft)}
.dkz5-event-modal{display:none;position:fixed;inset:0;z-index:100000}.dkz5-event-modal.is-open{display:flex;align-items:center;justify-content:center;padding:18px}.dkz5-event-modal-backdrop{position:absolute;inset:0;background:rgba(20,17,14,.6)}.dkz5-event-modal-panel{position:relative;z-index:1;width:min(720px,100%);max-height:min(86vh,820px);overflow:auto;background:#fff;border-radius:22px;padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.25)}.dkz5-event-modal-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:var(--dkz-soft);font-size:25px;cursor:pointer}.dkz5-modal-kicker{display:block;text-transform:uppercase;letter-spacing:.07em;color:var(--dkz-accent);font-size:11px;font-weight:800;margin-bottom:8px}.dkz5-event-modal-content h2{font-family:Georgia,"Times New Roman",serif;font-size:32px;margin:0 44px 8px 0}.dkz5-event-modal-date{font-weight:700;margin-bottom:18px}.dkz5-event-description{line-height:1.65;color:#4d4742}.dkz5-event-modal-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.dkz5-event-modal-facts span{background:var(--dkz-soft);border-radius:12px;padding:12px}.dkz5-event-modal-facts b{display:block;font-size:11px;text-transform:uppercase;color:var(--dkz-muted);margin-bottom:3px}.dkz5-event-days{display:flex;flex-direction:column;gap:6px;margin:18px 0}.dkz5-event-booking-note{background:#f8f5f1;border:1px solid var(--dkz-line);border-radius:14px;padding:14px;margin:18px 0}.dkz5-event-booking-note p{margin:4px 0 0;color:var(--dkz-muted)}html.dkz5-modal-open{overflow:hidden}
@media(max-width:1100px){.dkz5-events-layout{grid-template-columns:250px minmax(0,1fr);gap:24px}.dkz5-events-grid{grid-template-columns:1fr}}
@media(max-width:880px){.dkz5-events-module{padding-left:14px;padding-right:14px}.dkz5-events-filter-toggle{display:block}.dkz5-events-layout{display:block}.dkz5-events-filters{display:none;position:static;margin-bottom:16px}.dkz5-events-filters.is-open{display:block}.dkz5-events-result-head{align-items:start}.dkz5-events-result-head span{display:none}.dkz5-event-body{padding:17px}.dkz5-event-body h3{font-size:23px}.dkz5-event-foot{align-items:stretch;flex-direction:column}.dkz5-event-button{width:100%}.dkz5-event-modal-panel{padding:23px 18px}.dkz5-event-modal-content h2{font-size:28px}.dkz5-event-modal-facts{grid-template-columns:1fr}}

/* Preview 43.37 – Events UI polish */
.dkz5-event-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.dkz5-event-button.is-secondary{background:#fff;color:#282421;border:1px solid var(--dkz-line)}
.dkz5-event-modal-badges{margin-bottom:12px}
.dkz5-events-filters fieldset[hidden]{display:none!important}
@media(max-width:620px){.dkz5-event-foot{align-items:stretch;flex-direction:column}.dkz5-event-actions{width:100%}.dkz5-event-actions .dkz5-event-button{flex:1}}

/* Preview 43.39 – nested category filters + aligned card footer */
.dkz5-event-category-group{display:block}
.dkz5-event-category-group>.dkz5-event-subchoices{margin:4px 0 10px 22px;padding-left:10px;border-left:1px solid var(--dkz-line)}
.dkz5-event-category-group>.dkz5-event-subchoices[hidden]{display:none!important}
.dkz5-event-subchoice{font-size:13px!important;color:var(--dkz-muted)}
.dkz5-event-bottom{margin-top:auto;display:flex;flex-direction:column}
.dkz5-event-bottom .dkz5-event-meta{margin-top:14px}
.dkz5-event-bottom .dkz5-event-foot{margin-top:0}

/* Preview 43.40 – event price options */
.dkz5-event-price-options{display:grid;gap:5px}.dkz5-event-price-options>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.dkz5-event-price-options small{font-size:12px}.dkz5-event-price-options strong{white-space:nowrap}.dkz5-event-price-options .is-benefit small{font-weight:700}.dkz5-event-modal-prices{margin:18px 0;padding:16px;border:1px solid #e6e2d9;border-radius:12px;background:#faf9f6}.dkz5-event-modal-prices h3{margin:0 0 10px}.dkz5-event-exclusive-note{margin:10px 0 0;font-size:13px}.dkz5-event-price-options.is-compact{min-width:210px}

/* Preview 43.41 – aligned price tiles + Wellpass check-in marker */
.dkz5-event-foot{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-height:128px}
.dkz5-event-price-zone{width:100%}
.dkz5-event-price-boxes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.dkz5-event-price-boxes.is-compact{min-width:0}
.dkz5-event-price-box{border:1px solid var(--dkz-line);border-radius:12px;background:var(--dkz-soft);padding:10px 11px;min-width:0}
.dkz5-event-price-box small{display:block;color:var(--dkz-muted);font-size:11px;line-height:1.25;margin-bottom:5px}
.dkz5-event-price-value{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
.dkz5-event-price-value strong{font-size:18px;white-space:nowrap}
.dkz5-event-price-value del{font-size:12px;color:var(--dkz-muted);white-space:nowrap}
.dkz5-event-price-note{display:block;margin-top:4px;font-size:10px;line-height:1.25;color:var(--dkz-muted)}
.dkz5-event-actions{margin-top:auto;width:100%}
.dkz5-event-modal-prices .dkz5-event-price-boxes{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:620px){.dkz5-event-price-boxes,.dkz5-event-modal-prices .dkz5-event-price-boxes{grid-template-columns:1fr}.dkz5-event-foot{min-height:0}}
.dkz5-event-checkout{display:grid;gap:18px}.dkz5-event-checkout-head h2{margin:3px 0}.dkz5-event-checkout-head p,.dkz5-event-muted{color:#6b7280}.dkz5-event-checkout-section{border-top:1px solid #e5e7eb;padding-top:16px}.dkz5-event-checkout-section h3{margin:0 0 12px}.dkz5-event-choice{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border:1px solid #e5e7eb;border-radius:10px;margin:8px 0;cursor:pointer}.dkz5-event-choice span{display:grid;gap:2px}.dkz5-event-choice small{color:#6b7280}.dkz5-event-guest-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dkz5-event-guest-grid input,.dkz5-event-voucher input{width:100%;box-sizing:border-box;padding:11px;border:1px solid #d1d5db;border-radius:8px}.dkz5-event-voucher{display:grid;gap:5px;margin-top:12px}.dkz5-event-checkout-summary{display:flex;justify-content:space-between;align-items:center;padding:14px;background:#f7f7f5;border-radius:10px}.dkz5-event-checkout-alert,.dkz5-event-checkout-error{padding:12px;border-radius:9px;background:#fff4e5}.dkz5-event-success{text-align:center;padding:28px 8px}.dkz5-event-login-state{padding:11px 12px;background:#f7f7f5;border-radius:9px}@media(max-width:640px){.dkz5-event-guest-grid{grid-template-columns:1fr}}


/* Preview 43.43 – event checkout benefits, vouchers and mobile detail polish */
.dkz5-event-current-price{border:1px solid var(--dkz-line);border-radius:14px;background:var(--dkz-soft);padding:14px 16px;margin-bottom:12px}
.dkz5-event-current-price>small{display:block;color:var(--dkz-muted);font-size:12px;margin-bottom:5px}.dkz5-event-current-price>div{display:flex;gap:9px;align-items:baseline;flex-wrap:wrap}.dkz5-event-current-price strong{font-size:24px}.dkz5-event-current-price del{color:var(--dkz-muted);font-size:13px}.dkz5-event-current-price>span{display:block;color:var(--dkz-muted);font-size:12px;margin-top:4px}
.dkz5-event-benefit-options{margin-top:10px}.dkz5-event-voucher-box{margin-top:12px;padding-top:12px;border-top:1px solid var(--dkz-line)}.dkz5-event-voucher-inline{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center}.dkz5-event-voucher-inline input{width:100%;box-sizing:border-box;padding:11px;border:1px solid #d1d5db;border-radius:8px}.dkz5-event-voucher-inline .dkz5-event-button{padding:10px 13px}.dkz5-event-voucher-result{display:grid;gap:3px;margin-top:9px;padding:10px 12px;border-radius:10px;background:#f7f7f5}.dkz5-event-voucher-result small{color:var(--dkz-muted)}.dkz5-event-voucher-result button{justify-self:start;border:0;background:none;padding:2px 0;text-decoration:underline;cursor:pointer}.dkz5-event-voucher-message{margin-top:8px;color:var(--dkz-muted);font-size:13px}.dkz5-event-success-meta{display:grid;gap:5px;margin:18px auto;padding:14px 16px;max-width:460px;border:1px solid var(--dkz-line);background:var(--dkz-soft);border-radius:12px}.dkz5-event-success-meta strong{font-size:18px}.dkz5-event-success-meta span{color:var(--dkz-muted)}
@media(max-width:620px){.dkz5-event-modal-prices .dkz5-event-price-boxes{grid-template-columns:repeat(2,minmax(0,1fr))}.dkz5-event-modal-prices .dkz5-event-price-box.is-main{grid-column:1/-1}.dkz5-event-voucher-inline{grid-template-columns:1fr}.dkz5-event-voucher-inline strong{margin-bottom:-3px}.dkz5-event-voucher-inline .dkz5-event-button{width:100%}}

/* Preview 43.44: Gutscheinrestguthaben und 0-EUR-Abschluss */
.dkz5-event-voucher-result .dkz5-event-voucher-remove{justify-self:start;border:1px solid #c9c3ba!important;background:#fff!important;color:#2b2622!important;padding:7px 11px!important;border-radius:8px;text-decoration:none!important;font-weight:700;line-height:1.2}.dkz5-event-voucher-result .dkz5-event-voucher-remove:hover{background:#f0ede8!important}.dkz5-event-no-payment{display:grid;gap:3px;padding:14px 16px;border:1px solid var(--dkz-line);border-radius:12px;background:var(--dkz-soft)}.dkz5-event-no-payment span{color:var(--dkz-muted);font-size:13px}.dkz5-event-no-payment[hidden]{display:none!important}[data-event-payment-section][hidden]{display:none!important}[data-event-checkout-summary][hidden]{display:none!important}

/* Preview 43.45: zentraler Auth-Flow für Veranstaltungen */
.dkz5-event-auth{display:grid;gap:14px}.dkz5-event-auth>h2{margin:0;font-size:32px}.dkz5-event-auth>p{margin:0;color:var(--dkz-muted)}.dkz5-event-auth-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:5px;background:var(--dkz-soft);border-radius:12px}.dkz5-event-auth-tabs button{border:0;background:transparent;padding:10px 8px;border-radius:9px;font-weight:700;cursor:pointer}.dkz5-event-auth-tabs button.is-active{background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.06)}.dkz5-event-auth-form{display:grid;gap:11px}.dkz5-event-auth-form label{display:grid;gap:5px;font-weight:650}.dkz5-event-auth-form input:not([type=checkbox]){width:100%;box-sizing:border-box;padding:12px;border:1px solid #d5d0c8;border-radius:10px;background:#fff}.dkz5-event-auth-check{display:flex!important;align-items:flex-start;gap:8px!important;font-weight:500!important}.dkz5-event-auth-note,.dkz5-event-auth-needed{padding:13px 14px;border:1px solid var(--dkz-line);border-radius:12px;background:var(--dkz-soft);line-height:1.5}.dkz5-event-auth-note ul{margin:8px 0 0 18px;padding:0}.dkz5-event-auth-needed p{margin:4px 0 10px;color:var(--dkz-muted)}.dkz5-event-login-state small,.dkz5-event-login-state span{color:var(--dkz-muted)}
@media(max-width:620px){.dkz5-event-auth-tabs{grid-template-columns:1fr}.dkz5-event-auth>h2{font-size:28px}}

/* Preview 43.46: kontrastreiche Auth-Tabs wie Massage/Yoga */
.dkz5-event-auth-tabs{
  margin:12px 0 18px;
  padding:5px;
  background:#F7F2EB;
  border:1px solid rgba(140,106,67,.18);
}
.dkz5-event-auth-tabs button{
  color:#8C6A43!important;
  background:#FFFDF9!important;
  border:1.5px solid #8C6A43!important;
  box-shadow:none!important;
  transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.dkz5-event-auth-tabs button:hover,
.dkz5-event-auth-tabs button:focus-visible{
  background:#F7F2EB!important;
  color:#2F2622!important;
  outline:2px solid rgba(140,106,67,.28);
  outline-offset:2px;
}
.dkz5-event-auth-tabs button.is-active{
  background:#2F2622!important;
  border-color:#2F2622!important;
  color:#F3E3C2!important;
  box-shadow:0 2px 8px rgba(47,38,34,.16)!important;
}

/* Preview 43.91: event filter visibility fix */
.dkz5-event-card[hidden], [data-event-card][hidden]{display:none!important}


/* Preview 43.92: gefilterte Event-Paginierung / Mehr anzeigen */
.dkz5-events-more{display:flex;justify-content:center;margin:22px 0 4px}.dkz5-events-more[hidden]{display:none!important}.dkz5-events-more .dkz5-event-button{min-width:190px}

.dkz5-event-secondary-action{margin:14px 0 10px}.dkz5-event-secondary-action .dkz5-event-button{display:inline-flex;text-decoration:none}

/* 44.39 */
.dkz5-events-filters [data-month-choice][hidden]{display:none!important}


/* Preview 44.95: externe Veranstaltungen ohne DKZ-Checkout */
.dkz5-event-contact-button{display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none!important;background:#2f2622!important;color:#f7ead2!important;border:1px solid #2f2622!important;box-shadow:none!important}
.dkz5-event-contact-button:hover,.dkz5-event-contact-button:focus-visible{background:#44352e!important;color:#fff6e8!important;border-color:#44352e!important;text-decoration:none!important}
.dkz5-event-external-actions{display:flex;justify-content:center;align-items:center;margin:20px auto 4px;width:100%}
.dkz5-event-external-actions .dkz5-event-contact-button{min-width:220px;max-width:340px;margin:0 auto}
@media(max-width:620px){.dkz5-event-external-actions .dkz5-event-contact-button{width:100%;max-width:100%}}

/* Preview 44.96: Desktop-Telefonkontakt kopiert Nummer statt Telefon-App zu öffnen */
.dkz5-phone-copy-toast{position:fixed;left:50%;bottom:34px;z-index:100000;transform:translate(-50%,18px);opacity:0;pointer-events:none;display:grid;gap:3px;min-width:min(360px,calc(100vw - 32px));max-width:460px;padding:16px 20px;border-radius:16px;background:#2f2622;color:#fff6e8;box-shadow:0 16px 42px rgba(20,16,13,.24);text-align:center;transition:opacity .18s ease,transform .18s ease}.dkz5-phone-copy-toast.is-visible{opacity:1;transform:translate(-50%,0)}.dkz5-phone-copy-toast strong{font-size:16px}.dkz5-phone-copy-toast span{font-size:18px;font-weight:800}.dkz5-phone-copy-toast small{color:#f2dcc1;font-size:13px}

.dkz5-event-price-box.is-community-exclusive{grid-column:1/-1}.dkz5-event-price-box.is-community-exclusive .dkz5-event-price-value strong{white-space:normal}


/* Preview 45.62: Veranstaltungsaktionen zentrieren + optionalen Zusatzbutton klar absetzen */
.dkz5-event-foot{flex-direction:column;align-items:center;justify-content:center;text-align:center}
.dkz5-event-price-zone{width:100%;display:flex;justify-content:center}
.dkz5-event-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;width:100%}
.dkz5-event-actions .dkz5-event-button{display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none}
.dkz5-event-card-extra-action{display:flex;justify-content:center;width:100%;margin-top:12px;padding-top:12px;border-top:1px solid var(--dkz-line)}
.dkz5-event-button.is-extra{display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none!important;background:#f3eadf!important;color:#4a3427!important;border:1px solid #b99372!important;box-shadow:none!important}
.dkz5-event-button.is-extra:hover,.dkz5-event-button.is-extra:focus-visible{background:#ead9c6!important;color:#2f2622!important;border-color:#8f684b!important}
.dkz5-event-secondary-action{display:flex;justify-content:center;width:100%;margin:18px 0 10px}
.dkz5-event-secondary-action .dkz5-event-button.is-extra{min-width:220px;max-width:100%}
@media(max-width:620px){.dkz5-event-actions{flex-direction:column}.dkz5-event-actions .dkz5-event-button,.dkz5-event-card-extra-action .dkz5-event-button{width:100%}.dkz5-event-secondary-action .dkz5-event-button.is-extra{width:100%}}

/* Preview 45.63: Preisbereich auf Veranstaltungskarten immer als zentrierte Gruppe */
.dkz5-event-card .dkz5-event-price-zone{display:flex;justify-content:center;align-items:center;width:100%}
.dkz5-event-card .dkz5-event-price-boxes{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:8px;width:100%;max-width:100%;margin:0 auto}
.dkz5-event-card .dkz5-event-price-box{flex:0 1 150px;min-width:128px;max-width:180px;text-align:center}
.dkz5-event-card .dkz5-event-price-value{justify-content:center;text-align:center}
.dkz5-event-card .dkz5-event-price-note{text-align:center}
.dkz5-event-card .dkz5-event-price-box.is-community-exclusive{flex-basis:240px;max-width:340px}
@media(max-width:620px){
  .dkz5-event-card .dkz5-event-price-boxes{display:flex;grid-template-columns:none;justify-content:center;gap:8px}
  .dkz5-event-card .dkz5-event-price-box{flex:1 1 128px;min-width:128px;max-width:180px}
  .dkz5-event-card .dkz5-event-price-box.is-community-exclusive{flex:1 1 220px;max-width:320px}
}

/* Preview 45.65: customer-facing event pages should not expose internal implementation notes. */
.dkz-yff-events-plugin-shell .dkz-yff-events-live-note,
.ra-events-plugin-shell .ra-events-plugin-note,
.ra-events-plugin-shell .ra-events-plugin-head p{display:none!important}

/* 45.68: optional event gift PDF interstitial */
.dkz5-event-gift-offer{max-width:620px;margin:0 auto;text-align:center}.dkz5-event-gift-offer p{line-height:1.65}.dkz5-event-gift-check{display:flex;gap:10px;align-items:flex-start;text-align:left;margin:20px auto;padding:14px 16px;border:1px solid rgba(176,138,87,.24);border-radius:14px;background:#fffdf9;max-width:460px}.dkz5-event-gift-check input{margin-top:3px}.dkz5-event-gift-offer .dkz5-event-button{margin:6px auto;display:flex;justify-content:center;max-width:360px;width:100%}
