.book-now-btn.disabled{background-color:#ccc;color:#888;cursor:not-allowed;opacity:.6;pointer-events:none}.bbwn-booking-form h1{font-size:30px;font-weight:600;text-align:center}.booking-form-header{background-color:#f0f8ff;padding:30px 20px;text-align:center;border-radius:8px;margin-bottom:30px;box-shadow:0 2px 8px rgb(0 0 0 / .1)}.booking-form-title{margin:0;font-size:32px;color:#0073aa;font-weight:700}.bbwn-booking-form label{font-size:15px;font-weight:900}.bbwn-booking-form-container{border:1px solid #ddd;border-radius:8px;background:#fff;width:100%;max-width:100%;box-shadow:0 2px 8px rgb(0 0 0 / .1)}.bbwn-booking-form-container h3,.bbwn-booking-form-container label{font-weight:600;margin-bottom:8px;display:block;color:#000}.bbwn-booking-form-container .price{font-size:24px;font-weight:700;margin-bottom:20px}.booking-field{margin-bottom:20px;box-shadow:0 2px 8px rgb(0 0 0 / .1);padding:20px;border-radius:8px;margin-left:10px;margin-right:10px}.booking-field input,.booking-field input,.booking-field select{max-width:100%;width:100%;padding:10px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px}.date-input-group{display:flex;flex-direction:column;flex-wrap:wrap;gap:1rem;width:100%}.booking-field .duration-display{padding:9px 12px;border:1px solid #ccc;border-radius:4px;font-size:12px;cursor:not-allowed}.time-display-item strong{font-size:15px}.book-now-btn{width:100%;background-color:#c87f32;color:#fff;border:none;padding:12px;font-size:16px;font-weight:700;border-radius:4px;cursor:pointer;transition:background-color 0.3s ease}.book-now-btn:hover{background-color:#a96928}textarea{width:100%;padding:10px 12px;border:1px solid #ccc;border-radius:4px;resize:vertical}.flatpickr-input[readonly]{background:#f2f2f2;cursor:pointer}.flatpickr-input{padding:10px 12px!important;border-radius:4px!important}.booking-time-display div{display:flex;flex-direction:row;align-items:center;align-content:center;gap:1rem;margin-bottom:10px}.booking-time-display div p{font-weight:500;margin:0;display:block;color:#000}.booking-total{display:flex;flex-direction:row;justify-content:space-between;align-items:center;align-content:center;margin-bottom:20px}.booking-total span{font-weight:700}.resources-list,.people-options,.included-services,.additional-services{display:flex;flex-wrap:wrap;gap:10px}.resource-item,.service-item{background-color:#f0faff;padding:6px 12px;border-radius:6px;font-size:14px;color:#036;background:rgb(173 216 230 / .6);padding:10px 15px;border-radius:8px;box-shadow:0 2px 6px rgb(0 0 0 / .05);font-weight:600}.person-type{display:flex;align-items:center;gap:10px;background-color:#f2f2f2;padding:8px 12px;border-radius:6px;width:100%}.person-type label{flex:1;font-size:14px}.person-type input[type="number"]{width:60px;padding:5px;border:1px solid #ccc;border-radius:4px}.person-price,.service-price{color:green;font-size:14px;font-weight:500}.service-option{display:flex;align-items:center;gap:10px;background-color:#f2f2f2;padding:8px 12px;border-radius:6px;font-size:14px;width:100%}.service-option input[type="checkbox"]{transform:scale(1.2)}.additional-services input{width:auto}.service-option{display:flex;flex-direction:row;align-items:center;gap:20px}.service-option input:focus{border:unset;outline:unset}.time-display-item span{background-color:#f0faff;padding:8px 12px;border-radius:6px;font-size:14px}.booking-field label{font-weight:500!important}.loader-dots{display:flex;justify-content:center;align-items:center;gap:6px;height:50px}.loader-dots span{width:10px;height:10px;background-color:#3498db;border-radius:50%;animation:bounce 0.6s infinite alternate}.loader-dots span:nth-child(2){animation-delay:0.2s}.loader-dots span:nth-child(3){animation-delay:0.4s}@keyframes bounce{from{transform:translateY(0);opacity:1}to{transform:translateY(-10px);opacity:.5}}.time-slots-container{margin-top:20px;display:none;display:flex;gap:1rem;flex-wrap:wrap}.time-slots-title{margin-top:20px;font-weight:600;margin-bottom:10px}.time-slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-top:10px}.time-slot{padding:8px 12px;border:1px solid #ddd;border-radius:4px;text-align:center;cursor:pointer;transition:all 0.2s ease;width:235px;font-size:14px;font-weight:700;color:#0073aa}.time-slot:hover{background-color:#f0f0f0}.time-slot.selected{background-color:#c87f32;color:#fff;border-color:#a96928}.time-slot.disabled{opacity:.5;cursor:not-allowed;background-color:#f5f5f5}.time-slots-container p{display:flex;width:100%;color:red}.booking-info-box{color:#036;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;display:flex;flex-wrap:wrap;flex-direction:column;gap:18px;font-size:14px}.booking-info-box div{background:rgb(173 216 230 / .6);padding:10px 15px;border-radius:8px;box-shadow:0 2px 6px rgb(0 0 0 / .05)}.booking-info-box div strong{margin-right:6px;font-weight:600}.check-in-out-time{display:flex;flex-direction:row;align-items:center;gap:20px}.notice{margin-bottom:20px}.resource-tooltip{display:inline-block;margin-left:6px;background-color:#fff;color:#3498db;border-radius:50%;width:18px;height:18px;text-align:center;font-size:12px;line-height:18px;cursor:pointer;position:relative}.tooltip-text{visibility:hidden;opacity:0;width:200px;color:#fff;background:#333;padding:10px 15px;text-align:left;border-radius:4px;padding:8px;position:absolute;bottom:200%;left:50%;margin-left:-110px;transition:opacity 0.3s;font-size:13px}.tooltip-text::after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#333 #fff0 #fff0 #fff0}.resource-tooltip:hover .tooltip-text{visibility:visible;opacity:1}.service-item{display:block;flex-direction:row;align-content:center;gap:10px}.price-breakdown{font-size:14px;font-weight:800;opacity:0;transform:translateY(50px);transition:all 0.4s ease}.price-breakdown.show{opacity:1;transform:translateY(0)}.price-breakdown div{margin-bottom:10px;line-height:1.7;display:flex;flex-direction:row;gap:15px}#hotel-map{height:300px;margin-top:20px}.open-google-map{font-size:14px;font-weight:700}.open-google-map-button:hover{background-color:#357ae8}.time-slot.booked{background-color:#ccc;color:#666;text-decoration:line-through;cursor:not-allowed;pointer-events:none}.booking-info-box{position:relative}.booking-info-box .close-notice{position:absolute;top:8px;right:10px;background:#fff0;border:none;font-size:18px;cursor:pointer;color:#333}.pricing-rules-info{margin-bottom:20px;box-shadow:0 2px 8px rgb(0 0 0 / .1);padding:20px;border-radius:8px;margin-left:10px;margin-right:10px;animation:slideInFromTop 0.4s ease-out}.pricing-rules-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-size:16px;color:#2c5aa0}.pricing-rules-header .rules-icon{font-size:20px;animation:pulse 2s infinite}.pricing-rules-list{display:flex;flex-direction:column;gap:8px}.pricing-rule-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#fff;border-radius:8px;border-left:4px solid #4a90e2;font-size:14px;box-shadow:0 2px 3px rgb(0 0 0 / .05);transition:transform 0.2s ease,box-shadow 0.2s ease}.pricing-rule-item:hover{transform:translateX(4px);box-shadow:0 4px 8px rgb(0 0 0 / .1)}.pricing-rule-item.discount{border-left-color:#27ae60;background:linear-gradient(to right,#f0fff4 70%,white 100%)}.pricing-rule-item.surcharge{border-left-color:#e74c3c;background:linear-gradient(to right,#fff5f5 0%,white 100%)}.pricing-rule-name{font-weight:600;color:#333;flex:1}.pricing-rule-value{font-weight:700;font-size:15px;margin-left:12px}.pricing-rule-value.discount{color:#27ae60}.pricing-rule-value.surcharge{color:#e74c3c}.price-breakdown .price-icon{margin-right:8px;font-size:16px}#event-slots-container{margin-top:12px;padding:10px 14px;border-radius:6px;background:#f9f9f9;border:1px solid #e0e0e0;font-size:14px}@keyframes slideInFromTop{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}@media screen and (max-width:680px){.person-type{max-width:100%}.booking-info-box div,.resource-item,.service-item{width:100%!important}.pricing-rules-info{padding:12px 16px}.pricing-rule-item{flex-direction:column;align-items:flex-start;gap:6px}.pricing-rule-value{margin-left:0}}