.scroll-to-top-btn{position:fixed;bottom:calc(9.5rem + env(safe-area-inset-bottom, 0px));right:16px;z-index:30;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:2px solid rgba(255,255,255,.9);box-shadow:0 4px 12px rgba(37,99,235,.35),0 1px 3px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:center;cursor:pointer;will-change:transform,opacity;transition:transform .24s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease,background .14s ease;-webkit-tap-highlight-color:transparent;min-width:44px;min-height:44px}@media (min-width:1024px){.scroll-to-top-btn{bottom:28px;right:24px;width:48px;height:48px}}.scroll-to-top-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:scale(1.1) translateY(-3px);box-shadow:0 10px 24px rgba(37,99,235,.4),0 4px 8px rgba(0,0,0,.1)}.scroll-to-top-btn:active{transform:scale(1.02) translateY(0);box-shadow:0 2px 8px rgba(37,99,235,.3)}.scroll-to-top-btn:focus-visible{outline:2px solid #93c5fd;outline-offset:3px}.scroll-to-top-enter{opacity:0;transform:scale(.8) translateY(16px)}.scroll-to-top-enter-active{transition:all .28s cubic-bezier(.34,1.56,.64,1)}.scroll-to-top-enter-active,.scroll-to-top-exit{opacity:1;transform:scale(1) translateY(0)}.scroll-to-top-exit-active{opacity:0;transform:scale(.8) translateY(16px);transition:all .2s cubic-bezier(.4,0,.2,1)}@keyframes scroll-top-pulse{0%,to{transform:scale(1);box-shadow:0 4px 12px rgba(37,99,235,.35)}50%{transform:scale(1.08);box-shadow:0 8px 20px rgba(37,99,235,.5)}}.scroll-to-top-btn.pulse{animation:scroll-top-pulse 2.2s ease-in-out infinite}@media (prefers-color-scheme:dark){.scroll-to-top-btn{border-color:rgba(255,255,255,.15);box-shadow:0 4px 12px rgba(0,0,0,.4),0 1px 3px rgba(0,0,0,.3)}}@keyframes cart-success-animation{0%{transform:scale(1) rotate(0deg);filter:drop-shadow(0 0 0 rgba(59,130,246,0))}45%{transform:scale(1.2) rotate(-6deg);filter:drop-shadow(0 0 14px rgba(59,130,246,.6))}to{transform:scale(1) rotate(0deg);filter:drop-shadow(0 0 0 rgba(59,130,246,0))}}.cart-success{animation:cart-success-animation .65s cubic-bezier(.34,1.56,.64,1)!important}@keyframes cart-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.cart-bounce{animation:cart-bounce .5s ease-in-out}@keyframes cart-pulse-glow{0%,to{opacity:1;filter:drop-shadow(0 0 0 rgba(59,130,246,.5))}50%{opacity:.85;filter:drop-shadow(0 0 12px rgba(59,130,246,.75))}}.cart-pulse-glow{animation:cart-pulse-glow 2.2s ease-in-out infinite}@keyframes cart-shake{0%,to{transform:translateX(0)}25%{transform:translateX(-2px) rotate(-.5deg)}75%{transform:translateX(2px) rotate(.5deg)}}.cart-shake{animation:cart-shake .35s ease-in-out}@keyframes cart-slide-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.cart-slide-up{animation:cart-slide-up .42s cubic-bezier(.34,1.56,.64,1)}.cart-bar-hover:hover{transform:translateY(-3px);box-shadow:0 16px 36px -8px rgba(37,99,235,.3)}.cart-bar-smooth{transition:bottom .28s cubic-bezier(.34,1.56,.64,1),transform .28s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease-in-out;will-change:transform,bottom}@keyframes cart-badge-pop{0%{transform:scale(.75);opacity:0}55%{transform:scale(1.22)}to{transform:scale(1);opacity:1}}.cart-badge-pop{animation:cart-badge-pop .35s cubic-bezier(.34,1.56,.64,1)}@keyframes cart-ripple{0%{transform:scale(0) translate(-50%,-50%);opacity:1}to{transform:scale(4) translate(-50%,-50%);opacity:0}}.cart-ripple:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;background:rgba(255,255,255,.4);border-radius:50%;transform-origin:0 0;animation:cart-ripple .5s ease-out;pointer-events:none}@keyframes flyToCart{0%{opacity:1;transform:scale(1) translate(0)}60%{opacity:.8;transform:scale(.45) translate(var(--tx),var(--ty))}to{opacity:0;transform:scale(.1) translate(var(--tx),var(--ty))}}.fly-to-cart{animation:flyToCart .75s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none;z-index:9999}@media (prefers-reduced-motion:reduce){.cart-bounce,.cart-pulse-glow,.cart-shake,.cart-slide-up,.cart-success,.fly-to-cart,.scroll-to-top-btn.pulse{animation:none!important}.cart-bar-smooth{transition:bottom .15s ease!important}}[data-radix-dialog-content].modal-mobile-optimized:not(.modal-pizza-shell){overflow-y:auto;padding-bottom:env(safe-area-inset-bottom,0);-webkit-overflow-scrolling:touch}[data-radix-dialog-content].modal-mobile-optimized.modal-pizza-shell,[data-radix-dialog-content].modal-mobile-optimized:not(.modal-pizza-shell){max-width:min(96vw,100%);width:min(96vw,100%);overflow-x:hidden;box-sizing:border-box;border-radius:1.25rem}@media (min-width:480px){[data-radix-dialog-content].modal-mobile-optimized{max-width:28rem;width:28rem}}@media (min-width:640px){[data-radix-dialog-content].modal-mobile-optimized{max-width:32rem;width:32rem}}@media (min-width:768px){[data-radix-dialog-content].modal-mobile-optimized{max-width:46rem;width:46rem}}@media (min-width:1024px){[data-radix-dialog-content].modal-mobile-optimized{max-width:52rem;width:52rem}}@media (min-width:1280px){[data-radix-dialog-content].modal-mobile-optimized{max-width:58rem;width:58rem}}[data-radix-dialog-content] .modal-content-mobile{max-width:100%;overflow-x:hidden;box-sizing:border-box;padding-inline:clamp(.875rem,4vw,1.5rem)}html body [data-radix-alert-dialog-overlay],html body [data-radix-dialog-overlay]{z-index:50;overflow:hidden}html body [data-radix-dialog-content]:not(.modal-pizza-shell):not(.modal-bebida-shell):not(.modal-cart-dialog){overflow-y:auto;max-height:min(92dvh,92vh);overscroll-behavior:contain}html body [data-radix-dialog-content].modal-cart-dialog{overflow:hidden!important;overscroll-behavior:contain}@media (max-width:1023px){html body [data-radix-dialog-content].modal-cart-dialog{position:fixed!important;inset:0!important;left:0!important;top:0!important;right:0!important;bottom:0!important;transform:none!important;translate:none!important;width:100%!important;max-width:100%!important;height:100dvh!important;max-height:100dvh!important;min-height:100dvh!important;border-radius:0!important;margin:0!important}}html body [data-radix-dialog-content].modal-pizza-shell{display:flex!important;flex-direction:column!important;height:min(92dvh,92vh);max-height:min(92dvh,92vh);min-height:0;overflow:hidden!important;overflow-y:hidden!important;overscroll-behavior:contain}[data-radix-dialog-content] .flavor-card-compact{position:relative;max-width:100%;width:100%;box-sizing:border-box;overflow:hidden;padding:clamp(.625rem,2.5vw,1rem);margin:0;border-radius:.875rem;border:1.5px solid #e5e7eb;background:#fff;cursor:pointer;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease;-webkit-tap-highlight-color:transparent}[data-radix-dialog-content] .flavor-card-compact.selected,[data-radix-dialog-content] .flavor-card-compact[data-selected=true]{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 1px #2563eb}[data-radix-dialog-content] .flavor-card-compact:hover:not([data-disabled]){border-color:#bfdbfe;background:#f8faff}[data-radix-dialog-content] .flavor-card-compact .fc-row{display:flex;align-items:flex-start;gap:.625rem;max-width:100%;min-width:0}[data-radix-dialog-content] .flavor-card-compact .fc-body{flex:1 1 0;min-width:0;max-width:100%}[data-radix-dialog-content] .flavor-card-compact .fc-price{flex-shrink:0;min-width:52px;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}[data-radix-dialog-content] .flavor-card-compact h4{font-size:clamp(.875rem,2.8vw,1rem);font-weight:700;color:#111827;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0}[data-radix-dialog-content] .flavor-card-compact .fc-desc,[data-radix-dialog-content] .flavor-card-compact p{font-size:clamp(.75rem,2.2vw,.875rem);line-height:1.4;color:#6b7280;white-space:normal;overflow-wrap:break-word;max-width:100%;margin:.1rem 0 0}[data-radix-dialog-content] .flavor-card-compact .fc-price-value{font-size:clamp(.875rem,2.5vw,1rem);font-weight:700;color:#111827;white-space:nowrap}[data-radix-dialog-content] .flavor-card-compact .fc-price-label{font-size:.6875rem;color:#9ca3af;white-space:nowrap}[data-radix-dialog-content] .flavor-card-compact .fc-radio,[data-radix-dialog-content] .flavor-card-compact input[type=checkbox],[data-radix-dialog-content] .flavor-card-compact input[type=radio]{width:1.125rem;height:1.125rem;min-width:1.125rem;flex-shrink:0;cursor:pointer;accent-color:#2563eb;margin-top:.125rem}@media (max-width:400px){[data-radix-dialog-content] .flavor-card-compact .fc-desc,[data-radix-dialog-content] .flavor-card-compact h4,[data-radix-dialog-content] .flavor-card-compact p{white-space:normal;word-break:break-word;overflow-wrap:break-word}[data-radix-dialog-content] .flavor-card-compact .fc-row{flex-wrap:wrap;align-items:flex-start}[data-radix-dialog-content] .flavor-card-compact .fc-price{width:100%;flex-direction:row;align-items:center;justify-content:space-between;margin-top:.375rem}}[data-radix-dialog-content] .modal-option-group-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f3f4f6;border-radius:.625rem;margin-bottom:.5rem}[data-radix-dialog-content] .modal-option-group-header .group-title{font-size:.9375rem;font-weight:700;color:#111827}[data-radix-dialog-content] .modal-option-group-header .group-badge{font-size:.75rem;font-weight:700;padding:.2rem .55rem;border-radius:9999px;white-space:nowrap}[data-radix-dialog-content] .group-badge.required{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}[data-radix-dialog-content] .group-badge.optional{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}[data-radix-dialog-content] .group-badge.done{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}html body [data-radix-dialog-content].modal-mobile-optimized.modal-pizza-shell{display:flex!important;flex-direction:column!important;height:min(92dvh,92vh);max-height:min(92dvh,92vh);min-height:0;overflow:hidden!important;overflow-y:hidden!important;overflow-x:hidden!important;padding:0;gap:0!important;-webkit-overflow-scrolling:auto}@media (max-width:639px){html body [data-radix-dialog-content].modal-mobile-optimized.modal-pizza-shell{position:fixed!important;inset:0!important;left:0!important;top:0!important;right:0!important;bottom:0!important;transform:none!important;translate:none!important;width:100%!important;max-width:100%!important;height:100dvh!important;max-height:100dvh!important;min-height:100dvh!important;border-radius:0!important;margin:0!important}}html body [data-radix-dialog-content].modal-pizza-shell .modal-pizza-scroll-clip{flex:1 1 0%;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}html body [data-radix-dialog-content].modal-pizza-shell .modal-pizza-body{flex:1 1 0%;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@media (max-width:639px){html body [data-radix-dialog-content].modal-pizza-shell .modal-pizza-scroll-clip{flex:1 1 auto;max-height:100%}html body [data-radix-dialog-content].modal-pizza-shell .modal-pizza-body{overflow-y:scroll;touch-action:pan-y;overscroll-behavior-y:contain}}html body .modal-pizza-shell .modal-pizza-footer-wrap{flex-shrink:0;display:flex;flex-direction:column;gap:.75rem;position:relative;z-index:30;box-sizing:border-box!important;padding:.875rem max(1.25rem,env(safe-area-inset-right,0px)) max(1.5rem,calc(.75rem + env(safe-area-inset-bottom, 0px))) max(1.25rem,env(safe-area-inset-left,0px))!important;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -10px 40px -12px rgba(15,23,42,.18),0 -4px 16px rgba(15,23,42,.1)}@media (min-width:640px){html body .modal-pizza-shell .modal-pizza-footer-wrap{gap:.875rem;padding:1rem max(1.5rem,env(safe-area-inset-right,0px)) max(1.75rem,calc(.75rem + env(safe-area-inset-bottom, 0px))) max(1.5rem,env(safe-area-inset-left,0px))!important}}html body [data-radix-dialog-content].modal-pizza-shell .modal-pizza-footer{flex-shrink:0;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.875rem;padding:0;margin:0;background:transparent;border:0;box-shadow:none}@media (min-width:640px){html body [data-radix-dialog-content].modal-pizza-shell .modal-pizza-footer{gap:1.125rem}}html body [data-radix-dialog-content].modal-pizza-shell .modal-pizza-footer .modal-qty-control{width:auto;max-width:100%;justify-content:center;flex-wrap:nowrap;flex-shrink:0}html body [data-radix-dialog-content].modal-pizza-shell .modal-pizza-footer .modal-qty-btn{flex-shrink:0;width:2.5rem;height:2.5rem;min-width:2.5rem;min-height:2.5rem}html body .modal-bebida-shell{display:flex!important;flex-direction:column!important;max-height:min(92dvh,92vh);height:min(92dvh,92vh);min-height:0;overflow:hidden!important;overflow-y:hidden!important;overflow-x:hidden!important;padding:0!important;gap:0!important;overscroll-behavior:contain}@media (max-width:639px){html body .modal-bebida-shell{position:fixed!important;inset:0!important;transform:none!important;translate:none!important;width:100%!important;max-width:100%!important;height:100dvh!important;max-height:100dvh!important;min-height:100dvh!important;border-radius:0!important;margin:0!important}}html body .modal-bebida-shell .modal-bebida-scroll-clip{flex:1 1 0%;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}html body .modal-bebida-shell .modal-bebida-body{flex:1 1 0%;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@media (max-width:639px){html body .modal-bebida-shell .modal-bebida-scroll-clip{flex:1 1 auto;max-height:100%}html body .modal-bebida-shell .modal-bebida-body{overflow-y:scroll;touch-action:pan-y;overscroll-behavior-y:contain}}html body .modal-bebida-shell .modal-bebida-footer-wrap{flex-shrink:0;display:flex;flex-direction:column;gap:.5rem;box-sizing:border-box!important;padding:.625rem max(1rem,env(safe-area-inset-right,0px)) max(1.125rem,calc(.5rem + env(safe-area-inset-bottom, 0px))) max(1rem,env(safe-area-inset-left,0px))!important;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -8px 24px -10px rgba(15,23,42,.12),0 -2px 10px rgba(15,23,42,.06)}@media (min-width:640px){html body .modal-bebida-shell .modal-bebida-footer-wrap{gap:.625rem;padding:.75rem max(1.25rem,env(safe-area-inset-right,0px)) max(1.25rem,calc(.5rem + env(safe-area-inset-bottom, 0px))) max(1.25rem,env(safe-area-inset-left,0px))!important}}html body .modal-bebida-shell .modal-bebida-footer{flex-shrink:0;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.625rem;padding:0;margin:0;background:transparent;border:0;box-shadow:none}@media (min-width:640px){html body .modal-bebida-shell .modal-bebida-footer{gap:.75rem}}html body .modal-bebida-shell .modal-bebida-footer .modal-qty-control{width:auto;max-width:100%;justify-content:center;flex-wrap:nowrap;flex-shrink:0}html body .modal-bebida-shell .modal-bebida-footer .modal-qty-btn{flex-shrink:0;width:2.125rem;height:2.125rem;min-width:2.125rem;min-height:2.125rem;font-size:1rem}html body .modal-bebida-shell .modal-bebida-footer .modal-qty-num{font-size:.9375rem}[data-radix-dialog-content] .modal-add-btn{position:sticky;bottom:0;left:0;right:0;padding:.875rem 1rem;background:#fff;border-top:1px solid #e5e7eb;z-index:20}[data-radix-dialog-content] .modal-add-btn button{width:100%;height:3.25rem;border-radius:.875rem;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem}[data-radix-dialog-content] .modal-qty-control{display:flex;align-items:center;gap:.625rem}[data-radix-dialog-content] .modal-qty-btn{width:2rem;height:2rem;border-radius:50%;border:1.5px solid #d1d5db;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .14s ease;font-weight:700;font-size:1.125rem;color:#374151}[data-radix-dialog-content] .modal-qty-btn:hover{border-color:#2563eb;color:#2563eb;background:#eff6ff}[data-radix-dialog-content] .modal-qty-num{font-size:1.125rem;font-weight:700;color:#111827;min-width:1.5rem;text-align:center}html body [data-radix-dialog-content].modal-mobile-optimized :focus-visible{outline:2px solid #2563eb;outline-offset:2px;border-radius:.25rem}@keyframes pulse-red{0%,to{border-color:#fca5a5;background:#fef2f2}50%{border-color:#ef4444;background:#fee2e2}}.animate-pulse-red{animation:pulse-red 1.5s ease-in-out infinite}@media (prefers-reduced-motion:reduce){[data-radix-dialog-content] .flavor-card-compact,[data-radix-dialog-content] .modal-qty-btn{transition:none}}@media (max-width:768px){.cardapio-container{padding:.75rem!important}.cardapio-header{padding:1rem!important}.cardapio-title{font-size:1.5rem!important}.product-grid{grid-template-columns:1fr!important;gap:.75rem!important}.product-card{padding:.75rem!important}.product-card:hover{transform:translateY(-4px) scale(1.01)}.cart-button{font-size:.875rem!important;padding:.5rem 1rem!important}.category-tabs{overflow-x:auto!important;-webkit-overflow-scrolling:touch}}@media (max-width:640px){.cardapio-header{flex-direction:column!important;gap:.75rem!important}.search-input{width:100%!important}.product-image-container{height:200px!important}}.cardapio-gradient-bg{background:linear-gradient(135deg,#667eea,#764ba2)}.product-card-modern{background:linear-gradient(135deg,#ffffff,#f8f9fa);border:2px solid transparent;background-clip:padding-box;position:relative}.product-card-modern:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:linear-gradient(135deg,#667eea,#764ba2);z-index:-1;opacity:0;transition:opacity .3s}.product-card-modern:hover:before{opacity:1}.badge-promo{background:linear-gradient(135deg,#f093fb,#f5576c);animation:pulse-badge 2s infinite}.badge-novo{background:linear-gradient(135deg,#4facfe,#00f2fe)}.badge-popular{background:linear-gradient(135deg,#fa709a,#fee140)}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.price-tag{padding:.5rem 1rem;border-radius:9999px;font-weight:700;font-size:1.125rem}.btn-add-modern,.price-tag{background:linear-gradient(135deg,#667eea,#764ba2);color:white;box-shadow:0 4px 15px rgba(102,126,234,.4)}.btn-add-modern{border:none;padding:.75rem 1.5rem;border-radius:9999px;font-weight:600;transition:all .3s}.btn-add-modern:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,.6)}.cardapio-header-modern{background:linear-gradient(135deg,#667eea,#764ba2);color:white;padding:2rem;border-radius:1rem;box-shadow:0 10px 30px rgba(102,126,234,.3)}.category-tab{transition:all .3s;padding:.5rem 1.5rem}.category-tab:hover{transform:translateY(-2px)}.category-tab.active,.category-tab:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:white}.category-tab.active{box-shadow:0 4px 15px rgba(102,126,234,.4)}.cart-floating{position:fixed;bottom:2rem;right:2rem;background:linear-gradient(135deg,#f093fb,#f5576c);color:white;padding:1rem 1.5rem;border-radius:9999px;box-shadow:0 8px 25px rgba(245,87,108,.5);z-index:1000;animation:bounce-cart 2s infinite}@keyframes bounce-cart{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.glass-effect{background:rgba(255,255,255,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}.shadow-purple{box-shadow:0 10px 30px rgba(102,126,234,.3)}.shadow-pink{box-shadow:0 10px 30px rgba(245,87,108,.3)}.shadow-blue{box-shadow:0 10px 30px rgba(79,172,254,.3)}.text-gradient{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text}.text-gradient,.text-gradient-pink{-webkit-text-fill-color:transparent}.text-gradient-pink{background:linear-gradient(135deg,#f093fb,#f5576c);-webkit-background-clip:text;background-clip:text}.product-card-horizontal{background:white;border-radius:1.25rem;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.06);transition:all .3s ease;border:1px solid #e5e7eb;padding:1.5rem;gap:1.5rem}.product-card-horizontal:hover{box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-2px);border-color:#d1d5db}.product-card-horizontal .product-info{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:.5rem;min-width:0;padding:.5rem 0}.product-card-horizontal .product-image-wrapper{width:160px;min-width:160px;height:160px;position:relative;overflow:hidden;background:#f9fafb;border-radius:1rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}.product-card-horizontal .product-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease;border-radius:1rem}.product-card-horizontal:hover .product-image-wrapper img{transform:scale(1.1)}.btn-select-modern{background:#2563eb;color:white;padding:.625rem 1.25rem;border-radius:.5rem;font-weight:600;transition:all .2s;width:100%}.btn-select-modern:hover{background:#1d4ed8;box-shadow:0 4px 12px rgba(37,99,235,.3)}.product-card-horizontal{display:flex;flex-direction:row}@media (max-width:640px){.product-card-horizontal{flex-direction:column}.product-card-horizontal .product-image-wrapper{width:100%;height:200px}.product-card-horizontal .product-info{padding:1rem}}.product-card-horizontal.product-card{animation:fadeInUp .5s ease-out forwards;opacity:0}.shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%;animation:shimmer 1.5s infinite}img{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.image-container{position:relative;overflow:hidden;background-color:#f9fafb}.image-container:before{content:"";display:block;padding-top:100%}.image-container img{position:absolute;top:0;left:0;width:100%;height:100%}@keyframes shine{0%{background-position:-200%}to{background-position:200%}}@keyframes coupon-shine{0%{background-position:-200%}to{background-position:200%}}.shine-effect{background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);background-size:200% 100%;animation:shine 2s infinite}.image-container img{object-fit:cover}.pizza-preview{position:relative;border-radius:9999px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.15);background:#f3f4f6;flex-shrink:0}.pizza-slice{position:absolute;top:0;left:0;width:100%;height:100%;transition:filter .2s ease}.pizza-slice:hover{filter:brightness(1.08)}:root{--brand:#2563eb;--brand-dark:#1d4ed8;--brand-light:#eff6ff;--brand-mid:#bfdbfe;--surface:#ffffff;--surface-2:#f9fafb;--border:#e5e7eb;--border-hover:#d1d5db;--text-1:#111827;--text-2:#374151;--text-3:#6b7280;--text-4:#9ca3af;--success:#16a34a;--danger:#dc2626;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-brand:0 4px 14px rgba(37,99,235,.18);--cap-title:clamp(1.0625rem,3.4vw,1.375rem);--cap-sub:clamp(0.6875rem,2.8vw,0.8125rem)}.cardapio-heading-solid{font-size:var(--cap-title);font-weight:800;letter-spacing:-.02em;color:var(--text-1);margin:0 0 .375rem;line-height:1.2}@media (min-width:768px){.cardapio-heading-solid{margin-bottom:.5rem}}.cardapio-heading-gradient-blue{font-size:var(--cap-title);font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0 0 .375rem;background:linear-gradient(90deg,#2563eb,#1e40af);-webkit-background-clip:text;background-clip:text;color:transparent}@media (min-width:768px){.cardapio-heading-gradient-blue{margin-bottom:.5rem}}.cardapio-heading-gradient-warm{font-size:var(--cap-title);font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0 0 .375rem;background:linear-gradient(90deg,#dc2626,#ea580c);-webkit-background-clip:text;background-clip:text;color:transparent}.cardapio-lead-muted{font-size:var(--cap-sub);color:var(--text-3);line-height:1.45}.cardapio-block-title{font-size:clamp(.8125rem,3vw,.9375rem);font-weight:700;letter-spacing:-.01em;color:var(--text-1);line-height:1.25}.cardapio-hint-micro{font-size:clamp(.625rem,2.6vw,.6875rem);color:var(--text-4);line-height:1.4}.cardapio-anchor-strip{min-height:2.625rem}@media (min-width:768px){.cardapio-anchor-strip{min-height:3.25rem}}.cardapio-anchor-tab{font-size:clamp(.6875rem,2.6vw,.8125rem);font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1.2}@media (min-width:768px){.cardapio-anchor-tab{font-size:.875rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:center;gap:.5rem;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;animation:fadeInUp .35s ease-out both;min-height:92px;-webkit-tap-highlight-color:transparent}.product-card:first-child{animation-delay:.04s}.product-card:nth-child(2){animation-delay:.08s}.product-card:nth-child(3){animation-delay:.12s}.product-card:nth-child(4){animation-delay:.16s}.product-card:nth-child(5){animation-delay:.2s}.product-card:nth-child(6){animation-delay:.24s}.product-card:nth-child(7){animation-delay:.28s}.product-card:nth-child(8){animation-delay:.32s}.product-card:focus-visible,.product-card:hover{border-color:var(--brand-mid);box-shadow:var(--shadow-md);transform:translateY(-2px)}.product-card:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.product-card:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.product-card .product-info{flex:1;min-width:0;padding:.9375rem .875rem;display:flex;flex-direction:column;justify-content:space-between;gap:.25rem}@media (min-width:640px){.product-card .product-info{padding:.875rem 1rem}}.product-card .product-image-wrapper{width:clamp(72px,25vw,96px);min-width:72px;height:clamp(72px,25vw,96px);position:relative;overflow:hidden;border-radius:var(--radius-md);margin-right:.875rem;background:var(--surface-2);flex-shrink:0;display:flex;align-items:center;justify-content:center}.product-card .product-image,.product-card .product-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .35s cubic-bezier(.4,0,.2,1)}.product-card:hover .product-image,.product-card:hover .product-image-wrapper img{transform:scale(1.07)}.product-title-modern{font-size:clamp(.8125rem,3.6vw,.9375rem);font-weight:600;color:var(--text-1);line-height:1.25;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-description-modern{font-size:clamp(.6875rem,3vw,.8125rem);color:var(--text-3);line-height:1.4;margin:0}.product-price-modern{font-size:clamp(.8125rem,3.6vw,.9375rem);font-weight:700;color:var(--text-1);display:flex;align-items:baseline;flex-wrap:wrap;gap:.15rem .35rem;line-height:1.3}.product-price-label{font-size:clamp(.625rem,2.8vw,.6875rem);font-weight:500;color:var(--text-3);margin-right:0;max-width:100%}.product-price-modern .price-value{white-space:nowrap;font-variant-numeric:tabular-nums}.price-value{font-weight:700;color:var(--text-1);font-variant-numeric:tabular-nums}.product-price-row-cta{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem .35rem;line-height:1.3}.product-price-label-cta{font-size:clamp(.625rem,2.8vw,.6875rem);font-weight:600;color:var(--text-3);text-transform:none;letter-spacing:0}.product-price-cta{font-size:clamp(.75rem,3.4vw,.8125rem);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums;min-width:0}.badge-size-modern,.product-price-cta{color:var(--brand);display:inline-flex;align-items:center}.badge-size-modern{background:var(--brand-light);padding:.1rem .45rem;border-radius:4px;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;width:fit-content}.product-image-placeholder{font-size:.8125rem;padding:1rem;border-radius:var(--radius-md);min-height:112px;width:100%;height:100%;gap:.375rem}.product-image-placeholder,.product-image-placeholder-small{background:linear-gradient(135deg,var(--surface-2) 0,var(--border) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-4);text-align:center}.product-image-placeholder-small{font-size:.75rem;padding:.5rem;border-radius:var(--radius-sm);min-height:80px;gap:.25rem}.product-image-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e4e4e4 50%,#f0f0f0 75%);background-size:200px 100%;animation:shimmer 1.4s infinite}.flavor-card-compact{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.625rem .75rem;cursor:pointer;transition:all .15s ease;user-select:none}.flavor-card-compact:hover{border-color:var(--brand-mid);background:var(--surface-2)}.flavor-card-compact.selected{border-color:var(--brand);background:var(--brand-light);box-shadow:0 0 0 1px var(--brand)}.fc-row{display:flex;align-items:flex-start;gap:.75rem}.fc-input-wrapper{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.125rem}.fc-input-checkbox,.fc-input-radio{width:1rem;height:1rem;accent-color:var(--brand);cursor:pointer}.fc-body{flex:1;min-width:0}.fc-title{font-size:clamp(.8125rem,3vw,.875rem);font-weight:600;color:var(--text-1);margin:0;line-height:1.2}.fc-desc{font-size:clamp(.6875rem,2.8vw,.75rem);color:var(--text-3);margin:.125rem 0 0;line-height:1.35}.fc-price{flex-shrink:0;text-align:right;margin-top:.0625rem}.fc-price-value{font-size:clamp(.75rem,3vw,.8125rem);font-weight:600;color:var(--text-2)}.selected .fc-price-value{color:var(--brand-dark)}.modal-option-group-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:#f1f5f9;border-radius:.5rem;margin-bottom:.75rem}.group-title{font-size:.8125rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.025em}.group-badge{font-size:.625rem;font-weight:800;padding:.125rem .375rem;border-radius:4px}.group-badge.required{background:#1e293b;color:#fff}.group-badge.done{background:#22c55e;color:#fff}.group-badge.optional{background:#e2e8f0;color:#64748b}.product-grid-horizontal{display:flex;flex-direction:column;gap:clamp(.875rem,2.2vw,1.25rem);max-width:100%;margin:0}.product-grid-horizontal>.product-card{align-items:center!important;border-radius:var(--radius-lg)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-sm)!important;margin:0!important}.product-grid-horizontal>.product-card:first-child{border-top-left-radius:var(--radius-lg)!important;border-top-right-radius:var(--radius-lg)!important}.product-grid-horizontal>.product-card:last-child{border-bottom:none!important;border-bottom-left-radius:var(--radius-lg)!important;border-bottom-right-radius:var(--radius-lg)!important}.product-grid-horizontal>.product-card:focus-visible,.product-grid-horizontal>.product-card:hover{transform:none!important;box-shadow:none!important;border-color:transparent!important;background:var(--surface-2)!important}.product-grid-horizontal .product-title-modern{font-weight:700!important;text-transform:uppercase;letter-spacing:.02em}.product-grid-horizontal .product-card .product-image,.product-grid-horizontal .product-card .product-image-wrapper,.product-grid-horizontal .product-card .product-image-wrapper img{border-radius:var(--radius-md)!important}@media (min-width:1024px){.product-card .product-image-wrapper{width:112px;min-width:112px;height:112px}.product-title-modern{font-size:.9375rem}.product-description-modern{font-size:.8125rem}.product-price-modern{font-size:.9375rem}.product-price-cta{font-size:.8125rem}}@media (min-width:1280px){.product-price-modern,.product-title-modern{font-size:1rem}.product-price-cta{font-size:.875rem}}@media (max-width:768px){.product-grid-horizontal{gap:clamp(.75rem,3.5vw,1rem)!important}}.cardapio-section-title{font-size:var(--cap-title);font-weight:800;color:var(--text-1);letter-spacing:-.02em;line-height:1.2;margin-bottom:.25rem}.cardapio-section-subtitle{font-size:var(--cap-sub);color:var(--text-3);line-height:1.45;max-width:42rem;text-wrap:balance}.cardapio-section-subtitle-muted{color:var(--text-4)}.category-tabs-wrapper{position:sticky;top:0;z-index:30;background:rgba(249,250,251,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.category-tabs{display:flex;gap:.25rem;overflow-x:auto;padding:.625rem 1rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;mask-image:linear-gradient(90deg,transparent 0,#000 1rem,#000 calc(100% - 2rem),transparent);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 1rem,#000 calc(100% - 2rem),transparent)}.category-tabs::-webkit-scrollbar{display:none}.category-tab{flex-shrink:0;scroll-snap-align:start;padding:.4rem 1rem;border-radius:9999px;font-size:clamp(.6875rem,2.6vw,.8125rem);font-weight:700;color:var(--text-3);background:transparent;border:1.5px solid var(--border);cursor:pointer;transition:all .16s ease;white-space:nowrap;-webkit-tap-highlight-color:transparent}.category-tab:hover{border-color:var(--brand-mid);color:var(--brand);background:var(--brand-light)}.category-tab.active{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:var(--shadow-brand)}.cardapio-container{max-width:1440px;margin:0 auto;padding:1.25rem 1rem}@media (max-width:640px){.cardapio-container{padding:.75rem .875rem}}.btn-select-modern{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;background:var(--brand);color:#fff;padding:.5rem 1.125rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:700;border:none;cursor:pointer;transition:background .16s ease,transform .16s ease,box-shadow .16s ease;-webkit-tap-highlight-color:transparent}.btn-select-modern:hover{background:var(--brand-dark);transform:translateY(-1px);box-shadow:var(--shadow-brand)}.btn-select-modern:active{transform:translateY(0);box-shadow:none}.pizza-builder-card{display:flex;align-items:center;padding:1rem;gap:1rem;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-xl);cursor:pointer;transition:all .18s ease;-webkit-tap-highlight-color:transparent}.pizza-builder-card:hover{border-color:var(--brand-mid);box-shadow:var(--shadow-md);transform:translateY(-2px)}.pizza-builder-card .builder-img{width:80px;height:80px;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0;background:var(--surface-2)}.pizza-builder-card .builder-img img{width:100%;height:100%;object-fit:cover}.badge-promo{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.badge-novo{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.badge-popular{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.glass-header{background:rgba(255,255,255,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.5)}@keyframes badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.badge-pulse{animation:badge-pulse 2s ease-in-out infinite}@keyframes pulse-attention{0%,to{transform:scale(1);box-shadow:0 0 0 0 rgba(34,197,94,.7)}50%{transform:scale(1.02);box-shadow:0 0 0 10px rgba(34,197,94,0)}}.pulse-attention{animation:pulse-attention 2s infinite}@media (prefers-reduced-motion:reduce){.btn-select-modern,.category-tab,.product-card,.product-card *{animation:none!important;transition:none!important}}.custom-scrollbar::-webkit-scrollbar{width:5px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:#e2e8f0 transparent}