.restaurant-theme{--restaurant-background-primary:240,240,240;--restaurant-background-secondary:241,245,249;--restaurant-background-accent:226,232,240;--restaurant-text-primary:30,41,59;--restaurant-text-secondary:100,116,139;--restaurant-text-muted:148,163,184;--restaurant-text-inverse:255,255,255;--restaurant-backdrop-light:255,255,255;--restaurant-backdrop-dark:0,0,0;--restaurant-border-light:226,232,240;--restaurant-border-medium:203,213,225;--restaurant-brand-primary:237,22,108;--restaurant-brand-secondary:78,205,196;--restaurant-backdrop-blur:blur(12px);--restaurant-backdrop-overlay:rgba(255,255,255,0.15);--restaurant-backdrop-overlay-strong:rgba(255,255,255,0.25);--restaurant-backdrop-overlay-dark:rgba(0,0,0,0.3);--restaurant-border-accent:rgba(255,255,255,0.2);--restaurant-shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--restaurant-shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--restaurant-shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--restaurant-shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--restaurant-radius-sm:0.25rem;--restaurant-radius-md:0.375rem;--restaurant-radius-lg:0.5rem;--restaurant-radius-xl:0.75rem;--restaurant-radius-2xl:1rem;--restaurant-radius-3xl:1.5rem;--restaurant-spacing-xs:0.25rem;--restaurant-spacing-sm:0.5rem;--restaurant-spacing-md:1rem;--restaurant-spacing-lg:1.5rem;--restaurant-spacing-xl:2rem;--restaurant-spacing-2xl:3rem}.bg-restaurant-background{background-color:rgb(var(--restaurant-background-primary))!important}.bg-restaurant-background-90{background-color:rgba(var(--restaurant-background-primary),.9)!important}.bg-restaurant-background-80{background-color:rgba(var(--restaurant-background-primary),.8)!important}.bg-restaurant-background-secondary{background-color:rgb(var(--restaurant-background-secondary))!important}.bg-restaurant-background-accent{background-color:rgb(var(--restaurant-background-accent))!important}.restaurant-backdrop{-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;background:rgba(255,255,255,.15)!important;border:1px solid rgba(255,255,255,.2)!important}.restaurant-backdrop-light{-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;background:rgba(255,255,255,.1)!important}.restaurant-backdrop-medium{-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background:rgba(255,255,255,.2)!important}.restaurant-backdrop-strong{-webkit-backdrop-filter:blur(15px)!important;backdrop-filter:blur(15px)!important;background:rgba(255,255,255,.25)!important;border:1px solid rgba(255,255,255,.3)!important}.restaurant-text-header{color:rgb(var(--restaurant-text-inverse))!important}.restaurant-text{color:#000000!important}.restaurant-text-description{color:rgb(var(--restaurant-text-secondary))!important}.restaurant-text-muted{color:rgb(var(--restaurant-text-muted))!important}.restaurant-text-inverse{color:rgb(var(--restaurant-text-inverse))!important}.border-restaurant-light{border-color:rgb(var(--restaurant-border-light))!important}.border-restaurant-medium{border-color:rgb(var(--restaurant-border-medium))!important}.border-restaurant-accent{border-color:rgba(var(--restaurant-backdrop-light),.2)!important}.shadow-restaurant{box-shadow:var(--restaurant-shadow-lg)!important}.shadow-restaurant-sm{box-shadow:var(--restaurant-shadow-sm)!important}.shadow-restaurant-md{box-shadow:var(--restaurant-shadow-md)!important}.shadow-restaurant-xl{box-shadow:var(--restaurant-shadow-xl)!important}.rounded-restaurant{border-radius:var(--restaurant-radius-lg)!important}.rounded-restaurant-sm{border-radius:var(--restaurant-radius-sm)!important}.rounded-restaurant-md{border-radius:var(--restaurant-radius-md)!important}.rounded-restaurant-lg{border-radius:var(--restaurant-radius-lg)!important}.rounded-restaurant-xl{border-radius:var(--restaurant-radius-xl)!important}.rounded-restaurant-2xl{border-radius:var(--restaurant-radius-2xl)!important}.bg-restaurant-brand{background-color:rgb(var(--restaurant-brand-primary))!important}.bg-restaurant-brand-secondary{background-color:rgb(var(--restaurant-brand-secondary))!important}.text-restaurant-brand{color:rgb(var(--restaurant-brand-primary))!important}.text-restaurant-brand-secondary{color:rgb(var(--restaurant-brand-secondary))!important}.border-restaurant-brand{border-color:rgb(var(--restaurant-brand-primary))!important}.restaurant-theme .filter-toggle-btn{transform-origin:center;-webkit-tap-highlight-color:transparent}.restaurant-theme .filter-toggle-btn:active{transform:scale(.95)}.restaurant-theme .filters-container{will-change:height;transform:translateZ(0)}.restaurant-theme .filters-content{will-change:transform}.restaurant-theme .filter-pill{transform-origin:center;will-change:transform,background-color,border-color;-webkit-tap-highlight-color:transparent;min-height:24px;height:24px;display:flex;align-items:center}.restaurant-theme .filter-pill:active{transform:scale(.97)}.restaurant-theme .filter-pill span{line-height:1;white-space:nowrap}.restaurant-theme .filter-pill .lucide{flex-shrink:0}.restaurant-theme .filter-pill-active{background-color:rgba(var(--restaurant-backdrop-light),.3)!important;color:rgb(var(--restaurant-text-inverse))!important;border-color:rgba(var(--restaurant-backdrop-light),.5)!important;box-shadow:0 2px 8px rgba(var(--restaurant-backdrop-light),.15)!important}.restaurant-theme .filter-pill-active,.restaurant-theme .filter-pill-inactive{backdrop-filter:blur(4px)!important;transition:all .2s ease-out,backdrop-filter .1s ease-out!important}.restaurant-theme .filter-pill-inactive{background-color:rgba(var(--restaurant-backdrop-light),.1)!important;color:rgba(var(--restaurant-text-inverse),.8)!important;border-color:rgba(var(--restaurant-backdrop-light),.2)!important}.restaurant-theme .filters-container{transition:height .3s cubic-bezier(.4,0,.2,1),opacity .2s ease-out!important}.restaurant-theme .restaurant-info-card{backdrop-filter:var(--restaurant-backdrop-blur)!important;background:var(--restaurant-backdrop-overlay-strong)!important;border:1px solid var(--restaurant-border-accent)!important;box-shadow:var(--restaurant-shadow-lg)!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.restaurant-theme .restaurant-backdrop:has(img){background:transparent!important}.restaurant-theme .restaurant-backdrop img{background:transparent}@supports not selector(:has(*)){.restaurant-theme .w-14.h-14.rounded-restaurant-xl.restaurant-backdrop{background:transparent!important}}.restaurant-theme .restaurant-info-card:hover{backdrop-filter:blur(25px)!important;background:rgba(255,255,255,.3)!important;transform:translateY(-2px)!important;box-shadow:var(--restaurant-shadow-xl)!important}.restaurant-theme .restaurant-info-card h2{text-shadow:0 2px 4px rgba(var(--restaurant-backdrop-dark),.3),0 1px 2px rgba(var(--restaurant-backdrop-dark),.2)!important;color:rgb(var(--restaurant-text-primary))!important;font-weight:700!important}.restaurant-theme .restaurant-info-card p{text-shadow:0 1px 3px rgba(var(--restaurant-backdrop-dark),.4),0 1px 1px rgba(var(--restaurant-backdrop-dark),.3)!important;color:rgb(var(--restaurant-text-secondary))!important;font-weight:500!important}.restaurant-theme .restaurant-info-card .restaurant-avatar-initials{text-shadow:0 1px 2px rgba(var(--restaurant-backdrop-dark),.5)!important;color:rgb(var(--restaurant-text-primary))!important;font-weight:800!important}.restaurant-theme .popular-items-section{margin-bottom:2rem}.restaurant-theme .popular-header{margin-bottom:.5rem}.restaurant-theme .popular-title{color:rgb(var(--restaurant-text-primary));font-weight:700;font-size:1.25rem;line-height:1.75rem}.restaurant-theme .popular-subtitle{color:rgb(var(--restaurant-text-secondary));font-size:.875rem;line-height:1.25rem;margin-top:.25rem}.restaurant-theme .popular-items-container{position:relative}.restaurant-theme .popular-items-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;padding:.5rem 0}.restaurant-theme .popular-item-card{position:relative;background:rgb(var(--restaurant-backdrop-light));border-radius:var(--restaurant-radius-xl);overflow:hidden;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--restaurant-shadow-md);opacity:0;transform:translateY(20px);animation:fadeInUp .6s ease-out forwards}.restaurant-theme .popular-item-card:hover{transform:translateY(-4px);box-shadow:var(--restaurant-shadow-xl)}.restaurant-theme .popular-item-image-container{position:relative;width:100%;height:180px;overflow:hidden}.restaurant-theme .popular-item-image{width:100%;height:100%;object-fit:cover;transition:transform .3s cubic-bezier(.4,0,.2,1)}.restaurant-theme .popular-item-card:hover .popular-item-image{transform:scale(1.05)}.restaurant-theme .popular-badge{position:absolute;top:.75rem;right:.75rem;background:rgba(var(--restaurant-backdrop-light),.9);backdrop-filter:blur(8px);border-radius:50%;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(var(--restaurant-backdrop-dark),.15)}.restaurant-theme .popular-item-content{padding:1.25rem}.restaurant-theme .popular-item-name{font-weight:600;font-size:1.125rem;line-height:1.75rem;color:rgb(var(--restaurant-text-primary));margin-bottom:.5rem}.restaurant-theme .popular-item-description{color:rgb(var(--restaurant-text-secondary));font-size:.875rem;line-height:1.5;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.restaurant-theme .popular-item-price{font-weight:700;font-size:1.125rem;color:rgb(var(--restaurant-brand-primary))}.restaurant-theme .popular-item-overlay{position:absolute;inset:0;background:rgba(var(--restaurant-backdrop-dark),.7);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.restaurant-theme .popular-item-card:hover .popular-item-overlay{opacity:1}.restaurant-theme .popular-item-overlay-content{text-align:center;transform:translateY(10px);transition:transform .3s cubic-bezier(.4,0,.2,1)}.restaurant-theme .popular-item-card:hover .popular-item-overlay-content{transform:translateY(0)}.restaurant-theme .popular-item-overlay-text{color:rgb(var(--restaurant-text-inverse));font-weight:600;font-size:1rem;background:rgba(var(--restaurant-backdrop-light),.2);backdrop-filter:blur(8px);padding:.75rem 1.5rem;border-radius:var(--restaurant-radius-lg);border:1px solid rgba(var(--restaurant-backdrop-light),.3)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.restaurant-theme .popular-items-grid{grid-template-columns:1fr;gap:.75rem}.restaurant-theme .popular-item-image-container{height:160px}.restaurant-theme .popular-item-content{padding:1rem}}.restaurant-theme .filter-pill:focus-visible,.restaurant-theme .filter-toggle-btn:focus-visible{outline:2px solid rgba(var(--restaurant-backdrop-light),.5);outline-offset:2px}.restaurant-theme .dietary-filters *{backface-visibility:hidden;-webkit-backface-visibility:hidden}.restaurant-theme .filter-pill,.restaurant-theme .filter-toggle-btn{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media (hover:none){.restaurant-theme .filter-toggle-btn:active{background-color:rgba(var(--restaurant-backdrop-light),.15)}.restaurant-theme .filter-pill:active{transform:scale(.9);background-color:rgba(var(--restaurant-backdrop-light),.25)!important}}@media (max-width:640px){.restaurant-theme .filter-pill{font-size:11px;padding:.275rem .75rem}.restaurant-theme .filter-toggle-btn{font-size:11px;padding:.375rem .75rem}}.restaurant-theme .restaurant-header-overlay{background:linear-gradient(180deg,rgba(var(--restaurant-backdrop-dark),.4) 0,rgba(var(--restaurant-backdrop-dark),.2) 50%,rgba(var(--restaurant-backdrop-dark),.1) 100%)}.restaurant-theme .modern-card{position:relative;background:rgba(var(--restaurant-backdrop-light),.1);-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important;border:1px solid rgba(var(--restaurant-backdrop-light),.2);box-shadow:0 0 12px rgba(var(--restaurant-backdrop-dark),.1),0 0 8px rgba(var(--restaurant-backdrop-dark),.05);transform:translateZ(0);will-change:backdrop-filter;isolation:isolate}.restaurant-theme .modern-card:active{transform:scale(.98)}.restaurant-theme .shine-effect{display:none}.restaurant-theme .line-clamp-1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.restaurant-theme .line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.restaurant-theme .line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.restaurant-theme .popular-items-scroll{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.restaurant-theme .popular-items-scroll::-webkit-scrollbar{display:none}.restaurant-theme .popular-item-text{text-shadow:0 2px 4px rgba(var(--restaurant-backdrop-dark),.8),0 1px 2px rgba(var(--restaurant-backdrop-dark),.6);color:rgb(var(--restaurant-text-inverse));font-weight:700}.restaurant-theme .popular-item-price-text{text-shadow:0 2px 4px rgba(var(--restaurant-backdrop-dark),.9),0 1px 2px rgba(var(--restaurant-backdrop-dark),.7);color:rgb(var(--restaurant-text-inverse));font-weight:900}.restaurant-theme .clipped-image,.restaurant-theme .filter-parent{position:relative;overflow:hidden}.restaurant-theme .scrollbar-hide{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.restaurant-theme .scrollbar-hide::-webkit-scrollbar{width:0;height:0}.p-restaurant-sm{padding:var(--restaurant-spacing-sm)!important}.p-restaurant-md{padding:var(--restaurant-spacing-md)!important}.p-restaurant-lg{padding:var(--restaurant-spacing-lg)!important}.p-restaurant-xl{padding:var(--restaurant-spacing-xl)!important}.m-restaurant-sm{margin:var(--restaurant-spacing-sm)!important}.m-restaurant-md{margin:var(--restaurant-spacing-md)!important}.m-restaurant-lg{margin:var(--restaurant-spacing-lg)!important}.m-restaurant-xl{margin:var(--restaurant-spacing-xl)!important}.gap-restaurant-sm{gap:var(--restaurant-spacing-sm)!important}.gap-restaurant-md{gap:var(--restaurant-spacing-md)!important}.gap-restaurant-lg{gap:var(--restaurant-spacing-lg)!important}.restaurant-theme .restaurant-indicator{background:rgb(var(--restaurant-brand-primary));box-shadow:0 2px 8px rgba(var(--restaurant-brand-primary),.3)}.restaurant-theme .restaurant-tab-button{transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.restaurant-theme .restaurant-tab-button:focus-visible{outline:2px solid rgb(var(--restaurant-brand-primary));outline-offset:2px;border-radius:4px}@media (hover:none){.restaurant-theme .restaurant-tab-button:active{transform:scale(.98)}}.restaurant-theme .bg-restaurant-background-90{background-color:rgba(var(--restaurant-background-primary),.9)}.restaurant-theme .restaurant-tab-active{color:rgb(var(--restaurant-text-inverse))!important;text-shadow:0 1px 2px rgba(var(--restaurant-backdrop-dark),.5)}.restaurant-theme .restaurant-tab-inactive{color:rgb(var(--restaurant-text-muted))!important}.restaurant-theme button:focus-visible{outline:2px solid #f97316;outline-offset:2px}.restaurant-theme .item-modal{will-change:transform;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;perspective:1000px;contain:layout style paint;isolation:isolate}.restaurant-theme .header-overlay{will-change:height,background-color,backdrop-filter;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;contain:layout style paint;transform:translateZ(0)}.restaurant-theme .touch-target{-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:pointer;position:relative;z-index:10}.restaurant-theme .pill-badge{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:9999px;background-color:rgba(249,250,251,.8);font-size:.875rem;color:rgb(55,65,81);flex-shrink:0;backdrop-filter:blur(10px)}.restaurant-theme .pb-safe{padding-bottom:max(16px,env(safe-area-inset-bottom))}.restaurant-theme .scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.restaurant-theme .scrollbar-hide::-webkit-scrollbar{display:none}.restaurant-theme .overflow-y-auto{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.restaurant-theme .overscroll-none{overscroll-behavior:none}.restaurant-theme .pointer-events-none{pointer-events:none}.restaurant-theme .pointer-events-auto{pointer-events:auto}@media (hover:none){.restaurant-theme .active\:scale-98:active{transform:scale(.98)}.restaurant-theme .active\:scale-95:active{transform:scale(.95)}}.restaurant-theme .cursor-grab{cursor:grab}.restaurant-theme .cursor-grab:active{cursor:grabbing}.restaurant-theme .item-modal *{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.restaurant-theme .item-modal input,.restaurant-theme .item-modal textarea{-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.restaurant-theme .touch-target:active{transition:transform .1s ease}.restaurant-theme .header-overlay *{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.restaurant-theme .indicator-smooth,.restaurant-theme .restaurant-tab-button,.restaurant-theme .text-overlay,.restaurant-theme button{transition-timing-function:cubic-bezier(.4,0,.2,1)}.restaurant-theme .indicator-smooth{transition:width .3s cubic-bezier(.4,0,.2,1);will-change:width;transform:translateZ(0);-webkit-transition:width .3s cubic-bezier(.4,0,.2,1)}.restaurant-theme .text-overlay{transition:clip-path .18s cubic-bezier(.94,.46,.45,.94),opacity .1s ease-out,left .35s cubic-bezier(.25,.46,.45,.94),width .35s cubic-bezier(.25,.46,.45,.94);will-change:clip-path,opacity,left,width;transform:translateZ(0)}.restaurant-theme{overscroll-behavior:contain}.restaurant-theme,body{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;min-height:100vh;min-height:-webkit-fill-available}body{overscroll-behavior-y:contain;scroll-padding-top:0}.restaurant-theme .min-h-screen{min-height:100vh;min-height:-webkit-fill-available}.restaurant-theme .restaurantHeader{height:-webkit-fill-available;overflow:hidden}.restaurant-theme [style*=transform]{-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden}@supports (-webkit-touch-callout:none){.fixed.bottom-0,.item-modal-footer,[class*=fixed][style*=bottom]{transform:translateZ(0)!important;-webkit-transform:translateZ(0)!important;will-change:transform!important;-webkit-backface-visibility:hidden!important;backface-visibility:hidden!important;bottom:0!important}}.restaurant-theme *{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}@supports not (backdrop-filter:blur(1px)){.restaurant-backdrop,.restaurant-backdrop-light,.restaurant-backdrop-medium,.restaurant-backdrop-strong{background:rgba(255,255,255,.8)!important;border:1px solid rgba(255,255,255,.9)!important}}@media screen and (-webkit-min-device-pixel-ratio:1){.restaurant-backdrop,.restaurant-backdrop-light,.restaurant-backdrop-medium,.restaurant-backdrop-strong{-webkit-perspective:1000px;perspective:1000px;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:translateZ(0) scale(1);transform:translateZ(0) scale(1)}}@supports (-webkit-backdrop-filter:blur(1px)){.restaurant-backdrop{-webkit-backdrop-filter:blur(12px) saturate(180%) brightness(1.05)!important;backdrop-filter:blur(12px) saturate(180%) brightness(1.05)!important}.restaurant-backdrop-strong{-webkit-backdrop-filter:blur(15px) saturate(200%) brightness(1.1) contrast(1.1)!important;backdrop-filter:blur(15px) saturate(200%) brightness(1.1) contrast(1.1)!important}}.restaurant-theme .overflow-auto,.restaurant-theme .overflow-x-auto,.restaurant-theme .overflow-y-auto,.restaurant-theme [style*=overflow]{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.restaurant-theme body,.restaurant-theme html{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}