.booking-modal_modalOverlay___WW55{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--white);z-index:9999;opacity:0;visibility:hidden;transition-property:opacity,visibility;transition-duration:var(--trans-dur);transition-timing-function:var(--trans-func)}.booking-modal_modalOverlay___WW55.booking-modal_open__zrMQO{opacity:1;visibility:visible}.booking-modal_modalContainer__Yiw_z{transition-property:transform;transition-duration:var(--trans-dur);transition-timing-function:var(--trans-func);border-left:1px solid var(--sp-border);position:fixed;top:0;right:0;bottom:0;width:100%;height:100vh;transform:translateX(100%);color:var(--sp-black);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);overflow-y:auto;z-index:20}.booking-modal_modalContainer__Yiw_z.booking-modal_slideIn__so2TF{transform:translateX(0)}.booking-modal_modalHeader__trIhZ{padding:var(--md) var(--lg);display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:10}.booking-modal_modalTitle__OmVbp{font-size:20px;font-weight:300;color:var(--text);margin:0}.booking-modal_closeButton__YBw_q{flex-direction:row;align-items:center;transition-property:background-color;transition-duration:var(--trans-dur);transition-timing-function:var(--trans-func);display:flex;justify-content:center;width:40px;height:40px;border:none;background-color:var(--fade);border-radius:50%;cursor:pointer}.booking-modal_closeButton__YBw_q:hover{background-color:var(--fade)}.booking-modal_modalContent__Bal_N{display:flex;flex-direction:row;align-items:flex-start;justify-content:center;height:calc(100vh - 80px);overflow-y:auto}@media(max-width:768px){.booking-modal_modalContent__Bal_N{flex-direction:column;height:100%}}.booking-modal_formSection__93lFl{padding:var(--xxl);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;flex:1 1;max-width:800px}@media(max-width:768px){.booking-modal_formSection__93lFl{border-right:none;border-bottom:1px solid var(--border);max-width:100%;width:100%}}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3{margin-bottom:20px}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_loadingRooms__uum12{padding:20px;text-align:center;color:var(--text-secondary);font-style:italic}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_noRooms__mB7uh{padding:20px;text-align:center;color:var(--error);background-color:var(--error-bg);border-radius:8px;border:1px solid var(--error-border)}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_selectDates__0SLRC{padding:20px;text-align:center;color:var(--text-secondary);background-color:var(--neutral-bg);border-radius:8px;border:1px solid var(--neutral-border)}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomListLabel__dcfUm{display:block;font-weight:600;color:var(--text-primary);margin-bottom:12px;font-size:14px}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8{display:flex;flex-direction:column;gap:12px}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF{border:1px solid var(--border);display:flex;align-items:center;padding:16px;border-radius:12px;background-color:var(--bg-primary);cursor:pointer;transition:all .2s ease;gap:16px}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF:hover{transform:translateY(-1px)}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF.booking-modal_selected__d2VuP{border-color:var(--success);background-color:var(--success-bg)}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF .booking-modal_roomImage__WjyWz{flex-shrink:0;border-radius:8px;overflow:hidden;width:80px;height:60px}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF .booking-modal_roomImage__WjyWz img{width:100%;height:100%;object-fit:cover}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF .booking-modal_roomInfo__2FgNL{flex:1 1;display:flex;flex-direction:column;gap:4px}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF .booking-modal_roomInfo__2FgNL .booking-modal_roomName__9FVby{font-size:16px;font-weight:600;color:var(--text-primary);margin:0;line-height:1.3}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF .booking-modal_roomInfo__2FgNL .booking-modal_roomPrice__IiBal{font-size:14px;color:var(--text-secondary);margin:0;font-weight:500}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF .booking-modal_roomSelector__EPlsZ{flex-shrink:0}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF .booking-modal_roomSelector__EPlsZ .booking-modal_radioButton__llh0J{width:20px;height:20px;border:2px solid var(--border-medium);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF .booking-modal_roomSelector__EPlsZ .booking-modal_radioButton__llh0J.booking-modal_checked__WIYb8{border-color:var(--primary);background-color:var(--primary)}.booking-modal_formSection__93lFl .booking-modal_roomSelection__eHlc3 .booking-modal_roomListContainer__u_wJZ .booking-modal_roomList__dtGm8 .booking-modal_roomItem__hjqQF .booking-modal_roomSelector__EPlsZ .booking-modal_radioButton__llh0J.booking-modal_checked__WIYb8 .booking-modal_radioInner__DLOo4{width:8px;height:8px;background-color:#fff;border-radius:50%}.booking-modal_formGroup__0IJJo{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--xs);margin-bottom:var(--md)}.booking-modal_formRow__yxd8w{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--md)}.booking-modal_formRow__yxd8w .booking-modal_formGroup__0IJJo{flex:1 1;margin-bottom:0}.booking-modal_pricingSection__EiI8b{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;border:1px solid var(--border);width:100%}@media(max-width:768px){.booking-modal_pricingSection__EiI8b{width:100%}}.booking-modal_stepTitle__K0UU_{font-size:20px;font-weight:600;margin:0 0 var(--md) 0}.booking-modal_pricingTitle__ZP_xr{padding:var(--md) var(--rg);border-bottom:1px solid var(--border);background-color:var(--fade);width:100%;font-weight:600}.booking-modal_step1__OfAYf,.booking-modal_step2__YMCTg,.booking-modal_step3__UZdOl{width:480px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--md)}@media(max-width:768px){.booking-modal_step1__OfAYf,.booking-modal_step2__YMCTg,.booking-modal_step3__UZdOl{width:100%;height:100%}}.booking-modal_inputGroup__bMLsq{display:flex;flex-direction:column;gap:var(--xs)}.booking-modal_inputError__XKQRy{border-color:var(--danger)!important}.booking-modal_inputError__XKQRy:focus{border-color:var(--danger)!important;box-shadow:0 0 0 2px rgba(220,38,38,.1)!important}.booking-modal_errorMessage__7zTBg{color:var(--danger);font-size:12px;font-weight:500;margin-top:4px;display:flex;align-items:center;gap:4px}.booking-modal_dateInputs__ylt3A{display:flex;flex-direction:row;align-items:stretch;justify-content:flex-start;gap:var(--md)}@media(max-width:640px){.booking-modal_dateInputs__ylt3A{flex-direction:column}}.booking-modal_dateField__F7sDp{position:relative;flex:1 1}.booking-modal_calendarDropdown__rzffp{position:absolute;top:100%;left:0;right:0;z-index:20;background-color:var(--white);border:1px solid var(--border);border-radius:var(--md);box-shadow:0 10px 25px rgba(0,0,0,.1)}.booking-modal_guestInputs__fUUt2{display:flex;flex-direction:row;align-items:stretch;justify-content:flex-start;gap:var(--md)}@media(max-width:640px){.booking-modal_guestInputs__fUUt2{flex-direction:column}}.booking-modal_paymentMethods___1C68{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--rg)}.booking-modal_paymentMethod__jbdro{padding:var(--md);border:1px solid var(--border);border-radius:var(--md);transition-property:border-color,background-color;transition-duration:var(--trans-dur);transition-timing-function:var(--trans-func);display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--md);width:100%;cursor:pointer;font-size:var(--fs)}.booking-modal_paymentMethod__jbdro:hover{border-color:var(--prm-bg);background-color:var(--fade)}.booking-modal_paymentMethod__jbdro.booking-modal_selected__d2VuP{border-color:var(--success);background-color:var(--success-bg)}.booking-modal_paymentMethod__jbdro span{font-weight:500;color:var(--text)}.booking-modal_stepActions__S8NF6{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--md);margin-top:var(--lg)}@media(max-width:768px){.booking-modal_stepActions__S8NF6{flex-direction:column}.booking-modal_stepActions__S8NF6 button{width:100%}}.booking-modal_bookingDetails__04w2c{padding:var(--md) var(--lg);border-bottom:1px solid var(--border);width:100%;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--sm)}.booking-modal_detailItem__HvEwS{display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:var(--fs)}.booking-modal_detailItem__HvEwS span:first-child{color:var(--grey-60);font-weight:500}.booking-modal_detailItem__HvEwS span:last-child{color:var(--text);font-weight:600}.booking-modal_priceBreakdown__tB2tc{display:flex;flex-direction:column;width:100%;align-items:stretch;justify-content:flex-start}.booking-modal_priceItem__T_dEd{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:var(--z) var(--lg);padding-top:var(--md);font-size:var(--fs)}.booking-modal_priceItem__T_dEd:last-child{border-bottom:none}.booking-modal_priceItem__T_dEd.booking-modal_total__yMO22{padding:var(--md) var(--lg);background-color:var(--fade);margin-top:var(--sm)}.booking-modal_priceItem__T_dEd.booking-modal_total__yMO22 span{font-size:var(--rg);font-weight:700;color:var(--prm-hover)}.booking-modal_priceItem__T_dEd span:first-child{color:var(--grey-99);font-weight:500}.booking-modal_priceItem__T_dEd span:last-child{color:var(--text);font-weight:600}.booking-modal_voucherSection__kzbWO{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;position:relative;gap:var(--md);margin-top:var(--md)}.booking-modal_voucherSection__kzbWO .booking-modal_applyButton__tj4UQ{position:absolute;right:8px;bottom:6px}.booking-modal_voucherSection__kzbWO .booking-modal_applyButton__tj4UQ button{padding:var(--sm) var(--md);height:36px;border-radius:var(--s6);font-size:var(--fs);background-color:var(--success)!important}.booking-modal_voucherSection__kzbWO>div:first-child{flex:1 1}.booking-modal_voucherSection__kzbWO>button{flex-shrink:0}@media(max-width:640px){.booking-modal_voucherSection__kzbWO{flex-direction:column;align-items:stretch}.booking-modal_voucherSection__kzbWO>div:first-child{flex:none}}@media(max-width:768px){.booking-modal_modalContainer__Yiw_z{width:100%}.booking-modal_modalHeader__trIhZ{padding:var(--md) var(--lg);z-index:900;background-color:var(--white)}.booking-modal_formSection__93lFl,.booking-modal_pricingSection__EiI8b{padding:var(--lg)}.booking-modal_pricingSection__EiI8b{padding:0}.booking-modal_modalTitle__OmVbp{font-size:var(--lg)}.booking-modal_pricingTitle__ZP_xr,.booking-modal_stepTitle__K0UU_{font-size:var(--fs)}}@keyframes booking-modal_slideInFromRight__GNrSV{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes booking-modal_slideOutToRight__rNhQ3{0%{transform:translateX(0)}to{transform:translateX(100%)}}.booking-modal_bankTransferDetails__yfUvz{padding:var(--md);border:1px solid var(--border);border-radius:var(--md);background-color:var(--fade);margin-top:var(--md);width:100%}.booking-modal_bankTransferTitle__WchMO{font-size:var(--md);font-weight:600;color:var(--text);margin:0 0 var(--md) 0}.booking-modal_accountNumbers__pteOv{display:flex;flex-direction:column;gap:var(--md)}.booking-modal_accountItem__9oIt3{padding:var(--md);border:1px solid var(--border);border-radius:var(--sm);background-color:var(--white);display:flex;flex-direction:column;gap:var(--sm)}.booking-modal_bankName__de8bb{font-size:var(--md);font-weight:600;color:var(--prm-hover);margin-bottom:var(--xs)}.booking-modal_accountHolder__lP2xQ,.booking-modal_accountNumber__WTOUA{display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:var(--fs)}.booking-modal_accountHolder__lP2xQ .booking-modal_label__pNJr_,.booking-modal_accountNumber__WTOUA .booking-modal_label__pNJr_{color:var(--grey-60);font-weight:500}.booking-modal_accountHolder__lP2xQ .booking-modal_value__xlaZL,.booking-modal_accountNumber__WTOUA .booking-modal_value__xlaZL{color:var(--text);font-weight:600;font-family:monospace}.booking-modal_loadingAccount__GoaYC,.booking-modal_noAccountNumbers__5_0QD{padding:var(--md);text-align:center;color:var(--grey-60);font-style:italic}