.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.touch-manipulation{touch-action:manipulation}.pb-safe{padding-bottom:env(safe-area-inset-bottom)}@media (max-width:768px){html{scroll-behavior:smooth}button,input,select,textarea{min-height:44px}button{-webkit-user-select:none;user-select:none}button:active{opacity:.9}input[type=text],input[type=email],input[type=tel],input[type=number],textarea,select{font-size:16px}.booking-content{padding-bottom:100px}}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}@keyframes scale-press{0%,to{transform:scale(1)}50%{transform:scale(.95)}}.active\:scale-95:active{animation:.15s ease-in-out scale-press}.snap-x{scroll-snap-type:x mandatory}.snap-center{scroll-snap-align:center}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-slide-up{animation:.3s ease-out slide-up}.animate-fade-in{animation:.3s ease-out fade-in}.swipe-hint:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#fffc);width:30px;position:absolute;top:0;bottom:0;right:0}@media (max-width:640px){.time-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}}.sticky-header{z-index:30;-webkit-backdrop-filter:blur(10px);background-color:#ffffffe6;position:sticky;top:0}.ios-scroll{-webkit-overflow-scrolling:touch;overflow-y:auto}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #9333ea}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}@media (max-width:1023px){footer{padding-bottom:7rem}}@media (max-height:500px) and (orientation:landscape){.booking-header,.fixed-bottom-nav{padding-top:8px;padding-bottom:8px}}