:root{--bfp-primary:var(--baptisten-primary,#006f83);--bfp-accent:var(--baptisten-accent,#00a89d);--bfp-magenta:var(--baptisten-highlight,#c9006b);--bfp-ink:var(--baptisten-ink,#003b5c);--bfp-soft:var(--baptisten-surface,#eef6f7);--bfp-card:#fff;--bfp-line:rgba(0,110,130,.13);--bfp-radius:24px;--bfp-shadow:0 18px 45px rgba(0,60,80,.12)}
body.contrast-mode,.contrast-mode,body.baptisten-contrast,[data-contrast="true"]{--bfp-primary:#86e7f1;--bfp-accent:#5ff0d0;--bfp-magenta:#ff6fbd;--bfp-ink:#f4fdff;--bfp-soft:#11272f;--bfp-card:#0c1d25;--bfp-line:rgba(160,240,255,.22);--bfp-shadow:0 18px 45px rgba(0,0,0,.35)}
.bfp-theme-page{margin-top:0!important;padding:0 0 48px!important}.bfp-theme-page>.bfp-wrap:first-child{margin-top:0!important}.bfp-wrap{width:min(1180px,calc(100% - 32px));margin:0 auto;color:var(--bfp-ink);font-family:inherit}.bfp-wrap a{color:var(--bfp-primary)}
.bfp-hero-slider{position:relative;min-height:360px;margin:0 0 34px;border-radius:0 0 42px 42px;overflow:hidden;background:var(--bfp-soft);box-shadow:var(--bfp-shadow)}.bfp-hero-slide{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:44px;opacity:0;transition:opacity .55s ease;background:linear-gradient(120deg,rgba(0,72,95,.72),rgba(0,122,132,.52)),var(--bfp-bg) center/cover no-repeat}.bfp-hero-slide.is-active{opacity:1}.bfp-hero-slide h2{font-size:clamp(2rem,6vw,4.4rem);line-height:1.05;margin:.15em 0;color:#fff;font-weight:900}.bfp-hero-slide p{font-size:clamp(1rem,2vw,1.35rem);color:#fff;font-weight:700}.bfp-eyebrow,.bfp-pill{display:inline-flex;align-items:center;border-radius:999px;background:rgba(0,168,157,.12);color:var(--bfp-magenta);padding:.38rem .8rem;font-weight:800;font-size:.82rem}.bfp-hero-slide .bfp-eyebrow,.bfp-detail-hero .bfp-eyebrow{background:rgba(255,255,255,.18);color:#fff}.bfp-slider-dots{position:absolute;bottom:18px;left:0;right:0;text-align:center}.bfp-slider-dots button{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.5);margin:0 5px;cursor:pointer}.bfp-slider-dots button.is-active{background:#fff}
.bfp-section-head{margin:26px 0}.bfp-section-head h1,.bfp-title-card h1{font-size:clamp(2rem,4vw,3.35rem);margin:0 0 6px;color:var(--bfp-ink);font-weight:900;letter-spacing:-.02em}.bfp-section-head p,.bfp-title-card p{font-size:1.1rem;color:color-mix(in srgb,var(--bfp-ink),transparent 30%)}.bfp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.bfp-grid-single{grid-template-columns:repeat(2,minmax(0,1fr))}.bfp-card{background:var(--bfp-card);border-radius:var(--bfp-radius);overflow:hidden;box-shadow:var(--bfp-shadow);display:flex;flex-direction:column;border:1px solid var(--bfp-line)}.bfp-card.is-wide{grid-column:span 2;display:grid;grid-template-columns:1fr 1.15fr}.bfp-card-img{min-height:205px;background:center/cover no-repeat}.bfp-card-body{padding:24px}.bfp-card h2{font-size:1.45rem;line-height:1.18;margin:.8rem 0 .5rem;color:var(--bfp-ink);font-weight:900}.bfp-card p{margin:.35rem 0 .8rem}.bfp-date{font-weight:800;color:color-mix(in srgb,var(--bfp-ink),transparent 20%);margin:18px 0}.bfp-btn,.bfp-load-more{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--bfp-accent);color:#fff!important;border:0;border-radius:999px;padding:.85rem 1.35rem;text-decoration:none;font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(0,130,120,.2)}.bfp-btn:hover,.bfp-load-more:hover{filter:brightness(.96);transform:translateY(-1px)}.bfp-secondary,.bfp-muted-btn{display:inline-flex;border:1px solid var(--bfp-line);border-radius:999px;padding:.78rem 1.15rem;text-decoration:none;background:var(--bfp-soft);color:var(--bfp-ink);font-weight:800}.bfp-empty,.bfp-success,.bfp-error{border-radius:22px;padding:24px;background:var(--bfp-soft);margin:22px 0}.bfp-success{background:#e8faf1;color:#145d35}.bfp-error{background:#fff0f0;color:#8a1e1e}.contrast-mode .bfp-success,body.baptisten-contrast .bfp-success{background:#0f3926;color:#d7ffe8}.contrast-mode .bfp-error,body.baptisten-contrast .bfp-error{background:#3b1518;color:#ffe3e6}.bfp-archive{margin-top:36px}.bfp-archive summary{font-size:1.35rem;font-weight:900;cursor:pointer;margin-bottom:18px}.bfp-archive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.bfp-archive .bfp-card-img{min-height:150px}.bfp-archive .bfp-card h2{font-size:1.05rem}.bfp-archive-item.is-hidden{display:none}
.bfp-detail{margin-top:0!important}.bfp-detail-hero{min-height:295px;border-radius:0 0 36px 36px;margin:0 0 20px!important;display:grid;place-items:center;text-align:center;overflow:hidden;background:linear-gradient(120deg,rgba(0,72,95,.78),rgba(0,122,132,.50)),var(--bfp-bg) center/cover no-repeat;padding:42px;box-shadow:var(--bfp-shadow)}.bfp-detail-hero>div{max-width:900px}.bfp-detail-hero h2{color:#fff;font-size:clamp(1.9rem,4.8vw,3.8rem);line-height:1.05;margin:.2em 0;font-weight:900;letter-spacing:-.02em}.bfp-detail-hero p{color:#fff;font-size:1.18rem;font-weight:700}.bfp-breadcrumb{margin:18px 0}.bfp-breadcrumb a{display:inline-flex;text-decoration:none;font-weight:800;color:var(--bfp-primary)}.bfp-detail-shell{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}.bfp-detail-main{display:grid;gap:18px}.bfp-title-card,.bfp-content-card,.bfp-sticky-card,.bfp-download-card{background:var(--bfp-card);border:1px solid var(--bfp-line);border-radius:28px;box-shadow:var(--bfp-shadow)}.bfp-title-card{padding:28px 30px;position:relative;overflow:hidden}.bfp-title-card:after{content:"";position:absolute;right:-70px;top:-80px;width:220px;height:220px;border-radius:38px;background:linear-gradient(135deg,rgba(0,168,157,.14),rgba(200,0,110,.12));transform:rotate(17deg);pointer-events:none}.bfp-content-card{padding:28px 30px}.bfp-download-card{padding:18px 22px}.bfp-richtext{font-size:1.07rem;line-height:1.75}.bfp-richtext p{margin:0 0 1.05em}.bfp-richtext strong{color:var(--bfp-ink)}.bfp-sticky-card{position:sticky;top:24px;padding:22px;display:grid;gap:18px}.bfp-btn-wide{width:100%;box-sizing:border-box;text-align:center}.bfp-fact-list{display:grid;gap:12px}.bfp-fact-list>div{background:var(--bfp-soft);border-radius:18px;padding:15px 16px;border:1px solid var(--bfp-line)}.bfp-fact-list span{display:block;font-size:.82rem;font-weight:800;color:color-mix(in srgb,var(--bfp-ink),transparent 36%);margin-bottom:4px}.bfp-fact-list strong{display:block;color:var(--bfp-ink);line-height:1.35}.bfp-side-link{font-weight:800;text-decoration:none;justify-self:center}.bfp-registration .bfp-form{box-shadow:none;border:0;margin:0;padding:0;background:transparent;border-radius:0}.bfp-form{max-width:850px;background:var(--bfp-card);box-shadow:var(--bfp-shadow);border-radius:var(--bfp-radius);padding:28px;margin:26px 0;border:1px solid var(--bfp-line)}.bfp-form h2,.bfp-form h3{color:var(--bfp-ink);font-weight:900}.bfp-form label{display:block;font-weight:800;margin:14px 0 6px}.bfp-form input,.bfp-form select,.bfp-form textarea{width:100%;border:1px solid var(--bfp-line);border-radius:14px;padding:12px 14px;background:var(--bfp-card);color:var(--bfp-ink);font:inherit;box-sizing:border-box}.bfp-person{border:1px solid var(--bfp-line);border-radius:18px;padding:16px;margin:12px 0}.bfp-person legend{font-weight:900;padding:0 8px}.bfp-help{font-size:.9rem;color:color-mix(in srgb,var(--bfp-ink),transparent 35%)}
@media(max-width:980px){.bfp-detail-shell{grid-template-columns:1fr}.bfp-sticky-card{position:static}.bfp-grid,.bfp-grid-single{grid-template-columns:repeat(2,minmax(0,1fr))}.bfp-card.is-wide{grid-column:auto;display:flex}.bfp-archive-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bfp-hero-slider{min-height:310px}}
@media(max-width:620px){.bfp-wrap{width:min(100% - 22px,1180px)}.bfp-grid,.bfp-grid-single{grid-template-columns:1fr}.bfp-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bfp-hero-slider,.bfp-detail-hero{border-radius:0 0 28px 28px;min-height:240px;padding:28px 18px}.bfp-card-body{padding:18px}.bfp-title-card,.bfp-content-card{padding:21px 18px;border-radius:22px}.bfp-sticky-card{border-radius:22px}.bfp-form{padding:20px}.bfp-archive .bfp-card-body{padding:14px}.bfp-archive .bfp-date{font-size:.85rem}}
/* Alpha 4: sauberere Formularabstände und Autoplatz-Logik */
.bfp-form h3{margin:2rem 0 .85rem;font-size:clamp(1.45rem,2.8vw,2rem);line-height:1.15}
.bfp-form h3:first-child{margin-top:0}
.bfp-form-block{display:grid;gap:.8rem;margin:0 0 1.4rem}
.bfp-form input[type="checkbox"]{width:auto;min-width:auto;padding:0;border-radius:4px;box-shadow:none}
.bfp-check-row{display:flex!important;align-items:center;gap:.75rem;margin:1rem 0 .15rem!important;font-weight:800;line-height:1.35;cursor:pointer}
.bfp-check-row input{flex:0 0 auto;width:18px!important;height:18px;accent-color:var(--bfp-accent)}
.bfp-check-row span{display:inline-block}
.bfp-car-options{background:var(--bfp-soft);border:1px solid var(--bfp-line);border-radius:18px;padding:1rem 1.05rem;margin-top:.35rem}
.bfp-free-seats{display:grid;gap:.3rem;margin-top:.9rem;max-width:260px}
.bfp-free-seats input{max-width:180px;background:var(--bfp-card)}
.bfp-car-options[hidden],.bfp-free-seats[hidden]{display:none!important}
.bfp-reg-form>label,.bfp-reg-form>.bfp-form-block>label{margin-top:1rem}
.bfp-reg-form button.bfp-btn{margin-top:1.1rem}
@media(max-width:620px){.bfp-car-options{padding:.9rem}.bfp-free-seats,.bfp-free-seats input{max-width:100%}}
/* Alpha 6: Teamzugang auf der Detailseite */
.bfp-team-access{border-top:1px solid var(--bfp-line);padding-top:16px;display:grid;gap:10px}
.bfp-team-access-title{font-weight:900;color:var(--bfp-ink)}
.bfp-team-access p{margin:0;font-size:.9rem;line-height:1.45;color:color-mix(in srgb,var(--bfp-ink),transparent 35%)}
.bfp-team-actions{display:grid;grid-template-columns:1fr;gap:8px}.bfp-team-actions .bfp-secondary,.bfp-team-button{justify-content:center;text-align:center}

/* Alpha 7: Frontend-Teamzugang für angemeldete Personen */
.bfp-team-form{display:grid;gap:10px;margin-top:12px}.bfp-team-form label{font-weight:800;color:var(--bfp-primary,#005a7a)}.bfp-team-form input{width:100%;border:1px solid rgba(0,90,122,.18);border-radius:16px;padding:12px 14px;background:#fff;color:var(--bfp-text,#00344d)}.bfp-team-panel{margin-top:14px}.bfp-inline-form{display:inline-block;margin:0 8px 8px 0}.bfp-inline-form button{cursor:pointer}.bfp-team-table-wrap{margin-top:18px;padding:18px;border-radius:22px;background:rgba(238,246,248,.9);border:1px solid rgba(0,90,122,.12)}.bfp-team-table-scroll{overflow:auto;margin-top:12px}.bfp-team-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:16px;overflow:hidden;min-width:680px}.bfp-team-table th,.bfp-team-table td{padding:12px 14px;border-bottom:1px solid rgba(0,90,122,.1);text-align:left;vertical-align:top}.bfp-team-table th{background:rgba(0,90,122,.08);font-weight:900;color:var(--bfp-primary,#005a7a)}.bfp-room-grid-front{margin-top:12px}.bfp-room-grid-front .bfp-room-box{background:#fff;border:1px solid rgba(0,90,122,.14);border-radius:18px;padding:14px;box-shadow:0 10px 28px rgba(0,52,77,.08)}
body.bfp-contrast .bfp-team-form input,.bfp-contrast .bfp-team-form input{background:#071c25;color:#fff;border-color:rgba(255,255,255,.22)}body.bfp-contrast .bfp-team-table-wrap,.bfp-contrast .bfp-team-table-wrap{background:#0b2430;border-color:rgba(255,255,255,.16)}body.bfp-contrast .bfp-team-table,.bfp-contrast .bfp-team-table,body.bfp-contrast .bfp-room-grid-front .bfp-room-box,.bfp-contrast .bfp-room-grid-front .bfp-room-box{background:#071c25;color:#fff;border-color:rgba(255,255,255,.16)}body.bfp-contrast .bfp-team-table th,.bfp-contrast .bfp-team-table th{background:#103344;color:#fff}
@media print{.bfp-site-header,.site-header,.bfp-detail-hero,.bfp-detail-main>.bfp-detail-left>*,.bfp-detail-side>*:not(.bfp-team-access),.bfp-team-form,.bfp-team-actions,.bfp-secondary{display:none!important}.bfp-team-access,.bfp-team-table-wrap{box-shadow:none!important;border:0!important;background:#fff!important;color:#000!important}.bfp-team-table{min-width:0}.bfp-team-table th,.bfp-team-table td{color:#000!important;border:1px solid #ccc!important}.bfp-detail-main{display:block!important}}

/* Alpha 8: fokussierte Anmeldung per Modal + Frontend-Team-Werkzeuge */
.bfp-register-page{margin-top:0!important;padding-top:28px}.bfp-register-shell{max-width:940px;margin:0 auto 60px;display:grid;gap:18px}.bfp-register-shell .bfp-form{max-width:none;margin:0}.bfp-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:22px}.bfp-modal.is-open{display:flex}.bfp-modal-backdrop{position:absolute;inset:0;background:rgba(0,35,50,.62);backdrop-filter:blur(5px)}.bfp-modal-dialog{position:relative;width:min(100%,520px);background:var(--bfp-card);color:var(--bfp-ink);border:1px solid var(--bfp-line);border-radius:28px;box-shadow:0 24px 70px rgba(0,35,50,.28);padding:28px}.bfp-modal-dialog h2{margin:.1rem 0 .6rem;color:var(--bfp-ink);font-weight:900}.bfp-modal-dialog p{color:color-mix(in srgb,var(--bfp-ink),transparent 30%)}.bfp-modal-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:999px;background:var(--bfp-soft);color:var(--bfp-ink);font-size:26px;line-height:1;cursor:pointer}.bfp-modal-form{display:grid;gap:10px;margin-top:16px}.bfp-modal-form label{font-weight:900}.bfp-modal-form input{width:100%;box-sizing:border-box;border:1px solid var(--bfp-line);border-radius:16px;padding:13px 15px;background:var(--bfp-card);color:var(--bfp-ink);font:inherit}.bfp-detail-side button.bfp-btn{border:0;cursor:pointer;font:inherit}.bfp-team-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0 0 14px}.bfp-team-toolbar span{color:color-mix(in srgb,var(--bfp-ink),transparent 35%);font-size:.92rem}.bfp-front-room-layout{display:grid;grid-template-columns:minmax(240px,330px) 1fr;gap:22px}.bfp-front-people{display:grid;gap:10px;align-content:start}.bfp-front-people h4,.bfp-room-planner-front h4{font-size:1.15rem;margin:.2rem 0;color:var(--bfp-ink);font-weight:900}.bfp-front-person{background:var(--bfp-card);border:1px solid var(--bfp-line);border-radius:18px;padding:12px;display:grid;gap:7px;box-shadow:0 8px 20px rgba(0,52,77,.06);cursor:grab}.bfp-front-person:active{cursor:grabbing}.bfp-front-person small{color:color-mix(in srgb,var(--bfp-ink),transparent 38%)}.bfp-front-person select{width:100%;border:1px solid var(--bfp-line);border-radius:13px;padding:9px;background:var(--bfp-card);color:var(--bfp-ink)}.bfp-room-grid-front .bfp-room-box{min-height:118px}.bfp-room-grid-front .bfp-room-box[data-room-id]{outline:2px dashed transparent;transition:.18s ease}.bfp-room-grid-front .bfp-room-box[data-room-id]:hover{outline-color:color-mix(in srgb,var(--bfp-accent),transparent 40%)}.bfp-room-grid-front ul{margin:10px 0 0;padding-left:18px}.bfp-room-front-form .bfp-btn{margin-top:16px}.bfp-registration{display:none!important}
.bfp-rights-picker{display:grid;gap:14px}.bfp-rights-group{background:#fff;border:1px solid rgba(0,90,122,.15);border-radius:16px;padding:14px}.bfp-rights-group h3{margin:.2rem 0 .4rem}.bfp-rights-option{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:12px;border:1px solid rgba(0,90,122,.1);margin:8px 0;background:rgba(255,255,255,.75)}.bfp-rights-option input{margin-top:4px}.bfp-rights-option span{display:grid}.bfp-rights-option small{color:#637b88}.bfp-rights-option.is-wp{opacity:.9}
body.bfp-contrast .bfp-modal-dialog,.bfp-contrast .bfp-modal-dialog,body.bfp-contrast .bfp-modal-form input,.bfp-contrast .bfp-modal-form input,body.bfp-contrast .bfp-front-person,.bfp-contrast .bfp-front-person,body.bfp-contrast .bfp-front-person select,.bfp-contrast .bfp-front-person select{background:#071c25;color:#fff;border-color:rgba(255,255,255,.18)}body.bfp-contrast .bfp-modal-close,.bfp-contrast .bfp-modal-close{background:#103344;color:#fff}
@media(max-width:820px){.bfp-front-room-layout{grid-template-columns:1fr}.bfp-modal-dialog{padding:24px 20px;border-radius:24px}}

/* Alpha 10: eigener Moderatorbereich */
.bfp-moderator-page{padding-top:24px}.bfp-moderator-hero{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;background:linear-gradient(135deg,var(--bfp-primary),color-mix(in srgb,var(--bfp-primary),#000 18%));color:#fff;border-radius:32px;padding:32px;box-shadow:var(--bfp-shadow);overflow:hidden;position:relative}.bfp-moderator-hero:after{content:"";position:absolute;right:-60px;top:-70px;width:230px;height:230px;border-radius:42px;background:rgba(255,255,255,.12);transform:rotate(16deg)}.bfp-moderator-hero h1{margin:.25rem 0 .35rem;color:#fff;font-size:clamp(2rem,4vw,3.5rem);line-height:1.05}.bfp-moderator-hero p{margin:0;color:rgba(255,255,255,.88);font-weight:700}.bfp-moderator-event-meta{display:grid;gap:6px;justify-items:end;position:relative;z-index:1}.bfp-moderator-event-meta span{font-size:.92rem;color:rgba(255,255,255,.82)}.bfp-moderator-login-card,.bfp-moderator-info-card,.bfp-moderator-status,.bfp-moderator-section{background:var(--bfp-card);border:1px solid var(--bfp-line);border-radius:26px;box-shadow:var(--bfp-shadow);padding:24px;margin-top:20px}.bfp-moderator-login-card{max-width:720px}.bfp-moderator-status{display:flex;justify-content:space-between;gap:18px;align-items:center}.bfp-moderator-status span{display:block;font-size:.86rem;color:color-mix(in srgb,var(--bfp-ink),transparent 42%);font-weight:800}.bfp-moderator-status strong{display:block;font-size:1.25rem;color:var(--bfp-ink)}.bfp-moderator-status small{display:block;color:color-mix(in srgb,var(--bfp-ink),transparent 36%)}.bfp-moderator-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.bfp-moderator-badges span{border-radius:999px;background:var(--bfp-soft);border:1px solid var(--bfp-line);padding:.42rem .7rem;color:var(--bfp-primary);font-weight:900}.bfp-moderator-nav{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.bfp-moderator-nav .bfp-inline-form{margin:0}.bfp-moderator-nav .bfp-secondary.is-active,.bfp-moderator-nav .bfp-secondary:hover{background:var(--bfp-primary);color:#fff}.bfp-moderator-dashboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}.bfp-mod-card{background:var(--bfp-card);border:1px solid var(--bfp-line);border-radius:22px;padding:18px;box-shadow:0 10px 28px rgba(0,52,77,.07)}.bfp-mod-card span{font-weight:900;color:color-mix(in srgb,var(--bfp-ink),transparent 36%)}.bfp-mod-card strong{display:block;font-size:2rem;line-height:1.1;color:var(--bfp-primary);margin:.25rem 0}.bfp-mod-card small{color:color-mix(in srgb,var(--bfp-ink),transparent 38%)}.bfp-section-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.bfp-section-title-row h2{margin:0;color:var(--bfp-ink);font-size:clamp(1.7rem,3vw,2.4rem)}.bfp-section-title-row p{margin:.15rem 0 0;color:color-mix(in srgb,var(--bfp-ink),transparent 35%)}.bfp-row-actions{display:flex;gap:8px;flex-wrap:wrap}.bfp-room-stats{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 18px}.bfp-room-stats span{border-radius:999px;background:var(--bfp-soft);border:1px solid var(--bfp-line);padding:.48rem .75rem;font-weight:900;color:var(--bfp-primary)}.bfp-unassigned-drop,.bfp-room-drop{min-height:76px;border:2px dashed color-mix(in srgb,var(--bfp-line),var(--bfp-primary) 20%);border-radius:18px;padding:10px;display:grid;gap:10px;align-content:start;background:color-mix(in srgb,var(--bfp-soft),transparent 30%)}.bfp-room-grid-front{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bfp-room-box-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.bfp-room-extra{display:inline-flex;margin:.5rem 0 0;border-radius:999px;background:#fff4ce;border:1px solid #e5c768;color:#6d5300;padding:.25rem .55rem;font-size:.82rem;font-weight:900}.bfp-room-box.is-full{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--bfp-primary),transparent 70%)}.bfp-room-box.has-extra-bed{box-shadow:inset 0 0 0 2px #e5c768}.room-shake{animation:bfpRoomShake .42s ease}@keyframes bfpRoomShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}50%{transform:translateX(6px)}75%{transform:translateX(-3px)}}.bfp-team-access-compact .bfp-team-login-inline{display:grid;grid-template-columns:1fr;gap:8px}.bfp-team-access-compact .bfp-team-login-inline input{background:var(--bfp-card);color:var(--bfp-ink);border:1px solid var(--bfp-line)}
@media(max-width:980px){.bfp-moderator-hero{grid-template-columns:1fr}.bfp-moderator-event-meta{justify-items:start}.bfp-moderator-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.bfp-room-grid-front{grid-template-columns:1fr}.bfp-moderator-status{display:grid}}
@media(max-width:620px){.bfp-moderator-page{width:calc(100% - 20px)}.bfp-moderator-hero{padding:24px 18px;border-radius:24px}.bfp-moderator-dashboard{grid-template-columns:1fr}.bfp-section-title-row{display:grid}.bfp-moderator-status,.bfp-moderator-section,.bfp-moderator-login-card,.bfp-moderator-info-card{padding:18px;border-radius:22px}.bfp-team-table{min-width:760px}}
@media print{body .bfp-moderator-nav,body .bfp-breadcrumb,body .bfp-section-title-row .bfp-secondary,body .bfp-row-actions,body .bfp-front-person select,body .bfp-room-front-form>p,body .bfp-detail-hero,body .bfp-title-card,body .bfp-content-card,body .bfp-sticky-card{display:none!important}body .bfp-moderator-section,body .bfp-moderator-status,body .bfp-moderator-hero{box-shadow:none!important;background:#fff!important;color:#000!important;border:1px solid #ddd!important}body .bfp-moderator-hero h1,body .bfp-moderator-hero p{color:#000!important}}

/* Alpha 11: Anmeldelisten-Infos und PDF-UI */
.bfp-info-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:rgba(0,160,150,.12);border:1px solid rgba(0,160,150,.22);margin:2px;font-size:16px;vertical-align:middle}.bfp-age-pill{display:inline-flex;align-items:center;border-radius:999px;background:#ffc400;color:#002b3f;font-size:.74rem;font-weight:900;padding:.12rem .45rem;margin-left:.35rem}.bfp-team-table td .bfp-secondary[title],.bfp-admin .button[title]{cursor:help}.bfp-reg-form [data-bfp-toggle-target]{margin-top:10px}.bfp-reg-form [data-bfp-toggle-target][hidden]{display:none!important}
.bfp-contrast .bfp-info-icon,body.bfp-contrast .bfp-info-icon{background:#103344;border-color:rgba(255,255,255,.22);color:#fff}.bfp-contrast .bfp-age-pill,body.bfp-contrast .bfp-age-pill{background:#ffcf33;color:#071c25}

/* Alpha 12: kompakte Anmeldeliste, Dialoge und Zimmerfilter */
.bfp-team-table-compact th,.bfp-team-table-compact td{vertical-align:middle}.bfp-person-lines{display:grid;gap:4px}.bfp-person-line{display:block}.bfp-count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;border-radius:999px;background:var(--bfp-soft);border:1px solid var(--bfp-line);font-weight:900;color:var(--bfp-primary)}.bfp-contact-icons,.bfp-row-actions{display:flex;gap:8px;flex-wrap:wrap}.bfp-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;border:1px solid var(--bfp-line);background:var(--bfp-card);color:var(--bfp-primary);font-weight:900;cursor:pointer;text-decoration:none;box-shadow:0 8px 18px rgba(0,52,77,.05)}.bfp-icon-btn:hover,.bfp-icon-btn.is-copied,.bfp-icon-btn.is-revealed{background:var(--bfp-primary);color:#fff}.bfp-icon-btn.bfp-danger:hover{background:#b00038;color:#fff}.bfp-password-btn.is-revealed{width:auto;padding:0 14px;letter-spacing:.08em;color:#fff}.bfp-dialog{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:20px}.bfp-dialog.is-open{display:flex}.bfp-dialog-backdrop{position:absolute;inset:0;background:rgba(0,35,50,.6);backdrop-filter:blur(5px)}.bfp-dialog-box{position:relative;width:min(100%,760px);max-height:calc(100vh - 40px);overflow:auto;background:var(--bfp-card);border:1px solid var(--bfp-line);border-radius:28px;box-shadow:0 28px 80px rgba(0,35,50,.28);padding:28px;color:var(--bfp-ink)}.bfp-dialog-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:999px;background:var(--bfp-soft);color:var(--bfp-ink);font-size:26px;cursor:pointer}.bfp-dialog-box h3{font-size:clamp(1.6rem,3vw,2.4rem);margin:.5rem 0 1rem;color:var(--bfp-ink)}.bfp-dialog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.bfp-dialog-grid>div,.bfp-detail-info-list>div{border:1px solid var(--bfp-line);background:var(--bfp-soft);border-radius:16px;padding:12px;display:grid;gap:4px}.bfp-dialog-grid strong,.bfp-detail-info-list strong{color:color-mix(in srgb,var(--bfp-ink),transparent 35%);font-size:.84rem}.bfp-dialog-grid button{border:0;background:transparent;text-align:left;padding:0;color:var(--bfp-primary);font-weight:900;cursor:pointer}.bfp-detail-persons{display:grid;gap:8px;margin:8px 0 18px;padding:0;list-style:none}.bfp-detail-persons li{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--bfp-line);border-radius:14px;padding:10px 12px}.bfp-detail-info-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bfp-moderator-dashboard-extended{grid-template-columns:repeat(5,minmax(0,1fr))}.bfp-age-stat strong{font-size:1.7rem}.bfp-room-filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.bfp-room-filters button,.bfp-room-filters select{border:1px solid var(--bfp-line);border-radius:999px;background:var(--bfp-card);color:var(--bfp-ink);font:inherit;font-weight:800;padding:.7rem 1rem;min-height:44px}.bfp-room-filters button.is-active,.bfp-room-filters button:hover{background:var(--bfp-primary);color:#fff}.bfp-room-extra[hidden]{display:none!important}.bfp-room-extra{opacity:.85;font-size:.76rem}.bfp-contrast .bfp-icon-btn,body.bfp-contrast .bfp-icon-btn,.bfp-contrast .bfp-dialog-box,body.bfp-contrast .bfp-dialog-box,.bfp-contrast .bfp-room-filters button,body.bfp-contrast .bfp-room-filters button,.bfp-contrast .bfp-room-filters select,body.bfp-contrast .bfp-room-filters select{background:#071c25;color:#fff;border-color:rgba(255,255,255,.18)}.bfp-contrast .bfp-dialog-grid>div,body.bfp-contrast .bfp-dialog-grid>div,.bfp-contrast .bfp-detail-info-list>div,body.bfp-contrast .bfp-detail-info-list>div{background:#103344;border-color:rgba(255,255,255,.14)}
@media(max-width:1100px){.bfp-moderator-dashboard-extended{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.bfp-dialog-grid,.bfp-detail-info-list{grid-template-columns:1fr}.bfp-dialog-box{padding:22px 18px;border-radius:22px}.bfp-moderator-dashboard-extended{grid-template-columns:1fr}}

.bfp-person-main,.bfp-person-extra{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:10px}.bfp-person-extra{background:rgba(0,90,122,.045);border:1px solid rgba(0,90,122,.12);border-radius:18px;padding:14px}.bfp-detail-persons small{display:block;color:var(--bfp-muted,#5d7888);margin-top:4px}.bfp-dialog[aria-hidden="true"]{display:none}.bfp-dialog[aria-hidden="false"]{display:block}
body.baptisten-kontrast .bfp-person-extra,.bfp-contrast .bfp-person-extra{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18)}

/* Alpha 17: Mobile containment so wide moderator tables cannot break Elementor/theme footer */
.bfp-theme-page,
.bfp-moderator-page,
.bfp-moderator-section,
.bfp-team-table-wrap,
.bfp-team-table-scroll{
  max-width:100%;
  box-sizing:border-box;
}
.bfp-moderator-page,
.bfp-theme-page{
  overflow-x:clip;
}
.bfp-team-table-scroll{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
}
.bfp-team-table{
  box-sizing:border-box;
}
@media(max-width:700px){
  .bfp-moderator-page{
    width:calc(100% - 20px)!important;
    margin-left:auto;
    margin-right:auto;
    overflow-x:hidden;
  }
  .bfp-moderator-section,
  .bfp-team-table-wrap{
    overflow:hidden;
  }
  .bfp-team-table-scroll{
    overflow-x:visible;
  }
  .bfp-team-table,
  .bfp-team-table-compact{
    min-width:0!important;
    width:100%!important;
    display:block;
    background:transparent;
    border-radius:0;
  }
  .bfp-team-table thead,
  .bfp-team-table-compact thead{
    display:none;
  }
  .bfp-team-table tbody,
  .bfp-team-table tr,
  .bfp-team-table td,
  .bfp-team-table-compact tbody,
  .bfp-team-table-compact tr,
  .bfp-team-table-compact td{
    display:block;
    width:100%;
    box-sizing:border-box;
  }
  .bfp-team-table tr,
  .bfp-team-table-compact tr{
    margin:0 0 14px;
    padding:14px;
    border:1px solid var(--bfp-line);
    border-radius:18px;
    background:var(--bfp-card);
    box-shadow:0 8px 22px rgba(0,52,77,.06);
  }
  .bfp-team-table td,
  .bfp-team-table-compact td{
    border:0!important;
    padding:8px 0!important;
  }
  .bfp-team-table td:empty,
  .bfp-team-table-compact td:empty{
    display:none;
  }
  .bfp-team-table td[data-label]::before,
  .bfp-team-table-compact td[data-label]::before{
    content:attr(data-label);
    display:block;
    margin-bottom:4px;
    color:color-mix(in srgb,var(--bfp-ink),transparent 42%);
    font-size:.78rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
  }
  .bfp-person-lines{
    gap:3px;
  }
  .bfp-contact-icons,
  .bfp-row-actions{
    justify-content:flex-start;
  }
  .bfp-info-icon{
    width:32px;
    height:32px;
  }
}
@supports not (overflow:clip){
  .bfp-moderator-page,
  .bfp-theme-page{overflow-x:hidden;}
}


/* Alpha 19: Mobile moderator/anmeldeliste polish + footer containment */
.bfp-moderator-page,
.bfp-theme-page,
.bfp-team-table-wrap,
.bfp-team-table-scroll{
  min-width:0!important;
}

@media(max-width:700px){
  .bfp-moderator-section .bfp-section-title-row{
    gap:10px;
    margin-bottom:12px;
  }
  .bfp-moderator-section .bfp-section-title-row h2{
    font-size:clamp(1.7rem,8vw,2.35rem);
    line-height:1.05;
  }
  .bfp-team-table-wrap{
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  .bfp-team-table-scroll{
    margin-top:12px!important;
    overflow:visible!important;
  }
  .bfp-team-table-compact tbody{
    display:grid!important;
    gap:12px!important;
  }
  .bfp-team-table-compact tr{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "name count"
      "infos infos"
      "contact contact"
      "details details"
      "password password"
      "actions actions"!important;
    align-items:start!important;
    gap:10px 12px!important;
    margin:0!important;
    padding:16px!important;
    border-radius:22px!important;
    background:linear-gradient(145deg,var(--bfp-card),color-mix(in srgb,var(--bfp-card),var(--bfp-soft) 36%))!important;
    border:1px solid var(--bfp-line)!important;
    box-shadow:0 12px 30px rgba(0,52,77,.08)!important;
    overflow:hidden!important;
  }
  .bfp-team-table-compact td{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
  }
  .bfp-team-table-compact td::before{
    display:none!important;
    content:none!important;
  }
  .bfp-team-table-compact td:nth-child(1){grid-area:name!important;}
  .bfp-team-table-compact td:nth-child(2){grid-area:count!important;align-self:center!important;justify-self:end!important;}
  .bfp-team-table-compact td:nth-child(3){grid-area:infos!important;}
  .bfp-team-table-compact td:nth-child(4){grid-area:contact!important;}
  .bfp-team-table-compact td:nth-child(5){grid-area:details!important;}
  .bfp-team-table-compact td:nth-child(6){grid-area:password!important;}
  .bfp-team-table-compact td:nth-child(7){grid-area:actions!important;}
  .bfp-team-table-compact td:nth-child(1)::after,
  .bfp-team-table-compact td:nth-child(3)::before,
  .bfp-team-table-compact td:nth-child(4)::before,
  .bfp-team-table-compact td:nth-child(7)::before{
    display:block!important;
    font-size:.72rem!important;
    font-weight:900!important;
    text-transform:uppercase!important;
    letter-spacing:.055em!important;
    color:color-mix(in srgb,var(--bfp-ink),transparent 48%)!important;
    margin-bottom:6px!important;
  }
  .bfp-team-table-compact td:nth-child(1)::after{content:"Name"!important;display:none!important;}
  .bfp-team-table-compact td:nth-child(3)::before{content:"Infos"!important;}
  .bfp-team-table-compact td:nth-child(4)::before{content:"Kontakt"!important;}
  .bfp-team-table-compact td:nth-child(7)::before{content:"Aktionen"!important;}
  .bfp-person-lines{
    display:block!important;
    font-size:1.16rem!important;
    line-height:1.35!important;
    font-weight:900!important;
    color:var(--bfp-ink)!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }
  .bfp-person-line{
    display:inline!important;
  }
  .bfp-person-line + .bfp-person-line::before{
    content:" · ";
    color:color-mix(in srgb,var(--bfp-ink),transparent 55%);
    font-weight:700;
  }
  .bfp-age-pill{
    margin-left:.35rem!important;
    vertical-align:middle!important;
  }
  .bfp-count-pill{
    min-width:38px!important;
    height:38px!important;
    font-size:1.05rem!important;
    background:var(--bfp-soft)!important;
  }
  .bfp-team-table-compact td:nth-child(3),
  .bfp-team-table-compact td:nth-child(4),
  .bfp-team-table-compact td:nth-child(7){
    padding-top:10px!important;
    border-top:1px solid color-mix(in srgb,var(--bfp-line),transparent 35%)!important;
  }
  .bfp-team-table-compact td:nth-child(5),
  .bfp-team-table-compact td:nth-child(6){
    display:inline-flex!important;
    width:auto!important;
  }
  .bfp-team-table-compact td:nth-child(5){grid-column:1/2!important;grid-row:auto!important;}
  .bfp-team-table-compact td:nth-child(6){grid-column:2/3!important;grid-row:auto!important;justify-self:end!important;}
  .bfp-contact-icons,
  .bfp-row-actions{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
  }
  .bfp-info-icon,
  .bfp-icon-btn{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    font-size:15px!important;
  }
  .bfp-icon-btn.bfp-password-btn.is-revealed{
    width:auto!important;
    padding:0 12px!important;
  }
}

/* Alpha 19: Elementor footer guard for Freizeitplaner pages only */
@media(max-width:767px){
  body.bfp-has-frontend,
  body.bfp-has-frontend #page,
  body.bfp-has-frontend .site,
  body.bfp-has-frontend .site-content,
  body.bfp-has-frontend main,
  body.bfp-has-frontend .entry-content{
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body.bfp-has-frontend .elementor-location-footer,
  body.bfp-has-frontend footer,
  body.bfp-has-frontend .site-footer{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    clear:both!important;
  }
  body.bfp-has-frontend .elementor-location-footer .elementor-section,
  body.bfp-has-frontend footer .elementor-section{
    width:100%!important;
    max-width:100%!important;
    left:auto!important;
    right:auto!important;
  }
  body.bfp-has-frontend .elementor-location-footer .elementor-container,
  body.bfp-has-frontend footer .elementor-container,
  body.bfp-has-frontend .site-footer .elementor-container{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:16px!important;
  }
  body.bfp-has-frontend .elementor-location-footer .elementor-column,
  body.bfp-has-frontend footer .elementor-column,
  body.bfp-has-frontend .site-footer .elementor-column{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 auto!important;
  }
  body.bfp-has-frontend .elementor-location-footer .elementor-widget-wrap,
  body.bfp-has-frontend footer .elementor-widget-wrap{
    width:100%!important;
    max-width:100%!important;
    justify-content:center!important;
  }
  body.bfp-has-frontend .elementor-location-footer img,
  body.bfp-has-frontend footer img{
    max-width:100%!important;
    height:auto!important;
  }
}

/* Alpha 20: personenbezogene Zusatzabfragen als kompakter, logischer Bereich */
.bfp-person-main{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:14px;
  margin-top:10px;
}
.bfp-person-extra{
  display:block;
  margin-top:14px;
  padding:16px;
  border-radius:20px;
  border:1px solid var(--bfp-line);
  background:linear-gradient(135deg,rgba(0,90,122,.055),rgba(0,168,157,.035));
}
.bfp-extra-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:baseline;
  margin:0 0 12px;
}
.bfp-extra-head strong{
  color:var(--bfp-ink);
  font-weight:900;
}
.bfp-extra-head span{
  color:color-mix(in srgb,var(--bfp-ink),transparent 42%);
  font-size:.9rem;
  font-weight:600;
}
.bfp-extra-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  align-items:start;
}
.bfp-extra-field{
  min-width:0;
}
.bfp-extra-field label{
  margin-top:0;
  line-height:1.25;
}
.bfp-extra-field input,
.bfp-extra-field select{
  min-width:0;
}
.bfp-extra-field--wide{
  grid-column:span 2;
  animation:bfpExtraIn .18s ease-out;
}
.bfp-extra-field[hidden]{
  display:none!important;
}
@keyframes bfpExtraIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:900px){
  .bfp-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bfp-extra-field--wide{grid-column:span 1}
}
@media(max-width:620px){
  .bfp-person-extra{padding:14px;border-radius:18px}
  .bfp-extra-head{display:grid;gap:3px}
  .bfp-extra-grid{grid-template-columns:1fr;gap:10px}
  .bfp-extra-field label{font-size:.96rem}
}
body.baptisten-kontrast .bfp-person-extra,
.bfp-contrast .bfp-person-extra,
body.bfp-contrast .bfp-person-extra{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.18);
}
body.baptisten-kontrast .bfp-extra-head span,
.bfp-contrast .bfp-extra-head span,
body.bfp-contrast .bfp-extra-head span{
  color:rgba(255,255,255,.72);
}

/* Alpha 0.2.0-a3: Zimmerimport-Metadaten */
.bfp-room-mini-badge{display:inline-flex;align-items:center;border-radius:999px;background:rgba(0,151,154,.10);border:1px solid rgba(0,151,154,.25);color:#006d7f;font-size:.72rem;font-weight:700;padding:.16rem .48rem;margin:.18rem .2rem 0 0;line-height:1.3}
.bfp-unavailable-rooms{margin-top:1rem;border:1px solid rgba(0,90,122,.18);border-radius:18px;padding:.8rem 1rem;background:rgba(255,250,240,.65)}
.bfp-unavailable-rooms summary{cursor:pointer;font-weight:800;color:var(--bfp-primary,#005a7a)}
.bfp-unavailable-room{display:flex;gap:.7rem;align-items:center;justify-content:space-between;border-top:1px solid rgba(0,90,122,.12);padding:.5rem 0;font-size:.92rem}
.bfp-unavailable-room:first-of-type{border-top:0}
body.baptisten-kontrast .bfp-room-mini-badge,body.baptisten-contrast .bfp-room-mini-badge,.contrast .bfp-room-mini-badge{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.25)}
body.baptisten-kontrast .bfp-unavailable-rooms,body.baptisten-contrast .bfp-unavailable-rooms,.contrast .bfp-unavailable-rooms{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.18)}

/* v0.2.0-alpha.6 Zimmerplaner-Personenchips */
.bfp-front-person-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}
.bfp-front-person.is-child{border-color:rgba(255,196,0,.55);box-shadow:0 8px 20px rgba(255,196,0,.12)}
.bfp-room-age-pill{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:999px;background:var(--bfp-soft);border:1px solid var(--bfp-line);color:var(--bfp-primary);font-weight:900;font-size:.78rem;padding:.14rem .5rem}
.bfp-room-age-pill.is-child{background:#ffc400;border-color:#ffc400;color:#002b3f;box-shadow:0 4px 10px rgba(255,196,0,.28)}
.bfp-room-person-icons{display:flex;gap:.35rem;flex-wrap:wrap;align-items:center;margin:.1rem 0 .2rem}
.bfp-mini-action,.bfp-mini-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;border:1px solid var(--bfp-line);background:var(--bfp-soft);color:var(--bfp-primary);font-weight:900;font-size:.85rem;line-height:1;text-decoration:none;cursor:pointer;padding:0}
.bfp-mini-action:hover{background:var(--bfp-primary);color:#fff}
.bfp-mini-badge{cursor:help;background:rgba(0,160,150,.10)}
.bfp-mini-badge.is-warn{background:#fff4ce;border-color:#e5c768;color:#6d5300}
.bfp-small-dialog{max-width:520px}.bfp-small-dialog p{font-size:1.05rem;line-height:1.55;margin:1rem 0 0;color:var(--bfp-ink)}
body.bfp-contrast .bfp-mini-action,body.bfp-contrast .bfp-mini-badge,.bfp-contrast .bfp-mini-action,.bfp-contrast .bfp-mini-badge{background:#103344;color:#fff;border-color:rgba(255,255,255,.22)}
@media(max-width:640px){.bfp-front-person-head{align-items:center}.bfp-room-person-icons{gap:.45rem}.bfp-mini-action,.bfp-mini-badge{width:32px;height:32px}.bfp-detail-info-list{grid-template-columns:1fr!important}}


/* v0.2.0-alpha.7: Modale immer sauber center/center, auch mobil und im Admin-Kontext */
.bfp-modal,
.bfp-dialog,
.bfp-dialog[aria-hidden="false"]{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  display:none;
  align-items:center!important;
  justify-content:center!important;
  padding:clamp(14px,3vw,28px)!important;
  box-sizing:border-box!important;
}
.bfp-modal.is-open,
.bfp-dialog.is-open,
.bfp-dialog[aria-hidden="false"]{
  display:flex!important;
}
.bfp-modal[aria-hidden="true"],
.bfp-dialog[aria-hidden="true"]{
  display:none!important;
}
.bfp-modal-backdrop,
.bfp-dialog-backdrop{
  position:absolute!important;
  inset:0!important;
}
.bfp-modal-dialog,
.bfp-dialog-box{
  position:relative!important;
  margin:auto!important;
  width:min(100%,760px)!important;
  max-width:calc(100vw - 28px)!important;
  max-height:min(84vh,calc(100dvh - 28px))!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  transform:none!important;
}
.bfp-modal-dialog{
  width:min(100%,520px)!important;
}
.bfp-small-dialog{
  width:min(100%,520px)!important;
}
body.bfp-modal-open,
body.bfp-dialog-open{
  overflow:hidden!important;
}
@media(max-width:640px){
  .bfp-modal,
  .bfp-dialog,
  .bfp-dialog[aria-hidden="false"]{
    padding:14px!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .bfp-modal-dialog,
  .bfp-dialog-box{
    width:100%!important;
    max-width:calc(100vw - 28px)!important;
    max-height:calc(100dvh - 28px)!important;
    border-radius:22px!important;
    padding:22px 18px!important;
  }
}

/* Alpha 0.2.0-alpha.9: Elementor container-footer fix scoped to Freizeitplaner pages */
@media(max-width:767px){
  body.bfp-has-frontend .elementor-location-footer .e-con,
  body.bfp-has-frontend footer .e-con,
  body.bfp-has-frontend .site-footer .e-con{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.bfp-has-frontend .elementor-location-footer .elementor-element-1361cbe7,
  body.bfp-has-frontend footer .elementor-element-1361cbe7,
  body.bfp-has-frontend .site-footer .elementor-element-1361cbe7{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    max-width:100%!important;
    gap:16px!important;
  }
  body.bfp-has-frontend .elementor-location-footer .elementor-element-1216a3eb,
  body.bfp-has-frontend footer .elementor-element-1216a3eb,
  body.bfp-has-frontend .site-footer .elementor-element-1216a3eb{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:14px!important;
  }
  body.bfp-has-frontend .elementor-location-footer .bt-site-logo-widget,
  body.bfp-has-frontend footer .bt-site-logo-widget,
  body.bfp-has-frontend .site-footer .bt-site-logo-widget{
    width:100%!important;
    max-width:390px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.bfp-has-frontend .elementor-location-footer .bt-official-name,
  body.bfp-has-frontend footer .bt-official-name,
  body.bfp-has-frontend .site-footer .bt-official-name{
    display:block!important;
    width:100%!important;
    max-width:390px!important;
    margin:0 auto!important;
    text-align:left!important;
  }
  body.bfp-has-frontend .elementor-location-footer .bt-official-name span,
  body.bfp-has-frontend footer .bt-official-name span,
  body.bfp-has-frontend .site-footer .bt-official-name span{
    display:block!important;
  }
}
