#mrplan-widget-background,#mrplan-results-source{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.booking-calendar-panel{display:none}.booking-calendar-panel.is-open{display:block}.booking-calendar-panel.is-invalid-hover{box-shadow:0 12px 30px color-mix(in srgb,#c95a5a 24%,transparent)}.booking-calendar-panel.is-hover-shaking{animation:booking-hover-shake .3s ease-in-out}.booking-calendar-month{padding:.6rem!important}.booking-calendar-month h3{margin-bottom:.45rem!important;font-size:.93rem}.booking-calendar-week,.booking-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.2rem}.booking-calendar-week span{text-align:center;color:color-mix(in srgb,var(--color-primary) 72%,transparent);font-size:.68rem;font-weight:600}.booking-day-empty{height:1.65rem}.booking-day-btn{height:1.65rem;border:1px solid color-mix(in srgb,var(--color-primary) 18%,transparent);background:var(--color-background);color:var(--color-primary);cursor:pointer;font-size:.76rem;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.booking-day-btn:hover{background:color-mix(in srgb,var(--color-secondary) 32%,var(--color-background));border-color:color-mix(in srgb,var(--color-primary) 34%,transparent)}.booking-day-btn.is-preview-valid,.booking-day-btn.is-preview-valid:hover{background:color-mix(in srgb,var(--color-secondary) 56%,var(--color-background));border-color:color-mix(in srgb,var(--color-primary) 28%,transparent);color:var(--color-primary)}.booking-day-btn.is-preview-invalid,.booking-day-btn.is-preview-invalid:hover{background:color-mix(in srgb,#e47777 70%,var(--color-background) 30%);border-color:color-mix(in srgb,#c95a5a 65%,transparent);color:#fff}.booking-day-btn.is-between{background:color-mix(in srgb,var(--color-secondary) 56%,var(--color-background));border-color:color-mix(in srgb,var(--color-primary) 28%,transparent)}.booking-day-btn.is-edge{background:var(--color-primary);color:var(--color-accent);border-color:var(--color-primary)}.booking-day-btn.is-disabled,.booking-day-btn:disabled{opacity:.45;cursor:not-allowed;background:color-mix(in srgb,var(--color-accent) 40%,var(--color-background))}.booking-day-btn.is-blocked,.booking-day-btn.is-blocked:disabled{opacity:1;background:color-mix(in srgb,#e47777 70%,var(--color-background) 30%);color:#fff;border-color:color-mix(in srgb,#c95a5a 65%,transparent)}@keyframes booking-hover-shake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}50%{transform:translate(2px)}75%{transform:translate(-2px)}}.booking-results-alert{margin-bottom:1rem}.booking-results-alert-card{border:1px solid color-mix(in srgb,var(--color-primary) 20%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--color-secondary) 24%,var(--color-background)),color-mix(in srgb,var(--color-accent) 35%,var(--color-background)));color:color-mix(in srgb,var(--color-text) 80%,var(--color-primary) 20%);padding:1rem;box-shadow:0 8px 22px color-mix(in srgb,var(--color-primary) 12%,transparent)}.booking-results-alert-head{display:flex;align-items:center;gap:.75rem;margin-bottom:.7rem;flex-wrap:wrap}.booking-results-alert-badge{font-size:.75rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--color-accent);background:var(--color-primary);padding:.2rem .45rem}.booking-results-alert-head h3{margin:0;color:var(--color-primary);font-family:var(--font-buenard),serif;font-size:1.35rem;line-height:1.1}.booking-results-alert-intro{margin:0 0 .9rem;color:color-mix(in srgb,var(--color-text) 76%,var(--color-primary) 24%)}.booking-results-alert-ranges{display:grid;gap:.6rem;margin-bottom:.85rem}.booking-results-alert-range{border:1px solid color-mix(in srgb,var(--color-primary) 16%,transparent);background:color-mix(in srgb,var(--color-background) 82%,var(--color-accent) 18%);padding:.6rem .75rem;display:grid;gap:.15rem}.booking-results-alert-range span{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:color-mix(in srgb,var(--color-primary) 68%,transparent);font-weight:600}.booking-results-alert-range strong{color:var(--color-primary);font-size:1rem}.booking-results-alert-foot{margin:0;font-size:.92rem;color:color-mix(in srgb,var(--color-text) 72%,var(--color-primary) 28%)}.booking-results-empty{border:1px solid color-mix(in srgb,var(--color-primary) 18%,transparent);background:color-mix(in srgb,var(--color-background) 95%,var(--color-accent) 5%);color:var(--color-primary);padding:1rem;display:flex;align-items:center;gap:.55rem}.booking-results-empty-loading-icon{display:none}.booking-results-empty.is-loading{background:color-mix(in srgb,var(--color-accent) 20%,var(--color-background));border-color:color-mix(in srgb,var(--color-primary) 24%,transparent);font-weight:600}.booking-results-empty.is-loading .booking-results-empty-loading-icon{display:inline-flex}.booking-result-card{border:1px solid color-mix(in srgb,var(--color-primary) 20%,transparent);background:var(--color-background);overflow:hidden}.booking-result-header{display:grid;grid-template-columns:minmax(220px,34%) 1fr;background:var(--color-primary)}.booking-result-header img{width:100%;height:100%;min-height:190px;object-fit:cover}.booking-result-header-content{padding:1rem;color:var(--color-accent);display:flex;flex-direction:column;gap:.5rem}.booking-result-header-content h3{margin:0;font-size:1.4rem;line-height:1.2;font-weight:700}.booking-result-subtitle{margin:0;color:var(--color-secondary);font-size:.9rem;font-weight:600}.booking-result-description{margin:0;color:color-mix(in srgb,var(--color-accent) 86%,black 14%);line-height:1.45;font-size:.92rem}.booking-result-options{display:grid;gap:.45rem;padding:.7rem;background:color-mix(in srgb,var(--color-accent) 24%,var(--color-background))}.booking-option-row{display:grid;grid-template-columns:1fr auto auto;gap:.7rem;align-items:center;border:1px solid color-mix(in srgb,var(--color-primary) 18%,transparent);background:var(--color-background);padding:.55rem .65rem}.booking-option-main h4{margin:0;color:var(--color-primary);font-size:1rem;font-weight:600}.booking-option-main p{margin:.2rem 0 0;color:color-mix(in srgb,var(--color-text) 78%,var(--color-primary) 22%);font-size:.86rem}.booking-option-price{text-align:right}.booking-option-price span{display:block;color:color-mix(in srgb,var(--color-primary) 78%,transparent);font-size:.9rem}.booking-option-price strong{display:block;color:var(--color-primary);font-size:1.35rem;line-height:1.1}.booking-option-reserve{min-height:2.5rem;border:0;background:var(--color-primary);color:var(--color-accent);padding:0 1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.booking-option-reserve:hover{background:var(--color-darkprimary)}#booking-results-section.hidden,#booking-results-alert.hidden,#booking-results-empty.hidden{display:none}@media(max-width:980px){.booking-result-header{grid-template-columns:1fr}.booking-option-row{grid-template-columns:1fr;gap:.45rem}.booking-option-price{text-align:left}}
