.sb-booking-widget,.sb-inquiry-form{width:100%}
.sb-calendars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}
.ng-berzas-booking .sb-calendars,.ng-home-reservation-widget .sb-calendars,.ng-room-reservation-widget .sb-calendars{grid-template-columns:1fr;margin-bottom:0}
.sb-calendar{background:#fff;border:1px solid #e2dfd6;border-radius:18px;padding:16px;color:#243128;box-shadow:0 12px 30px rgba(31,40,28,.08)}
.sb-cal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.sb-cal-head strong{font-size:15px;font-weight:800}
.sb-cal-nav{border:0;background:#edf2e7;border-radius:99px;width:34px;height:34px;cursor:pointer;font-size:22px;color:#243128}
.sb-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}
.sb-cal-grid span{min-height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#f7f4ec;font-weight:650;transition:background .18s ease,color .18s ease,transform .18s ease}
.sb-cal-week span{background:transparent;color:#667067;min-height:24px;font-size:13px}
.sb-cal-grid span.free{background:#edf2e7;color:#496133;cursor:pointer}
.sb-cal-grid span.free:hover{background:#dfe9d5;transform:translateY(-1px)}
.sb-cal-grid span.busy{background:#f1d4cd;color:#8c2c1e;text-decoration:line-through;cursor:not-allowed;opacity:.9}
.sb-cal-grid span.selected{background:#496133!important;color:#fff!important;text-decoration:none;box-shadow:0 0 0 2px rgba(73,97,51,.18)}
.sb-cal-grid span.in-range{background:#dfe9d5;color:#496133}
.sb-cal-legend{margin-top:12px;color:#667067;font-size:14px}
.free-dot,.busy-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-left:12px;margin-right:5px}
.free-dot{background:#6f8b52}.busy-dot{background:#c45a4a}
.sb-booking-form,.sb-inquiry-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;background:#fff;border:1px solid #e2dfd6;border-radius:18px;padding:20px;color:#243128;box-shadow:0 12px 30px rgba(31,40,28,.08)}
.sb-booking-form label,.sb-inquiry-form label{display:flex;flex-direction:column;font-weight:700;gap:7px}
.sb-booking-form input,.sb-booking-form select,.sb-booking-form textarea,.sb-inquiry-form input,.sb-inquiry-form textarea{
  width:100%;border:1px solid #d8d3c8;border-radius:12px;padding:12px 13px;font:inherit;background:#fff;color:#243128
}
.sb-booking-form textarea,.sb-inquiry-form textarea,.sb-price-summary,.sb-check,.sb-submit,.sb-form-result{grid-column:1/-1}
.sb-price-summary{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;border:1px solid #e2dfd6;border-radius:14px;background:#f7f4ec;padding:13px 15px;color:#243128;font-weight:650}
.sb-price-summary strong{font-size:18px;color:#496133}
.sb-price-summary span{display:inline-flex;align-items:center;gap:4px}
.sb-price-summary.is-loading{opacity:.72}
.sb-check{flex-direction:row!important;align-items:center;font-weight:600!important}
.sb-check input{width:auto}
.sb-check a{text-decoration:underline;text-underline-offset:3px}
.sb-submit{border:0;background:#363636;color:#fff;border-radius:12px;padding:14px 22px;font-weight:800;cursor:pointer}
.sb-submit:hover{background:#496133}
.sb-form-result{font-weight:700}
.sb-rules-modal{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:22px}
.sb-rules-box{background:#fff;color:#243128;border-radius:22px;max-width:760px;max-height:85vh;overflow:auto;padding:28px;position:relative}
.sb-rules-close{position:absolute;right:15px;top:10px;border:0;background:transparent;font-size:32px;cursor:pointer}
@media(max-width:820px){.sb-calendars,.sb-booking-form,.sb-inquiry-form{grid-template-columns:1fr}.sb-cal-grid span{min-height:34px;font-size:14px}}
