.hotel-page[data-v-5bc044ac]{background-color:#f8f9fc;min-height:100vh;padding-bottom:.64rem}.section-title[data-v-5bc044ac]{margin:.53333rem .42667rem .32rem;display:flex;align-items:center;font-size:.42667rem;font-weight:600;color:#1e293b}.section-title .section-icon[data-v-5bc044ac]{margin-right:.21333rem;font-size:.48rem;color:#333}.hotel-card[data-v-5bc044ac]{display:flex;background:#fff;padding:.42667rem;margin:.42667rem;border-radius:.21333rem;transition:all .3s ease;overflow:hidden}.hotel-card .hotel-image[data-v-5bc044ac]{width:2.66667rem;height:2.66667rem;object-fit:cover;border-radius:.21333rem;margin-right:.42667rem}.hotel-card .hotel-info[data-v-5bc044ac]{flex:1}.hotel-card .hotel-info .hotel-name[data-v-5bc044ac]{font-size:.48rem;font-weight:600;color:#1e293b;margin-bottom:.21333rem}.hotel-card .hotel-info .hotel-rating[data-v-5bc044ac]{font-size:.37333rem;color:#f59e0b;margin-bottom:.21333rem;display:flex;align-items:center}.hotel-card .hotel-info .hotel-rating .stars[data-v-5bc044ac]{display:flex;margin-right:.21333rem}.hotel-card .hotel-info .hotel-rating .star-icon[data-v-5bc044ac]{font-size:.37333rem;color:#d1d5db}.hotel-card .hotel-info .hotel-rating .star-icon.filled[data-v-5bc044ac]{color:#f59e0b}.hotel-card .hotel-info .hotel-rating .rating[data-v-5bc044ac]{font-weight:700;margin-right:.10667rem}.hotel-card .hotel-info .hotel-location[data-v-5bc044ac]{font-size:.37333rem;color:#64748b;margin-bottom:.21333rem;display:flex;align-items:center}.hotel-card .hotel-info .hotel-location .location-icon[data-v-5bc044ac]{font-size:.37333rem;margin-right:.16rem;color:#333}.hotel-card .hotel-info .hotel-amenities[data-v-5bc044ac]{font-size:.37333rem;color:#64748b;display:flex;align-items:center}.hotel-card .hotel-info .hotel-amenities .amenities-icon[data-v-5bc044ac]{font-size:.37333rem;margin-right:.16rem;color:#333}.hotel-description[data-v-5bc044ac]{margin:.42667rem;padding:.42667rem;background:#fff;border-radius:.21333rem;line-height:1.6;color:#64748b}.hotel-description .description-header[data-v-5bc044ac]{display:flex;align-items:center;margin-bottom:.32rem;font-size:.42667rem;font-weight:600;color:#1e293b}.hotel-description .description-header .description-icon[data-v-5bc044ac]{margin-right:.21333rem;font-size:.48rem;color:#333}.hotel-description .description-text[data-v-5bc044ac]{margin:0;font-size:.37333rem;line-height:1.6}.hotel-description .view-more[data-v-5bc044ac]{display:flex;align-items:center;justify-content:center;margin-top:.21333rem;color:#333;font-size:.37333rem;font-weight:500;cursor:pointer;transition:all .2s ease}.hotel-description .view-more .van-icon[data-v-5bc044ac]{margin-left:.10667rem;transition:transform .2s ease}.popup-content[data-v-5bc044ac]{padding:.53333rem;height:100%;overflow-y:auto;display:flex;flex-direction:column}.popup-content .popup-title[data-v-5bc044ac]{text-align:center;margin-top:0;margin-bottom:.53333rem;font-size:.48rem;color:#1e293b;font-weight:600;position:relative}.popup-content .popup-title[data-v-5bc044ac]:after{content:"";position:absolute;bottom:-.26667rem;left:50%;transform:translateX(-50%);width:1.06667rem;height:.08rem;background:#333;border-radius:.08rem}.popup-content .popup-body[data-v-5bc044ac]{flex:1;overflow-y:auto;padding:.26667rem 0;font-size:.4rem;line-height:1.8;color:#334155}.popup-content .popup-body p[data-v-5bc044ac]{margin-top:0}.selected-room[data-v-5bc044ac]{margin:.42667rem;padding:.42667rem;background:#fff;border-radius:.21333rem}.booking-info[data-v-5bc044ac]{background-color:#f1f5f9;padding:.32rem;border-radius:.21333rem;margin-bottom:.42667rem}.booking-info p[data-v-5bc044ac]{margin:.21333rem 0;color:#334155;font-size:.37333rem}.room-quantity[data-v-5bc044ac]{margin:.42667rem 0;display:flex;align-items:center}.room-quantity label[data-v-5bc044ac]{color:#334155;font-size:.37333rem}.quantity-control[data-v-5bc044ac]{display:flex;align-items:center;margin-left:.26667rem}.quantity-btn[data-v-5bc044ac]{width:.85333rem;height:.85333rem;border:1px solid #ddd;background-color:#f8f9fa;border-radius:.10667rem;font-size:.42667rem;cursor:pointer;color:var(--primary-color);transition:all .3s ease}.quantity-btn[data-v-5bc044ac]:hover{background-color:#e9ecef}.quantity-btn[data-v-5bc044ac]:active{transform:scale(.95)}.quantity-input[data-v-5bc044ac]{width:1.33333rem;padding:.21333rem;border:1px solid #ddd;border-radius:.10667rem;margin:0 .21333rem;box-sizing:border-box;text-align:center;-moz-appearance:textfield}.quantity-input[data-v-5bc044ac]:focus{border-color:var(--primary-color);outline:none}.quantity-input[data-v-5bc044ac]::-webkit-inner-spin-button,.quantity-input[data-v-5bc044ac]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.contact-info[data-v-5bc044ac]{margin:.64rem 0 .42667rem;position:relative;padding-top:.26667rem}.contact-info .contact-info-title[data-v-5bc044ac]{display:flex;align-items:center;margin-bottom:.32rem}.contact-info .contact-icon[data-v-5bc044ac]{font-size:.42667rem;color:var(--primary-color)}.contact-info h3[data-v-5bc044ac]{font-size:.42667rem;color:#1e293b;padding-left:.10667rem}.contact-info input[data-v-5bc044ac]{box-sizing:border-box;width:100%}.phone-input[data-v-5bc044ac]{width:100%;padding:.26667rem .32rem;border:1px solid #ddd;border-radius:.21333rem;font-size:.37333rem;transition:all .3s ease}.phone-input[data-v-5bc044ac]::placeholder{color:#94a3b8}.guest-info[data-v-5bc044ac]{margin-top:.64rem;padding:.42667rem;background:#f8f9fb;border-radius:.21333rem;position:relative}.guest-info input[data-v-5bc044ac]{box-sizing:border-box;width:100%}.guest-info .guest-icon[data-v-5bc044ac]{position:absolute;top:.42667rem;left:.42667rem;font-size:.42667rem;color:var(--primary-color)}.guest-info h3[data-v-5bc044ac]{font-size:.42667rem;color:#1e293b;margin-bottom:.32rem;padding-left:.64rem}.name-input[data-v-5bc044ac]{width:100%;padding:.26667rem .32rem;border:1px solid #ddd;border-radius:.21333rem;font-size:.37333rem;transition:all .3s ease}.name-input[data-v-5bc044ac]:focus{border-color:var(--primary-color);outline:none}.name-input[data-v-5bc044ac]::placeholder{color:#94a3b8}.booking-button[data-v-5bc044ac]{display:block;width:calc(100% - .85333rem);margin:.64rem .42667rem;padding:.37333rem 0;font-size:.42667rem;font-weight:500;color:#fff;background:var(--primary-color);border:none;border-radius:.21333rem;cursor:pointer;transition:all .3s ease}.date-range-selector[data-v-5bc044ac]{display:flex;align-items:center;justify-content:space-between;margin:.42667rem;padding:.42667rem;background:#fff;border-radius:.21333rem;transition:all .3s ease}.date-range-selector .calendar-icon[data-v-5bc044ac]{margin-right:.21333rem;color:var(--primary-color)}.date-item[data-v-5bc044ac]{flex:1;display:flex;align-items:center;padding:.32rem;cursor:pointer;border-radius:.21333rem;transition:all .3s ease;position:relative}.date-item[data-v-5bc044ac]:hover{background-color:#f1f5f9}.date-duration[data-v-5bc044ac]{padding:0 .53333rem;color:#64748b;font-size:.37333rem;font-weight:500;position:relative}.date-duration[data-v-5bc044ac]:after,.date-duration[data-v-5bc044ac]:before{content:"";position:absolute;top:50%;width:.26667rem;height:1px;background-color:#cbd5e1}.date-duration[data-v-5bc044ac]:before{left:0}.date-duration[data-v-5bc044ac]:after{right:0}.room-list[data-v-5bc044ac]{margin:.10667rem .42667rem .42667rem;border-radius:.21333rem;overflow:hidden}.room-item[data-v-5bc044ac]{display:flex;justify-content:space-between;align-items:center;padding:.42667rem;background:#fff;border-bottom:1px solid #e2e8f0;cursor:pointer;transition:all .3s ease}.room-item[data-v-5bc044ac]:last-child{border-bottom:none}.room-item[data-v-5bc044ac]:hover{background:#f8f9fa}.room-item-selected[data-v-5bc044ac]{background:#eff6ff;border-left:.10667rem solid var(--primary-color)}.room-info[data-v-5bc044ac]{flex:1}.room-name[data-v-5bc044ac]{font-size:.42667rem;font-weight:500;color:#1e293b;margin-bottom:.10667rem}.room-price[data-v-5bc044ac]{font-size:.37333rem;color:#ef4444;font-weight:600;margin-bottom:.10667rem}.room-select[data-v-5bc044ac]{width:.64rem;height:.64rem;border:2px solid #cbd5e1;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.room-item-selected .room-select[data-v-5bc044ac]{border-color:var(--primary-color);background:var(--primary-color)}.room-item-selected .room-select svg[data-v-5bc044ac]{color:#fff}.room-remaining[data-v-5bc044ac]{font-size:.32rem;color:#64748b;margin-top:.10667rem}