.booking-engine-app{font-family:Inter,sans-serif!important;color:#334155;background-color:transparent}.booking-engine-app h1,.booking-engine-app h2,.booking-engine-app h3,.booking-engine-app h4,.booking-engine-app h5,.booking-engine-app h6,.booking-engine-app .category-title{font-family:Outfit,sans-serif!important;font-weight:700}.booking-engine-app .nav-link{color:#64748b;font-weight:500;padding:.75rem 1rem;border-radius:.5rem;display:flex;align-items:center;gap:12px;transition:all .2s}.booking-engine-app .nav-link.active{background-color:var(--lodgehog-primary);color:#fff}.booking-engine-app .nav-link i{font-size:1.25rem;width:24px;text-align:center}.booking-engine-app .form-control-custom{padding-left:2.8rem;border-radius:.5rem;padding-top:.75rem;padding-bottom:.75rem}.date-range-wrapper{position:relative;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;display:flex;align-items:center;padding:.5rem 1rem;cursor:pointer;transition:all .2s}.date-range-wrapper:hover{border-color:#9ca3af}.date-range-wrapper:focus-within{border-color:var(--lodgehog-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--lodgehog-primary) 10%,transparent)}.date-text{font-weight:600;color:#1f2937}.date-arrow{color:#9ca3af;margin:0 1rem}.night-badge{margin-left:auto;background:#1f2937;color:#fff;font-size:.75rem;padding:.25rem .75rem;border-radius:99px;font-weight:600}.select2-container{position:relative}.select2-input{border:1px solid #e5e7eb;border-radius:.5rem;padding:.75rem 1rem;background:#fff;display:flex;align-items:center;justify-content:space-between;cursor:text}.room-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;height:100%;display:flex;flex-direction:column;position:relative;margin-bottom:1rem}.room-card.selected-mode{border-color:var(--lodgehog-primary);background-color:var(--lodgehog-bg)}.room-config-label{font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase;margin-bottom:4px;display:block}.room-select{font-size:.9rem;height:42px;padding:0 2.5rem 0 1rem;border:1px solid #e2e8f0;border-radius:10px;width:100%;background-color:#fff;color:#1f2937;font-weight:600;margin-bottom:0;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1rem center;background-size:14px}.price-input-group .form-control,.price-input-group .form-select,.card-prepayment .form-control,.card-prepayment .form-select{height:42px;border:1px solid #e2e8f0;color:#1f2937;font-weight:600;border-radius:10px}.price-input-group .form-control{border-left:none;border-right:none;border-radius:0}.btn-xs{padding:.2rem .4rem;font-size:.75rem;line-height:1}.price-mode-toggle .inactive-mode{display:none!important}.price-mode-toggle:hover{gap:4px}.price-mode-toggle:hover .inactive-mode{display:flex!important}.custom-tooltip-trigger{position:relative}.custom-tooltip-trigger:after{content:attr(data-tooltip);position:absolute;bottom:125%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:4px 8px;border-radius:4px;font-size:.7rem;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .1s;pointer-events:none;z-index:1000}.custom-tooltip-trigger:hover:after{opacity:1;visibility:visible}.price-input-group .input-group-text,.card-prepayment .input-group-text{background:#fff;border:1px solid #e2e8f0;color:#64748b;font-weight:600;border-radius:10px}.price-input-group .input-group-text{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.btn-remove-card{position:absolute;top:12px;right:12px;width:24px;height:24px;border-radius:50%;background:#fff;border:1px solid #fca5a5;color:#ef4444;display:flex;align-items:center;justify-content:center;cursor:pointer}.badge-clean{background-color:var(--lodgehog-primary-subtle);color:var(--lodgehog-primary-dark);font-size:.7rem;padding:.25em .6em}.btn-lodgehog{background-color:var(--lodgehog-primary);color:#fff;font-weight:600;padding:.75rem;border-radius:.75rem;border:none;width:100%}.card-prepayment{border:1px solid #cbd5e1}.room-list-container{border:1px solid #e5e7eb;border-radius:.75rem;background:#fff}.room-row{position:relative;border-bottom:1px solid #f1f5f9;transition:background .2s}.room-row:first-child,.room-row:first-child .room-row-header{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.room-row:last-child,.room-row:last-child .room-row-body{border-bottom-left-radius:.75rem;border-bottom-right-radius:.75rem}.room-row:last-child{border-bottom:none}.room-row-header{padding:.5rem 1.25rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.room-row-header:hover,.room-row.is-expanded{background-color:#f8fafc}.room-row.is-expanded .room-row-header{border-bottom:1px solid #e2e8f0;background-color:var(--lodgehog-primary-subtle)}.room-row-body{display:none;padding:1.25rem;background-color:#fff;animation:slideDown .2s ease-out}.room-row.is-expanded .room-row-body{display:block}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.price-badge-header{background:#f1f5f9;color:#475569;padding:.25rem .6rem;border-radius:999px;font-size:.85rem;border:1px solid #e2e8f0}.room-row.is-expanded .price-badge-header{background:var(--lodgehog-primary-subtle);color:var(--lodgehog-primary-dark);border-color:var(--lodgehog-primary)}.room-row.is-expanded .price-badge-header .text-muted{color:var(--lodgehog-primary-dark)!important;opacity:.7}.badge-dirty{background-color:#fef9c3;color:#a16207;font-size:.7rem;padding:.25em .6em}.btn-toggle-row{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid #cbd5e1;color:#64748b;transition:all .2s}.room-row.is-expanded .btn-toggle-row{transform:rotate(180deg);background:var(--lodgehog-primary);border-color:var(--lodgehog-primary);color:#fff}.occupancy-picker-container{position:relative}.occupancy-dropdown{box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a!important;border:1px solid #e2e8f0!important;animation:slideDown .2s ease-out;z-index:1050}.rotate-180{transform:rotate(180deg)}.transition-all{transition:all .2s ease-in-out}.occupancy-picker-container .room-select{transition:all .2s ease-in-out;border:1px solid #e2e8f0;padding:0 1rem;border-radius:10px;height:42px;margin-bottom:0;background-image:none!important}.room-guest-picker-container .room-select{background-image:none!important;padding-right:1rem}.occupancy-picker-container .room-select:hover,.room-guest-picker-container .room-select:hover{border-color:var(--lodgehog-primary);background-color:#f8fafc}.occupancy-picker-container .room-select.is-active,.room-guest-picker-container .room-select.is-active{border-color:var(--lodgehog-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--lodgehog-primary) 10%,transparent);background-color:#fff}.btn-icon-round{padding:0;display:flex;align-items:center;justify-content:center;transition:transform .1s ease;cursor:pointer}.btn-icon-round:active{transform:scale(.9)}.btn-icon-round:hover{opacity:.8}.hover-bg-light:hover{background-color:#f8fafc}.hover-border-light:hover{border-color:#f1f5f9}.bg-primary-subtle{background-color:var(--lodgehog-primary-subtle)!important}.text-primary{color:var(--lodgehog-primary)!important}.glass-header{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--glass-border)}.premium-card{background:#fff!important;border:1px solid rgba(0,0,0,.05)!important;border-radius:20px!important;box-shadow:var(--card-shadow)!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.premium-card:hover{box-shadow:var(--card-shadow-hover)!important}.rate-plan-card{border:1px solid #f1f5f9;background:#fff;border-radius:16px;padding:1.25rem;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #00000005}.rate-plan-card:hover{border-color:var(--lodgehog-primary);box-shadow:0 8px 16px color-mix(in srgb,var(--lodgehog-primary) 10%,transparent)}.rate-plan-price-action{text-align:right;border-left:1px solid #f1f5f9;padding-left:1.25rem;min-width:140px}.category-title{font-weight:700;letter-spacing:-.02em}.price-text{font-weight:800;color:var(--lodgehog-primary)}.add-room-btn{border-radius:10px;font-weight:700;padding:.5rem 1.5rem;transition:transform .1s}.add-room-btn:active{transform:scale(.95)}.badge-availability{background-color:var(--lodgehog-primary-subtle)!important;color:var(--lodgehog-primary)!important;font-size:.75rem;padding:.4rem 1rem;border-radius:99px;font-weight:700;white-space:nowrap;letter-spacing:.01em;box-shadow:0 2px 8px color-mix(in srgb,var(--lodgehog-primary) 15%,transparent);border:1px solid color-mix(in srgb,var(--lodgehog-primary) 20%,transparent)}.badge-availability--scarce{background-color:#fff7ed!important;color:#c2410c!important;box-shadow:0 2px 8px #c2410c1f!important;border-color:#c2410c33!important}.badge-availability--soldout{background-color:#fee2e2!important;color:#dc2626!important;box-shadow:0 2px 8px #dc26261f!important;border-color:#dc262633!important}.extra-small{font-size:.7rem}.letter-spacing-1{letter-spacing:.05em}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-item{transition:all .2s ease}.last-child-border-0:last-child{border-bottom:none!important}.uppercase{text-transform:uppercase}.room-config-box{background:#f8fafc;border:1px solid white;box-shadow:inset 0 2px 4px #0000000d}.mobile-cart-price-row,.mobile-cart-items-panel{display:none}@media(max-width:991.98px){.booking-engine-app main{padding-bottom:90px!important}.glass-header{padding-top:1rem!important;padding-bottom:1rem!important}.mobile-sticky-cart{position:fixed!important;inset:auto 0 0!important;z-index:2000!important;border-radius:24px 24px 0 0!important;box-shadow:0 -12px 30px #00000026!important;padding:0!important;background:#fff!important;transform:translateY(0)!important;margin:0!important;width:100%!important;overflow:hidden}.mobile-sticky-cart:hover{transform:none!important}.mobile-sticky-cart.cart-is-empty{display:none!important}.mobile-cart-items-panel{display:block;width:100%;max-height:0;overflow:hidden;transition:max-height .3s cubic-bezier(.4,0,.2,1);border-bottom:0px solid #f1f5f9}.mobile-cart-items-panel--open{max-height:280px;overflow-y:auto;border-bottom-width:1px}.mobile-cart-item{padding:.6rem 1.25rem;border-bottom:1px solid #f1f5f9}.mobile-cart-item:last-child{border-bottom:none}.mobile-sticky-cart .card-body{padding:.55rem 1.25rem .65rem!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:.75rem!important}.mobile-cart-price-row{display:flex;align-items:center;gap:.4rem;cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;padding:.2rem .5rem .2rem 0;transition:opacity .15s}.mobile-cart-price-row:active{opacity:.7}.mobile-cart-price-left{display:flex;flex-direction:column;line-height:1.2}.mobile-cart-label{font-size:.7rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.mobile-cart-total{font-size:1.1rem;font-weight:800;white-space:nowrap;color:var(--lodgehog-primary)!important}.mobile-cart-chevron{color:#94a3b8;line-height:1;margin-top:2px}.mobile-cart-price-row+.add-room-btn,.mobile-cart-price-row~.add-room-btn{flex:1}.mobile-sticky-cart .add-room-btn{width:auto!important;flex:1;padding:.5rem 1.1rem!important;font-size:.85rem!important;margin-bottom:0!important;border-radius:12px!important}.mobile-sticky-cart .price-text{color:var(--lodgehog-primary)!important}.rate-plan-card{flex-direction:column!important;align-items:stretch!important;gap:1rem;padding:1.25rem!important;transform:none!important;border-radius:16px!important}.rate-plan-price-action{border-left:none!important;border-top:1px solid #f1f5f9;padding-left:0!important;padding-top:1rem!important;display:flex;justify-content:space-between;align-items:center;min-width:0!important;text-align:left!important}.rate-plan-price-action .price-text{font-size:1rem!important;margin-bottom:0!important;white-space:nowrap}.rate-plan-price-action .add-room-btn{width:auto!important;min-width:0!important;padding:.4rem 1rem!important;font-size:.85rem!important}}.premium-control{background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:12px!important;height:42px!important;padding:0 14px!important;transition:all .2s ease!important;overflow:hidden!important;display:flex!important;align-items:center!important}.premium-control-white,.premium-control-white:hover{background:#fff!important}.premium-control:hover{border-color:#cbd5e1!important;background:#f1f5f9!important}.premium-control.is-active,.premium-control:focus-within{border-color:var(--lodgehog-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--lodgehog-primary) 10%,transparent)!important;background:#f8fafc!important}.premium-control.is-invalid{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef44441a!important;background:#fef2f2!important}.premium-control.is-invalid .input-group-text,.premium-control.is-invalid .form-control{color:#b91c1c!important}.premium-control .form-control,.premium-control .input-group-text,.premium-control .room-select{border:none!important;background:transparent!important;box-shadow:none!important;height:100%!important;padding-top:0!important;padding-bottom:0!important;min-height:0!important;display:flex!important;align-items:center!important}.premium-control .input-group-text:first-child{padding-left:0!important;padding-right:8px!important}.premium-control .input-group-text:last-child{padding-right:0!important;padding-left:8px!important}.premium-control .form-control{padding-left:0!important;flex:1!important}.iti{width:100%;display:block}.iti input.form-control{width:100%!important;padding-top:.375rem!important;padding-bottom:.375rem!important;border-radius:.5rem!important;padding-left:48px!important}.iti input.is-invalid{background-position:right calc(.375em + .1875rem) center!important;padding-right:calc(1.5em + .75rem)!important}.iti__flag-container{z-index:4}.hover-primary:hover{color:var(--lodgehog-primary)!important}.hover-opacity:hover{opacity:.7;transition:opacity .2s}:root{--lodgehog-primary: #10b981;--lodgehog-primary-dark: #059669;--lodgehog-primary-subtle: #dcfce7;--lodgehog-secondary: #3b82f6;--lodgehog-accent: #f59e0b;--lodgehog-bg: #f8fafc;--bg-body: #f1f5f9;--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .3);--card-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--card-shadow-hover: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: var(--lodgehog-primary);--bs-btn-border-color: var(--lodgehog-primary);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--lodgehog-primary-dark);--bs-btn-hover-border-color: var(--lodgehog-primary-dark);--bs-btn-active-bg: var(--lodgehog-primary-dark);--bs-btn-active-border-color: var(--lodgehog-primary-dark);--bs-btn-disabled-bg: var(--lodgehog-primary-subtle);--bs-btn-disabled-border-color: var(--lodgehog-primary-subtle)}.btn-outline-success{--bs-btn-color: var(--lodgehog-primary);--bs-btn-border-color: var(--lodgehog-primary);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--lodgehog-primary);--bs-btn-hover-border-color: var(--lodgehog-primary);--bs-btn-active-bg: var(--lodgehog-primary);--bs-btn-active-border-color: var(--lodgehog-primary)}.text-success{color:var(--lodgehog-primary)!important}.bg-success{background-color:var(--lodgehog-primary)!important}.bg-success-subtle{background-color:var(--lodgehog-primary-subtle)!important}.border-success{border-color:var(--lodgehog-primary)!important}.border-success-subtle{border-color:var(--lodgehog-primary-subtle)!important}
