*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}:root{--font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-display: 24px;--text-title: 22px;--text-subtitle: 16px;--text-body: 14px;--text-body-sm: 13px;--text-caption: 12px;--text-micro: 11px;--text-nano: 10px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.5;--leading-relaxed: 1.6;--color-brand: #1E3A5F;--color-brand-alpha: rgba(30, 58, 95, .85);--color-brand-light: rgba(30, 58, 95, .08);--color-brand-glow: rgba(30, 58, 95, .12);--color-brand-dark: #1E3A5F;--color-wholesale: #5a1730;--color-wholesale-alpha: rgba(90, 23, 48, .85);--color-wholesale-light: rgba(90, 23, 48, .08);--color-wholesale-glow: rgba(90, 23, 48, .12);--color-wholesale-dark: #5a1730;--color-promo: #f93a25;--color-combo: #fc6200;--color-success: #1fc70a;--color-bg: #fff;--color-surface: #f6f6f6;--color-surface-elevated: #ededee;--color-border: #e4e4e5;--color-border-light: #ededee;--color-text: #202125;--color-text-secondary: #202125a3;--color-text-muted: #20212566;--color-text-placeholder: #2021257a;--space-0: 0px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-none: 0px;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 9999px;--height-touch: 44px;--height-input: 48px;--height-button: 48px;--height-button-sm: 36px;--height-button-xs: 32px;--height-header: 56px;--height-tab: 44px;--height-card-list: 88px;--height-card-image: 70px;--height-card-showcase: 220px;--size-category-icon: 76px;--width-category-card: 80px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 32px rgba(0, 0, 0, .16);--shadow-brand: 0 4px 14px rgba(105, 27, 55, .25);--shadow-floating: 0 8px 32px rgba(0, 0, 0, .2);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .4s;--duration-slower: .5s;--transition-fast: var(--duration-fast) var(--ease-out);--transition-normal: var(--duration-normal) var(--ease-out);--transition-slow: var(--duration-slow) var(--ease-out);--transition-spring: var(--duration-slow) var(--ease-spring);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-floating-button: 800;--z-toast: 900;--z-overlay: 1000;--app-max-width: 100%;--page-padding: var(--space-4);--height-floating-cart-expanded: 130px;--height-floating-cart-dot: 70px;color-scheme:light;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;text-rendering:optimizeLegibility}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-family);font-size:var(--text-body);line-height:var(--leading-normal);color:var(--color-text);background-color:var(--color-bg);min-height:100%;overflow:hidden;width:100%;transition:none!important;backface-visibility:hidden;transform:none!important;touch-action:pan-y}body{font-family:var(--font-family);min-height:100%;min-height:100dvh;overflow:hidden;width:100%;overscroll-behavior:none;-webkit-overflow-scrolling:touch;background-color:var(--color-bg)}img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;pointer-events:auto}body:before{content:"";position:fixed;left:0;right:0;top:0;height:calc(env(safe-area-inset-top,0px) + 2px);background:var(--status-bar-color, var(--color-bg, #ffffff));pointer-events:none;z-index:99999}body:after{content:"";position:fixed;left:0;right:0;bottom:0;height:1px;background:var(--color-bg);pointer-events:none;z-index:1}@supports (-webkit-touch-callout: none){.ios-no-blur{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background-color:#fffffff2!important}}#root{width:100%;min-height:100dvh}@supports (-webkit-touch-callout: none){input,textarea,select{font-size:16px!important}}.app-shell{width:100%;max-width:var(--app-max-width);min-height:100dvh;margin:0 auto;display:flex;flex-direction:column;background:var(--color-bg);position:relative;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right)}.app-content{flex:1;display:flex;flex-direction:column}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.touch-target{min-width:var(--height-touch);min-height:var(--height-touch)}.btn-interactive{transition:transform var(--transition-fast);-webkit-tap-highlight-color:transparent}.btn-interactive:active{transform:scale(.96)}.card-interactive{transition:transform var(--transition-normal);-webkit-tap-highlight-color:transparent}.card-interactive:active{transform:scale(.98)}.safe-bottom{padding-bottom:max(var(--space-4),var(--safe-bottom))}.safe-top{padding-top:max(var(--space-4),var(--safe-top))}.floating-cart-spacer-expanded{height:calc(var(--height-floating-cart-expanded) + var(--safe-bottom));flex-shrink:0;pointer-events:none}.floating-cart-spacer-dot{height:calc(var(--height-floating-cart-dot) + var(--safe-bottom));flex-shrink:0;pointer-events:none}.page-container{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;background-color:var(--color-bg)}.page-scroll-area{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.page-sticky-header{flex-shrink:0;background-color:var(--color-bg);z-index:10}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.fade-in{animation:fadeIn var(--duration-normal) var(--ease-out) forwards}.fade-in-up{animation:fadeInUp var(--duration-slow) var(--ease-out) forwards}.slide-up{animation:slideUp var(--duration-slow) var(--ease-out) forwards}.float-entrance{animation:fadeInUp .4s var(--ease-spring) forwards}.spinner{width:var(--height-button-sm);height:var(--height-button-sm);border:3px solid var(--color-brand-light);border-top-color:var(--color-brand);border-radius:50%;animation:spin .8s linear infinite}.skeleton{background:linear-gradient(90deg,var(--color-surface) 25%,#ebebed 50%,var(--color-surface) 75%);background-size:200% 100%;animation:shimmer 1.8s ease-in-out infinite;border-radius:var(--radius-sm)}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.cv{content-visibility:auto;contain-intrinsic-size:auto 500px}.cv-sm{content-visibility:auto;contain-intrinsic-size:auto 200px}.cv-lg{content-visibility:auto;contain-intrinsic-size:auto 800px}.momentum{-webkit-overflow-scrolling:touch}.scroll-container{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;transform:translateZ(0)}[data-scroll-root]{scroll-behavior:auto}.group-card{transform:translateZ(0) translateY(0) scale(1);transition:transform .25s cubic-bezier(.4,0,.2,1)}.group-card:hover{transform:translateZ(0) translateY(-3px) scale(1.01)}.group-card:active{transform:translateZ(0) scale(.98)}.product-card{transform:translateZ(0);transition:transform .3s cubic-bezier(.4,0,.2,1)}.product-card:active{transform:translateZ(0) scale(.98)}.qty-btn{transform:translateZ(0) scale(1);transition:transform .15s ease,opacity .15s ease}.qty-btn:hover{opacity:.8}.qty-btn:active{transform:translateZ(0) scale(.9)}.floating-btn{transform:translate(-50%) translateZ(0);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease}.floating-btn:active{transform:translate(-50%) translateZ(0) scale(.98)}@media(hover:none)and (pointer:coarse){.group-card:hover,.product-card:hover,.add-to-cart-btn:hover,.qty-btn:hover,.carousel-item:hover{transform:translateZ(0)}.group-card,.product-card,.add-to-cart-btn,.qty-btn,.carousel-item{transition-duration:.1s}}.skeleton-shimmer{background:linear-gradient(90deg,var(--bg-surface) 25%,#e8e8e8 50%,var(--bg-surface) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.modal-overlay{opacity:0;transition:opacity .3s ease}.modal-overlay.visible{opacity:1}.modal-content.visible{transform:translateY(0) translateZ(0)}[data-scroll-container]{contain:layout style paint;isolation:isolate}.page-fade-in{animation:pageFadeIn .4s cubic-bezier(.16,1,.3,1) both}@keyframes pageFadeIn{0%{opacity:0;transform:translate3d(0,6px,0)}to{opacity:1;transform:translateZ(0)}}.carousel-item-enter{opacity:0;transform:translateY(10px) scale(.92);will-change:transform,opacity;animation:carouselItemReveal .5s cubic-bezier(.22,1,.36,1) forwards;animation-delay:calc(.18s + var(--carousel-index, 0) * 55ms)}@keyframes carouselItemReveal{0%{opacity:0;transform:translateY(10px) scale(.92)}65%{opacity:1;transform:translateY(-2px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}.sticky-domino-enter{opacity:0;transform:translate3d(50px,0,0) scale(.84);animation:stickyDominoAnim 1.2s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(var(--domino-offset, 0s) + var(--carousel-index, 0) * .28s)}@keyframes stickyDominoAnim{0%{opacity:0;transform:translate3d(50px,0,0) scale(.84)}40%{opacity:1}to{opacity:1;transform:translateZ(0) scale(1)}}.btn-interactive{position:relative;transform:translateZ(0) scale(1);transition:transform .15s cubic-bezier(.34,1.56,.64,1),opacity .15s ease;-webkit-tap-highlight-color:transparent;touch-action:manipulation;backface-visibility:hidden}.btn-interactive:active{transform:translateZ(0) scale(.96);opacity:.9}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.img-wrapper{position:relative;overflow:hidden;background-color:#f5f5f5}.img-wrapper img{opacity:0;transition:opacity .3s ease}.img-wrapper img.loaded{opacity:1}.header-animate{animation:headerSlideDown .35s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes headerSlideDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}.overlay-fade{animation:overlayFadeIn .25s ease forwards}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.float-entrance{animation:floatUp .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes floatUp{0%{opacity:0;transform:translate(-50%) translate3d(0,30px,0) scale(.9)}to{opacity:1;transform:translate(-50%) translateZ(0) scale(1)}}.card-interactive{transform:translateZ(0) scale(1);transition:transform .25s cubic-bezier(.16,1,.3,1);-webkit-tap-highlight-color:transparent}.card-interactive:active{transform:translateZ(0) scale(.97)}@media(hover:hover)and (pointer:fine){.card-interactive:hover{transform:translateZ(0) translateY(-2px) scale(1.01)}}.spinner{width:40px;height:40px;border:3px solid #f0f0f0;border-top-color:var(--brand-color, #5a1730);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pulse{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.stagger-container>*,.page-enter,.page-fade-in,.section-reveal{opacity:1;transform:none}}.perf-isolated{contain:layout style paint;isolation:isolate}.gpu-layer{transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:antialiased}.scroll-optimized{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;transform:translateZ(0)}@keyframes springScaleIn{0%{opacity:0;transform:translate3d(0,16px,0)}to{opacity:1;transform:translateZ(0)}}.stagger-animate .stagger-item{opacity:0;transform:translate3d(0,16px,0);animation:springScaleIn .28s cubic-bezier(.4,0,.2,1) forwards;animation-delay:calc(var(--stagger-offset, 0s) + .02s + var(--stagger-index, 0) * 45ms)}.virtual-stagger-enter{opacity:0;animation:springScaleIn .28s cubic-bezier(.4,0,.2,1) forwards;animation-delay:calc(var(--stagger-offset, 0s) + .02s + var(--stagger-index, 0) * 45ms)}.virtual-fade-enter{animation:contentReveal .35s cubic-bezier(.16,1,.3,1) both}@keyframes contentReveal{0%{opacity:0}to{opacity:1}}.content-reveal{animation:contentReveal .35s cubic-bezier(.16,1,.3,1) both}@keyframes revealUp{0%{opacity:0;transform:translate3d(0,12px,0) scale(.85)}50%{opacity:1}to{opacity:1;transform:translateZ(0) scale(1)}}.reveal-up{animation:revealUp .65s cubic-bezier(.16,1,.3,1) both}@keyframes homeShowcaseFadeDown{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes homeBannerZoomIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes homeCategoryFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes homeSearchFade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.home-spring-paused>.home-section{animation-play-state:paused!important}.home-spring-cascade>.home-section{will-change:transform,opacity}@keyframes blurRevealUp{0%{opacity:0;transform:translateY(20px)}60%{opacity:1;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@keyframes blurRevealScale{0%{opacity:0;transform:scale(.92)}60%{opacity:1;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}@keyframes blurRevealFade{0%{opacity:0}to{opacity:1}}.home-spring-cascade>.home-section:nth-child(1){opacity:0;animation:blurRevealFade .5s cubic-bezier(.22,1,.36,1) forwards;animation-delay:0s}.home-spring-cascade>.home-section:nth-child(2){opacity:0;transform:translateY(20px);animation:blurRevealUp .55s cubic-bezier(.22,1,.36,1) forwards;animation-delay:.12s}.home-spring-cascade>.home-section:nth-child(3){opacity:0;transform:scale(.92);animation:blurRevealScale .55s cubic-bezier(.22,1,.36,1) forwards;animation-delay:.28s}.home-spring-cascade>.home-section:nth-child(4){opacity:0;transform:translateY(20px);animation:blurRevealUp .55s cubic-bezier(.22,1,.36,1) forwards;animation-delay:.42s}.home-spring-cascade>.home-section:nth-child(5){opacity:0;transform:translateY(20px);animation:blurRevealUp .55s cubic-bezier(.22,1,.36,1) forwards;animation-delay:.55s}@keyframes skeletonPulse{0%,to{opacity:1}50%{opacity:.55}}.skeleton-pulse{animation:skeletonPulse 1.6s cubic-bezier(.4,0,.6,1) infinite}@keyframes skeletonShimmerPremium{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-shimmer-premium{background:linear-gradient(90deg,var(--color-surface) 0%,#e8e8ea 20%,var(--color-surface) 40%,var(--color-surface) 100%);background-size:200% 100%;animation:skeletonShimmerPremium 1.8s ease-in-out infinite,skeletonPulse 2.4s cubic-bezier(.4,0,.6,1) infinite}@media(prefers-reduced-motion:reduce){.stagger-animate .stagger-item,.content-reveal,.reveal-up,.carousel-item-enter,.home-spring-cascade>.home-section,.skeleton-pulse,.skeleton-shimmer-premium{opacity:1;animation:none;transform:none}}@keyframes sheetSlideIn{0%{transform:translateY(100%);opacity:.8}to{transform:translateY(0);opacity:1}}@keyframes sheetBackdropIn{0%{opacity:0}to{opacity:1}}.sheet-backdrop{transition:opacity .2s ease-out}.sheet-backdrop-enter{opacity:1}.sheet-panel{transition:transform .28s cubic-bezier(.4,0,.2,1),opacity .18s ease-out}.sheet-panel-enter{animation:sheetSlideIn .35s cubic-bezier(.32,.72,0,1) both;transition:none}.sheet-panel-exit{transform:translateY(100%)!important;opacity:.8!important}.sheet-backdrop-exit{opacity:0!important}@supports (height: 100dvh){:root{--vh-full: 100dvh;--vh-small: 100svh;--vh-large: 100lvh}}@supports not (height: 100dvh){:root{--vh-full: 100vh;--vh-small: 100vh;--vh-large: 100vh}}button,a,input,select,textarea,[role=button],[tabindex]:not([tabindex="-1"]){-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.touch-target-44{min-width:44px;min-height:44px}.no-select{user-select:none;-webkit-user-select:none}.press-feedback{transition:transform .1s ease,opacity .1s ease}.press-feedback:active{transform:scale(.97);opacity:.9}.ios-stable{transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;-webkit-transform:translateZ(0)}.header-stable{transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:auto}@supports (backdrop-filter: blur(12px)){.blur-supported{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-color:#ffffffd9}}@supports not (backdrop-filter: blur(12px)){.blur-supported{background-color:#fffffffa}}.reduce-blur,.ios-no-blur{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background-color:#fffffffa!important}.no-subpixel-gap{transform:translateZ(0)}.img-fade.loaded{opacity:1}.img-zoom-in.loaded{transform:scale(1)}.carousel-snap{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none;transform:translateZ(0);scroll-padding-left:16px}.carousel-snap::-webkit-scrollbar{display:none}.carousel-snap-proximity{scroll-snap-type:x proximity}.sheet-overlay{position:fixed;inset:0;background-color:#0006;z-index:var(--z-modal-backdrop, 400);animation:overlayFadeIn .2s ease forwards}.sheet-content{transform:translate3d(0,100%,0);animation:sheetSlideUp .3s cubic-bezier(.33,1,.68,1) forwards}@keyframes sheetSlideUp{0%{transform:translate3d(0,100%,0)}to{transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.page-ios-enter,.page-ios-exit,.sheet-content,.sheet-overlay{animation:none!important;transition:none!important}.sheet-content{transform:none}}.floating-safe{bottom:calc(var(--space-4) + var(--safe-bottom, 0px))}@supports (-webkit-touch-callout: none){input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=number],textarea,select{font-size:16px!important}}input::-webkit-search-cancel-button{-webkit-appearance:none;height:20px;width:20px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E") center/contain no-repeat;cursor:pointer}.skeleton-premium{background:linear-gradient(90deg,var(--color-surface, #f5f5f7) 0%,#ebebeb 20%,var(--color-surface, #f5f5f7) 40%,var(--color-surface, #f5f5f7) 100%);background-size:200% 100%;animation:skeletonShimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm, 8px)}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-image{aspect-ratio:inherit;background:var(--color-surface, #f5f5f7);position:relative;overflow:hidden}.skeleton-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:imageShimmer 1.5s ease-in-out infinite}@keyframes imageShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.page-container,.app-content,main,[role=main]{touch-action:pan-y}.carousel-snap,.horizontal-scroll,.momentum,[data-scroll=horizontal],.hide-scrollbar[style*=overflowX]{touch-action:pan-x;overscroll-behavior-x:contain}.product-list-container,.scroll-container{touch-action:pan-y;overscroll-behavior-y:contain}.sheet-content,.modal-content,[role=dialog]{touch-action:pan-y;overscroll-behavior:contain}.edge-guard.left{left:0}.edge-guard.right{right:0}.edge-guard.wide{width:24px}@media(min-width:768px){.edge-guard{display:none}}.momentum{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}@supports (-webkit-touch-callout: none){.full-height-ios{min-height:100%;min-height:-webkit-fill-available}}input:focus,textarea:focus,select:focus{scroll-margin-bottom:120px;scroll-margin-top:20px}[style*="position: fixed"] input:focus,[style*="position: fixed"] textarea:focus{scroll-margin-bottom:160px}@supports (-webkit-touch-callout: none){input,textarea,select{font-size:max(16px,1em)}}input,textarea,select{scroll-snap-align:none}
