.bmp-wrap,.bmp-admin{font-family:Arial,Helvetica,sans-serif}.bmp-admin h1 span{font-size:14px;color:#6b7280}.bmp-admin-help,.bmp-card{background:#fff;border:1px solid #d1d5db;border-radius:12px;padding:14px 18px;margin:16px 0}.bmp-calendar-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.bmp-calendar-nav{display:flex;gap:12px;align-items:center}.bmp-admin-calendar-weekdays,.bmp-admin-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.bmp-admin-calendar-weekdays span{text-align:center;font-weight:700;color:#4b5563}.bmp-admin-calendar-day{display:block;text-decoration:none;color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px;min-height:130px}.bmp-admin-calendar-day:hover{border-color:#2563eb;box-shadow:0 0 0 2px rgba(37,99,235,.15)}.bmp-calendar-empty{background:transparent;border:0}.bmp-calendar-date{display:flex;justify-content:space-between}.bmp-calendar-date strong{font-size:20px}.bmp-calendar-date span{font-size:12px;color:#6b7280}.bmp-calendar-today{outline:2px solid #2563eb}.bmp-calendar-has-bookings{background:#f8fafc}.bmp-cal-mini{font-size:12px;border-left:4px solid #9ca3af;padding:3px 5px;margin-top:5px;border-radius:4px}.bmp-calendar-no-bookings{color:#9ca3af;margin-top:12px}.bmp-slot-editor input,.bmp-slot-editor select{width:100%}.bmp-double-editor td{vertical-align:middle}.bmp-double-editor tr:nth-child(4n+1),.bmp-double-editor tr:nth-child(4n+2){background:#fff}.bmp-double-editor tr:nth-child(4n+3),.bmp-double-editor tr:nth-child(4n+4){background:#f8fafc}.bmp-repeat-box{padding:12px 14px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;margin-top:14px}.bmp-date-picker{display:flex;gap:12px;align-items:end;margin-bottom:14px}

/* Frontend 16:9 Wochenansicht */
.bmp-week-only-169,.bmp-week-only-169 *{box-sizing:border-box}.bmp-week-only-169{width:100%;max-width:none;height:min(100vh,56.25vw);min-height:0;aspect-ratio:16/9;overflow:hidden;margin:0 auto;padding:10px;background:#f4f6f8;color:#1f2933;font-family:Arial,Helvetica,sans-serif;display:grid;grid-template-rows:clamp(54px,7vh,70px) minmax(0,1fr) clamp(18px,2.4vh,26px);gap:clamp(5px,.7vw,9px)}.bmp-week-only-head{display:flex;justify-content:space-between;align-items:center;gap:16px;background:linear-gradient(135deg,#0f172a 0%,#1e3a8a 100%);color:#fff;border:0;border-radius:14px;padding:7px 12px;box-shadow:0 8px 24px rgba(15,23,42,.18)}.bmp-week-title{min-width:0}.bmp-week-title .bmp-kicker{display:block;font-size:clamp(11px,.82vw,14px);text-transform:uppercase;letter-spacing:.12em;font-weight:800;opacity:.78;margin:0 0 3px}.bmp-week-title strong{display:block;font-size:clamp(18px,1.8vw,32px);line-height:1.05;letter-spacing:-.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bmp-week-meta{display:grid;grid-template-columns:minmax(150px,1.3fr) minmax(58px,.55fr) minmax(88px,.75fr);gap:clamp(6px,.7vw,12px);align-items:stretch;flex:0 0 auto}.bmp-week-meta>div{min-width:0;padding:clamp(5px,.55vw,9px) clamp(7px,.75vw,12px);border-radius:clamp(8px,.8vw,12px);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}.bmp-week-meta span{display:block;font-size:clamp(9px,.72vw,12px);line-height:1;text-transform:uppercase;letter-spacing:.08em;font-weight:800;opacity:.72;margin:0 0 3px}.bmp-week-meta b{display:block;text-align:left;font-size:clamp(13px,1.05vw,20px);line-height:1.05;font-weight:900;white-space:nowrap}.bmp-week-only-grid{min-height:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(4px,.55vw,8px);overflow:hidden}.bmp-week-only-day{min-width:0;min-height:0;background:#fff;border:1px solid #d9e2ec;border-radius:clamp(10px,1vw,16px);display:grid;grid-template-rows:clamp(34px,4.5vh,46px) minmax(0,1fr);overflow:hidden;box-shadow:0 6px 18px rgba(15,23,42,.06)}.bmp-week-only-day>header{min-height:0;padding:clamp(4px,.5vw,7px) clamp(6px,.65vw,10px);background:#e9eef5;border-bottom:1px solid #d9e2ec;display:flex;align-items:center;justify-content:space-between;gap:6px}.bmp-week-only-day>header b{font-size:clamp(15px,1.35vw,24px)}.bmp-week-only-day>header span{font-size:clamp(12px,.95vw,18px);opacity:.8}.bmp-week-only-day.is-today{border:2px solid #1d4ed8;box-shadow:0 0 0 2px rgba(29,78,216,.10),0 8px 20px rgba(15,23,42,.08)}.bmp-week-only-day.is-today>header{background:#dbeafe}.bmp-week-only-list{height:100%;min-height:0;overflow:hidden;padding:clamp(5px,.55vw,8px);display:grid;grid-auto-flow:row;grid-auto-rows:minmax(0,1fr);align-content:stretch;gap:clamp(4px,.45vw,7px)}.bmp-week-only-entry{width:100%;height:100%;min-height:0;max-height:none;display:grid;grid-template-columns:clamp(52px,4.7vw,70px) minmax(0,1fr);align-items:stretch;gap:clamp(7px,.75vw,12px);padding:clamp(5px,.52vw,8px) clamp(7px,.7vw,11px);border-radius:clamp(9px,.85vw,13px);border:1px solid #d9e2ec;border-left:clamp(5px,.55vw,8px) solid #3b82f6;background:#f8fafc;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.70),0 2px 8px rgba(15,23,42,.07)}.bmp-week-only-entry .time{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;padding:0 clamp(3px,.3vw,6px);margin-right:clamp(2px,.22vw,5px);background:rgba(255,255,255,.72);border:1px solid rgba(15,23,42,.07);border-radius:clamp(7px,.7vw,10px);font-size:clamp(12px,1vw,17px);line-height:1.02;font-weight:900;letter-spacing:-.02em;text-align:center}.bmp-week-only-entry .time span{display:block;white-space:nowrap}.bmp-week-only-entry .time i{display:block;width:60%;height:1px;background:rgba(15,23,42,.25);margin:1px 0}.bmp-week-only-entry .meta{min-width:0;height:100%;display:flex;flex-direction:column;justify-content:center;gap:clamp(2px,.18vw,4px);padding-left:clamp(1px,.15vw,3px);overflow:hidden}.bmp-week-only-entry .meta strong,.bmp-week-only-entry .meta span,.bmp-week-only-entry .meta small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bmp-week-only-entry .meta strong{font-size:clamp(13px,1.08vw,18px);line-height:1.08;letter-spacing:-.015em}.bmp-week-only-entry .meta span{font-size:clamp(11px,.9vw,15px);line-height:1.08;margin-top:0;opacity:.85}.bmp-week-only-entry .meta small{font-size:clamp(9px,.75vw,12px);line-height:1.05;opacity:.72}.bmp-week-only-entry.bmp-status-frei{background:linear-gradient(135deg,#ecfdf5 0%,#f7fee7 100%);border-left-color:#22c55e}.bmp-week-only-entry.bmp-status-belegt{background:linear-gradient(135deg,#eff6ff 0%,#eef2ff 100%);border-left-color:#3b82f6}.bmp-week-only-entry.bmp-status-abgesagt{background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 100%);border-left-color:#f97316}.bmp-week-only-entry.bmp-status-gesperrt{background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border-left-color:#ef4444}.bmp-week-only-empty{height:100%;min-height:0;display:flex;align-items:center;justify-content:center;text-align:center;color:#7b8794;border:2px dashed #d9e2ec;border-radius:clamp(8px,.9vw,14px);font-size:clamp(13px,1.05vw,19px)}.bmp-week-only-footer{min-height:0;overflow:hidden;text-align:center;color:#52606d;font-size:clamp(11px,.9vw,16px);line-height:clamp(18px,2.3vh,26px)}

/* Viele Termine: kompakt, aber Zeit weiterhin untereinander lesbar */
.bmp-week-only-day.is-dense .bmp-week-only-list,.bmp-week-only-day.is-ultra-dense .bmp-week-only-list,.bmp-week-only-list:has(.bmp-week-only-entry:nth-of-type(11)){gap:clamp(3px,.32vw,5px);padding:clamp(4px,.42vw,7px)}.bmp-week-only-day.is-dense .bmp-week-only-entry,.bmp-week-only-day.is-ultra-dense .bmp-week-only-entry,.bmp-week-only-list:has(.bmp-week-only-entry:nth-of-type(11)) .bmp-week-only-entry{grid-template-columns:clamp(48px,4.1vw,62px) minmax(0,1fr);gap:clamp(5px,.52vw,9px);padding:clamp(3px,.38vw,6px) clamp(5px,.55vw,9px);border-radius:clamp(7px,.72vw,11px);border-left-width:clamp(4px,.48vw,7px);align-items:stretch;box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 1px 5px rgba(15,23,42,.06)}.bmp-week-only-day.is-dense .bmp-week-only-entry .time,.bmp-week-only-day.is-ultra-dense .bmp-week-only-entry .time,.bmp-week-only-list:has(.bmp-week-only-entry:nth-of-type(11)) .bmp-week-only-entry .time{font-size:clamp(10px,.82vw,14px);line-height:1;padding:0 clamp(2px,.24vw,5px);margin-right:clamp(2px,.22vw,5px);border-radius:clamp(6px,.62vw,9px);gap:1px}.bmp-week-only-day.is-dense .bmp-week-only-entry .time i,.bmp-week-only-day.is-ultra-dense .bmp-week-only-entry .time i,.bmp-week-only-list:has(.bmp-week-only-entry:nth-of-type(11)) .bmp-week-only-entry .time i{margin:0;width:50%}.bmp-week-only-day.is-dense .bmp-week-only-entry .meta,.bmp-week-only-day.is-ultra-dense .bmp-week-only-entry .meta,.bmp-week-only-list:has(.bmp-week-only-entry:nth-of-type(11)) .bmp-week-only-entry .meta{gap:1px;justify-content:center;padding-left:2px}.bmp-week-only-day.is-dense .bmp-week-only-entry .meta strong,.bmp-week-only-day.is-ultra-dense .bmp-week-only-entry .meta strong,.bmp-week-only-list:has(.bmp-week-only-entry:nth-of-type(11)) .bmp-week-only-entry .meta strong{font-size:clamp(11px,.92vw,15px);line-height:1.04}.bmp-week-only-day.is-dense .bmp-week-only-entry .meta span,.bmp-week-only-day.is-ultra-dense .bmp-week-only-entry .meta span,.bmp-week-only-list:has(.bmp-week-only-entry:nth-of-type(11)) .bmp-week-only-entry .meta span{display:block;font-size:clamp(9px,.78vw,13px);line-height:1.03;margin:0}.bmp-week-only-day.is-dense .bmp-week-only-entry .meta small,.bmp-week-only-list:has(.bmp-week-only-entry:nth-of-type(11)) .bmp-week-only-entry .meta small{display:block;font-size:clamp(8px,.68vw,11px);line-height:1.02}.bmp-week-only-day.is-ultra-dense .bmp-week-only-entry .meta small{display:none}
@media(max-width:1100px){.bmp-week-only-169{height:auto;min-height:0;aspect-ratio:auto;overflow:visible}.bmp-week-only-head{flex-direction:column;align-items:stretch}.bmp-week-title strong{white-space:normal}.bmp-week-meta{grid-template-columns:1fr 80px 120px}.bmp-week-only-grid{grid-template-columns:1fr;overflow:visible}.bmp-week-only-day{min-height:240px}.bmp-week-only-list{overflow:visible}}@media(max-height:760px){.bmp-week-only-entry{grid-template-columns:clamp(46px,3.9vw,58px) minmax(0,1fr);gap:5px}.bmp-week-only-entry .time{font-size:clamp(10px,.82vw,14px)}.bmp-week-only-entry .meta strong{font-size:clamp(11px,.9vw,15px)}.bmp-week-only-entry .meta span{font-size:clamp(9px,.72vw,12px)}.bmp-week-only-entry .meta small{display:none}}


/* v3.16: Farblegende in der unteren Statuszeile */
.bmp-week-only-footer{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:nowrap !important;
    gap:clamp(10px,1.2vw,22px) !important;
    padding:0 clamp(4px,.45vw,8px) !important;
    white-space:nowrap !important;
}
.bmp-footer-info{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
}
.bmp-color-legend{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    gap:clamp(6px,.65vw,12px);
    font-weight:700;
    color:#334155;
}
.bmp-color-legend>span{
    display:inline-flex;
    align-items:center;
    gap:clamp(3px,.28vw,5px);
}
.bmp-color-legend i{
    display:inline-block;
    width:clamp(8px,.68vw,12px);
    height:clamp(8px,.68vw,12px);
    border-radius:50%;
    border:1px solid rgba(15,23,42,.14);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}
.bmp-color-legend i.is-belegt{background:#3b82f6}
.bmp-color-legend i.is-frei{background:#22c55e}
.bmp-color-legend i.is-abgesagt{background:#f97316}
.bmp-color-legend i.is-gesperrt{background:#ef4444}
@media (max-width:1250px){
  .bmp-week-only-footer{gap:8px !important;font-size:clamp(9px,.78vw,13px) !important}
  .bmp-color-legend{gap:6px}
}
