.pbr-front{font:inherit}
/* 1.2.3: Raum-Button exakt auf die Maße des Event-Buttons normieren.
   Astra/Theme-Buttonregeln werden bewusst überschrieben. */
.pbr-front .pbr-open,
.pbr-front button.pbr-open,
.pbr-front .pbr-open:hover,
.pbr-front .pbr-open:focus,
.pbr-front .pbr-open:active{
  -webkit-appearance:none !important;
  appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  height:auto !important;
  min-height:0 !important;
  padding:.55rem .75rem !important;
  margin:0 !important;
  border:1px solid var(--ast-global-color-0,#B23F06) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  font-family:inherit !important;
  font-size:.82rem !important;
  line-height:1.15 !important;
  font-weight:700 !important;
  letter-spacing:normal !important;
  text-transform:none !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  background:var(--ast-global-color-0,#B23F06) !important;
  color:#fff !important;
  box-sizing:border-box !important;
}
.pbr-submit{font:inherit;font-weight:700;border:0;cursor:pointer;padding:.8em 1.25em;background:var(--ast-global-color-0,#B23F06);color:#fff}.pbr-modal[hidden]{display:none!important}.pbr-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:20px}.pbr-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.58)}.pbr-dialog{position:relative;width:min(760px,100%);max-height:90vh;overflow:auto;background:#fff;color:inherit;padding:0;border-radius:10px;box-shadow:0 20px 70px rgba(0,0,0,.24)}.pbr-inner{padding:30px}.pbr-inner h2{margin:0 50px 5px 0}.pbr-room-meta{font-weight:650;margin:.2em 0 .5em}.pbr-room-note{margin:.2em 0 1.4em}.pbr-close{position:absolute;right:14px;top:14px;width:42px;height:42px;border-radius:50%;border:0;background:#fff;box-shadow:0 3px 18px rgba(0,0,0,.15);font-size:26px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#111}.pbr-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pbr-book-form label{display:flex;flex-direction:column;gap:6px;font-weight:650}.pbr-book-form input,.pbr-book-form textarea{font:inherit;width:100%;background:#fff;color:#111;border:1px solid #c9c9c9;padding:11px 12px;border-radius:3px;box-sizing:border-box}.pbr-full{margin-top:16px}.pbr-consent{display:grid!important;grid-template-columns:22px 1fr!important;align-items:start!important;font-weight:400!important;margin:16px 0}.pbr-consent input{width:auto!important;margin-top:4px}.pbr-feedback{min-height:1.4em;margin:8px 0}.pbr-feedback.is-error{color:#a61b1b}.pbr-feedback.is-success{color:#237a35;font-weight:650}.pbr-submit[disabled]{opacity:.6;cursor:wait}@media(max-width:620px){.pbr-modal{padding:12px}.pbr-inner{padding:24px 18px}.pbr-form-grid{grid-template-columns:1fr}.pbr-dialog{max-height:92vh}}

/* Frontend-Buchungskalender */
.pbr-date-section{margin:22px 0 20px}.pbr-date-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:12px}.pbr-date-head>div:first-child{display:flex;flex-direction:column;gap:2px}.pbr-date-head span{font-size:.92em;font-weight:400;opacity:.72}.pbr-date-summary{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-weight:700}.pbr-calendar{border:1px solid #ddd;background:#fff;padding:14px;border-radius:6px}.pbr-calendar-toolbar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:6px;margin-bottom:10px}.pbr-calendar-toolbar strong{text-align:center}.pbr-cal-nav{width:44px;height:44px;border:1px solid #ddd;background:#fff;color:#111;font:inherit;font-size:26px;line-height:1;cursor:pointer;border-radius:4px}.pbr-weekdays,.pbr-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.pbr-weekdays{margin-bottom:5px}.pbr-weekdays span{text-align:center;font-size:12px;font-weight:700;opacity:.65;padding:4px 0}.pbr-day-btn{position:relative;aspect-ratio:1/1;min-height:42px;border:0;background:#f7f7f7;color:#111;font:inherit;font-weight:650;cursor:pointer;border-radius:4px;padding:0;display:flex;align-items:center;justify-content:center}.pbr-day-btn.is-other{opacity:.38}.pbr-day-btn.is-past{opacity:.25;cursor:not-allowed}.pbr-day-btn.is-range{background:#f5dfd3;color:#5e2507}.pbr-day-btn.is-selected,.pbr-day-btn.is-start,.pbr-day-btn.is-end{background:#B23F06!important;color:#fff!important}.pbr-day-btn.has-booking:after{content:'';position:absolute;bottom:5px;width:6px;height:6px;border-radius:50%;background:#F18700}.pbr-day-btn.is-selected.has-booking:after{background:#fff}.pbr-day-btn:focus-visible,.pbr-cal-nav:focus-visible{outline:3px solid rgba(178,63,6,.3);outline-offset:2px}.pbr-cal-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px;font-size:12px;opacity:.75}.pbr-cal-legend span{display:flex;gap:6px;align-items:center}.pbr-cal-legend i{display:inline-block;width:12px;height:12px;border-radius:3px}.pbr-cal-legend i.is-selected{background:#B23F06}.pbr-cal-legend i.has-booking{background:#F18700;border-radius:50%}@media(max-width:620px){.pbr-date-head{align-items:flex-start;flex-direction:column}.pbr-date-summary{font-size:.92em}.pbr-calendar{padding:10px}.pbr-weekdays,.pbr-days{gap:3px}.pbr-day-btn{min-height:38px}}
