@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Poppins:wght@400;500;600;700;800&family=Delius&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=DM+Mono:wght@300;400;500&family=Crimson+Pro:ital,wght@0,400;1,400&display=swap";@font-face{font-family:Self Modern;src:url(/fonts/self-modern/regular/729abe2eee284cfc39d87d386216e1be.woff2) format("woff2"),url(/fonts/self-modern/regular/729abe2eee284cfc39d87d386216e1be.woff) format("woff"),url(/fonts/self-modern/regular/729abe2eee284cfc39d87d386216e1be.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Self Modern;src:url(/fonts/self-modern/italic/f3ce67f6372d7319dc7e9993805cf5c9.woff2) format("woff2"),url(/fonts/self-modern/italic/f3ce67f6372d7319dc7e9993805cf5c9.woff) format("woff"),url(/fonts/self-modern/italic/f3ce67f6372d7319dc7e9993805cf5c9.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}:root{--faves-50: #FEF1F3;--faves-100: #FDE3E7;--faves-200: #FBC7D0;--faves-300: #F8ABB8;--faves-400: #F58EA1;--faves-500: #F1667B;--faves-600: #E04461;--faves-700: #C63350;--faves-800: #A02740;--faves-900: #7A1E32;--cream-50: #FFFEFB;--cream-100: #FFFCF7;--cream-200: #FFF9EF;--cream-300: #FFF5E7;--cream-400: #FFF2DF;--cream-500: #FFEFCF;--cream-600: #F5E3B8;--cream-700: #E6D19A;--cream-800: #D1BA7D;--cream-900: #B39F60;--mint-50: #F1F9F5;--mint-100: #E3F3EB;--mint-200: #C7E7D7;--mint-300: #ABDBC3;--mint-400: #8FCFAF;--mint-500: #89C8AB;--mint-600: #6BAA8F;--mint-700: #548976;--mint-800: #3F6B5A;--mint-900: #2D4E42;--neutral-50: #FAFAFA;--neutral-100: #F5F5F5;--neutral-200: #E5E5E5;--neutral-300: #D4D4D4;--neutral-400: #A3A3A3;--neutral-500: #737373;--neutral-600: #525252;--neutral-700: #404040;--neutral-800: #262626;--neutral-900: #171717;--neutral-950: #0A0A0A;--destructive-50: #FEF2F2;--destructive-100: #FEE2E2;--destructive-200: #FECACA;--destructive-300: #FCA5A5;--destructive-400: #F87171;--destructive-500: #EF4444;--destructive-600: #DC2626;--destructive-700: #B91C1C;--destructive-800: #991B1B;--destructive-900: #7F1D1D;--background: #FFFFFF;--surface: #F6F6F6;--foreground: #3C3C3B;--text-secondary: #867F7F;--text-light: #A8A8A8;--primary: var(--mint-500);--primary-rgb: 137, 200, 171;--primary-dark: #699A83;--primary-light: #A8DCC4;--primary-foreground: #FFFFFF;--secondary: var(--mint-500);--secondary-dark: #6BAA8F;--secondary-foreground: #FFFFFF;--favorite: var(--faves-500);--favorite-rgb: 241, 102, 123;--rating: #F4A261;--border: #E0E0E0;--border-light: #F0F0F0;--input: var(--border);--ring: var(--mint-500);--card: #F6F6F6;--card-foreground: #3C3C3B;--muted: #F6F6F6;--muted-foreground: #867F7F;--muted-50: var(--neutral-50);--destructive: var(--destructive-600);--destructive-foreground: #FFFFFF;--font-sans: "Plus Jakarta Sans", "Inter", system-ui, -apple-system, sans-serif;--font-display: "Plus Jakarta Sans", "Poppins", system-ui, -apple-system, sans-serif;--font-logo: "Delius", cursive;--font-serif: "Self Modern", "Crimson Pro", Georgia, serif;--font-mono: "DM Mono", monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(137, 200, 171, .3);--z-base: 0;--z-dropdown: 10;--z-sticky: 20;--z-fixed: 30;--z-modal-backdrop: 40;--z-modal: 50;--z-popover: 60;--z-tooltip: 70;--z-toast: 80;--z-max: 9999;--login-bg: linear-gradient(135deg, #FFFEFB 0%, #FFF9EF 25%, #FEF1F3 50%, #FFFCF7 75%, #FDE3E7 100%)}.dark{--background: #1A1A1A;--surface: #2A2A2A;--foreground: #EFEFEF;--text-secondary: #B8B8B8;--text-light: #808080;--border: #404040;--border-light: #353535;--input: var(--border);--card: #2A2A2A;--card-foreground: #EFEFEF;--muted: #2A2A2A;--muted-foreground: #B8B8B8;--destructive: var(--destructive-500);--destructive-foreground: #FFFFFF;--login-bg: linear-gradient(135deg, #1a1a1a 0%, #2d1a1f 30%, #1f1616 60%, #1a1a1a 100%)}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-gutter:stable;overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--background);color:var(--foreground);min-height:100vh;line-height:1.5;transition:color .3s ease;scrollbar-gutter:stable}.auth body{background:var(--login-bg)}.auth{background:var(--login-bg);scrollbar-gutter:auto}.auth body{scrollbar-gutter:auto}html:has(.landing-page),html:has(.landing-page) body{scrollbar-gutter:auto!important;overflow:hidden;margin:0;padding:0;height:100dvh;max-height:100dvh}.landing-page{scrollbar-gutter:auto!important;overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2}h1{font-size:clamp(1.75rem,5vw + .5rem,2.5rem)}h2{font-size:clamp(1.375rem,4vw + .5rem,2rem)}h3{font-size:clamp(1.125rem,3.5vw + .5rem,1.75rem)}h4{font-size:clamp(1rem,3vw + .25rem,1.5rem)}h5{font-size:clamp(.9375rem,2.5vw + .25rem,1.25rem)}h6{font-size:clamp(.875rem,2vw,1rem)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;line-height:1.25rem;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all .2s ease;font-family:var(--font-sans);white-space:nowrap}.btn:disabled{opacity:.5;pointer-events:none}.btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn-primary{background-color:var(--primary);color:var(--primary-foreground)}.btn-primary:hover{opacity:.9}.btn-gradient{background:linear-gradient(135deg,var(--faves-500) 0%,var(--faves-400) 100%);color:#fff;box-shadow:var(--shadow-lg)}.btn-gradient:hover{transform:scale(1.02);box-shadow:var(--shadow-glow)}.btn-gradient:active{transform:scale(.98)}.btn-outline{background-color:transparent;border:1px solid var(--border);color:var(--foreground)}.btn-outline:hover{background-color:var(--muted)}.btn-ghost{background-color:transparent;color:var(--foreground)}.btn-ghost:hover{background-color:var(--muted)}.btn-destructive{background-color:var(--destructive-400);color:#fff}.btn-destructive:hover{opacity:.92}.btn-icon{width:2.25rem;height:2.25rem;padding:0;border-radius:var(--radius-full)}.btn-sm{min-height:44px;height:max(44px,2rem);padding:0 .75rem;font-size:.75rem}.btn-lg{min-height:44px;height:max(44px,2.5rem);padding:0 2rem}.input{width:100%;min-height:44px;height:max(44px,2.25rem);padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;background-color:transparent;border:1px solid var(--input);border-radius:var(--radius-md);color:var(--foreground);transition:all .2s ease;font-family:var(--font-sans)}.input:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px #89c8ab1a}.input::placeholder{color:var(--muted-foreground)}.input:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){input,textarea,select,.input{font-size:16px!important}}.input:-webkit-autofill,.input:-webkit-autofill:hover,.input:-webkit-autofill:focus,.input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--card) inset!important;-webkit-text-fill-color:var(--foreground)!important;transition:background-color 5000s ease-in-out 0s;caret-color:var(--foreground)}.textarea{width:100%;min-height:5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.5;background-color:transparent;border:1px solid var(--input);border-radius:var(--radius-md);color:var(--foreground);transition:all .2s ease;font-family:var(--font-sans);resize:none}.textarea:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px #89c8ab1a}.textarea::placeholder{color:var(--muted-foreground)}.textarea:disabled{opacity:.5;cursor:not-allowed}.select{width:100%;height:2.25rem;padding:.5rem 2rem .5rem .75rem;font-size:.875rem;line-height:1.25rem;background-color:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23737373' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.25rem;border:1px solid var(--input);border-radius:var(--radius-md);color:var(--foreground);transition:all .2s ease;font-family:var(--font-sans);appearance:none;cursor:pointer}.select:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px #89c8ab1a}.select:disabled{opacity:.5;cursor:not-allowed}.dark .select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23A3A3A3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E")}.label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--foreground)}.card{background-color:var(--card);color:var(--card-foreground);border-radius:var(--radius-xl);border:1px solid var(--border);box-shadow:var(--shadow-md)}.card-header{padding:1.5rem;display:flex;flex-direction:column;gap:.375rem}.card-title{font-size:1.5rem;font-weight:600;line-height:1;font-family:var(--font-display)}.card-description{font-size:.875rem;color:var(--muted-foreground)}.card-content{padding:0 1.5rem 1.5rem}.card-footer{padding:0 1.5rem 1.5rem;display:flex;align-items:center}.form-group{margin-bottom:1.5rem}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--muted-foreground);pointer-events:none}.input-with-icon{padding-left:2.5rem}.input-icon-right{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--muted-foreground);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:0}.input-icon-right--success{color:var(--ring)}.input-icon-right--error{color:var(--destructive)}.input-icon-right svg{display:block}.checkbox{width:1rem;height:1rem;border-radius:var(--radius-sm);border:1px solid var(--input);cursor:pointer;accent-color:var(--primary)}.checkbox:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.text-center{text-align:center}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.font-semibold{font-weight:600}.font-bold{font-weight:700}.rounded-full{border-radius:var(--radius-full)}.rounded-2xl{border-radius:var(--radius-2xl)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-glow{box-shadow:var(--shadow-glow)}.gradient-faves{background:linear-gradient(135deg,var(--faves-500) 0%,var(--faves-400) 100%)}.gradient-text{background:linear-gradient(135deg,var(--faves-500) 0%,var(--faves-400) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass{background:#fffc;backdrop-filter:blur(10px)}.dark .glass{background:#171717cc}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.02)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fadeIn{animation:fadeIn .3s ease-in-out}.animate-slideUp{animation:slideUp .3s ease-out}.animate-bounce{animation:bounce .5s ease-out}.animate-spin{animation:spin 1s linear infinite}.error-text{color:#ef4444;font-size:.875rem;margin-top:.5rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.btn-gradient:hover{transform:none!important}@keyframes checkboxPop{0%,to{transform:scale(1);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(0)}}}@media (hover: none) and (pointer: coarse){.btn-gradient:hover,.text-link:hover,.checkbox-box:hover,.modal-close-btn:hover,.select-trigger:hover,.select-item:hover{transform:none!important;background-color:transparent}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:var(--radius-full)}.dark ::-webkit-scrollbar-thumb{background:var(--neutral-700)}::-webkit-scrollbar-thumb:hover{background:var(--neutral-400)}.dark ::-webkit-scrollbar-thumb:hover{background:var(--neutral-600)}.text-link{background:none;border:none;color:var(--primary);font-size:.875rem;cursor:pointer;text-decoration:none;transition:all .2s ease;font-family:var(--font-sans)}.text-link:hover{text-decoration:underline;opacity:.8}.text-link:disabled{opacity:.5;cursor:not-allowed}.spinner{width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:var(--radius-full);animation:spin .8s linear infinite}.select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;height:2.25rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;background-color:transparent;border:1px solid var(--input);border-radius:var(--radius-md);color:var(--foreground);transition:all .2s ease;font-family:var(--font-sans);cursor:pointer;text-align:left}.select-trigger:hover{border-color:var(--ring)}.select-trigger:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px #89c8ab1a}.select-trigger:disabled{opacity:.5;cursor:not-allowed}.select-trigger[data-placeholder]{color:var(--muted-foreground)}.select-icon{color:var(--muted-foreground);transition:transform .2s ease}.select-trigger[data-state=open] .select-icon{transform:rotate(180deg)}.select-content{position:relative;z-index:9999;width:var(--radix-select-trigger-width);max-height:var(--radix-select-content-available-height);overflow:hidden;border-radius:var(--radius-md);border:1px solid var(--border);background-color:var(--card);color:var(--foreground);box-shadow:var(--shadow-lg);animation:slideUp .15s ease-out}.select-content[data-state=open]{animation:slideUp .15s ease-out}.select-content[data-state=closed]{animation:fadeOut .15s ease-in}.select-viewport{padding:.25rem}.select-label{padding:.375rem .5rem;font-size:.75rem;font-weight:600;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.select-item{position:relative;display:flex;align-items:center;width:100%;cursor:pointer;user-select:none;border-radius:var(--radius-sm);padding:.5rem .5rem .5rem 2rem;font-size:.875rem;outline:none;transition:all .2s ease}.select-item:hover{background-color:#89c8ab14}.select-item:focus{background-color:#89c8ab14}.select-item[data-state=checked]{background-color:#89c8ab1f;font-weight:500}.select-item[data-disabled]{opacity:.5;pointer-events:none}.select-item-indicator{position:absolute;left:.5rem;display:flex;align-items:center;justify-content:center;color:var(--mint-500)}.select-separator{margin:.25rem 0;height:1px;background-color:var(--border)}.checkbox-wrapper{display:flex;align-items:center;gap:.75rem;cursor:pointer;width:100%}.checkbox-wrapper.checkbox-disabled{opacity:.5;cursor:not-allowed}.checkbox-box{width:1.125rem;height:1.125rem;min-width:1.125rem;min-height:1.125rem;border:2px solid var(--input);border-radius:var(--radius-sm);background-color:transparent!important;background:transparent!important;display:flex;align-items:center;justify-content:center;transition:border-color .2s ease,background-color .2s ease;cursor:pointer;flex-shrink:0;padding:0;margin:0;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.checkbox-box:not(.checkbox-checked){background-color:transparent!important;background:transparent!important}.checkbox-box:hover:not(:disabled),.checkbox-wrapper:hover .checkbox-box:not(:disabled){border-color:var(--favorite)}.checkbox-box:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.checkbox-box:disabled{cursor:not-allowed}.checkbox-checked{background-color:var(--favorite)!important;background:var(--favorite)!important;border-color:var(--favorite)!important}.checkbox-icon{color:#fff;animation:checkboxPop .2s ease-out}.checkbox-label{flex:1;font-size:.875rem;color:var(--foreground);user-select:none;cursor:pointer;line-height:1.5}@keyframes checkboxPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.toast-success{border-left:3px solid var(--mint-500)!important}.toast-success [data-icon]{color:var(--mint-500)!important}.toast-error{border-left:3px solid #EF4444!important}.toast-error [data-icon]{color:#ef4444!important}.toast-warning{border-left:3px solid #F59E0B!important}.toast-warning [data-icon]{color:#f59e0b!important}.toast-info{border-left:3px solid var(--mint-500)!important}.toast-info [data-icon]{color:var(--mint-500)!important}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:1rem;padding:2rem;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000004d;animation:slideUp .3s ease-out}.modal-content::-webkit-scrollbar{display:none}.modal-content{-ms-overflow-style:none;scrollbar-width:none}.dark .modal-content{background:var(--neutral-900)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--neutral-200)}.dark .modal-header{border-bottom-color:var(--neutral-700)}.modal-title{font-size:1.5rem;font-weight:700;color:var(--neutral-900);font-family:var(--font-display)}.dark .modal-title{color:var(--neutral-50)}.modal-close-btn{background:transparent;border:none;color:var(--neutral-400);cursor:pointer;padding:.5rem;border-radius:.5rem;transition:all .2s ease;font-size:1.5rem;line-height:1}.modal-close-btn:hover{background:var(--neutral-100);color:var(--neutral-900)}.dark .modal-close-btn:hover{background:var(--neutral-800);color:var(--neutral-50)}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--neutral-200)}.dark .modal-footer{border-top-color:var(--neutral-700)}.store-follow-btn{min-width:120px;padding:.625rem 1.5rem;font-weight:600;background:#db709333!important;color:#a8416b!important;border-color:#db709380!important;transition:background-color .18s cubic-bezier(.4,0,.2,1),color .18s cubic-bezier(.4,0,.2,1),border-color .18s cubic-bezier(.4,0,.2,1),box-shadow .16s ease,transform .16s ease;will-change:background-color,color,transform,box-shadow,border-color}.store-follow-btn:hover{background:#db70934d!important;border-color:#db7093b3!important}.store-follow-btn[disabled]{opacity:.6;cursor:not-allowed}.store-follow-btn.store-follow-btn--following{background:#89c8ab26!important;color:var(--mint-600)!important;border-color:#89c8ab4d!important}.store-follow-btn.store-follow-btn--following:hover{background:#89c8ab40!important;border-color:#89c8ab80!important}.store-follow-btn.is-hovering-unfollow .store-follow-btn-label{transition:opacity .14s ease,transform .14s ease;opacity:.96;transform:translateY(-1px)}.store-follow-btn.store-follow-btn--following.btn-destructive:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}@media (prefers-reduced-motion: reduce){.store-follow-btn,.store-follow-btn.is-hovering-unfollow .store-follow-btn-label{transition:none;transform:none}}*{will-change:auto!important}button:hover,a:hover,button:focus,a:focus{will-change:transform}.navbar,.floating-home-button,.product-feed-search-filters-wrapper{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.product-feed-search-filters-wrapper,.floating-home-button{transition-property:opacity,visibility!important;transition-duration:.2s!important;transform:none!important}.products-grid{transform:translateZ(0);backface-visibility:hidden}.products-grid-column{will-change:transform;backface-visibility:hidden}.product-card{contain:layout style paint;will-change:auto!important}@media (prefers-reduced-motion: no-preference){html:has(body::-webkit-scrollbar:active) *:not(.skeleton-image):not(.skeleton-line),html:has(body::-webkit-scrollbar-thumb:active) *:not(.skeleton-image):not(.skeleton-line){animation-play-state:paused!important;transition:none!important}}.product-feed-content{transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.is-scrolling *{pointer-events:none!important}body:not(.is-scrolling) *{pointer-events:auto}.navbar{background:#fffffffa;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-bottom:1px solid rgba(0,0,0,.05);box-shadow:0 1px 3px #0000000d;position:fixed;top:0;left:0;right:0;z-index:100;transition:left .3s cubic-bezier(.4,0,.2,1),right .3s cubic-bezier(.4,0,.2,1),transform .15s ease-out}.navbar.navbar-hidden{transform:translateY(-100%)}.dark .navbar{background:#1a1a1afa;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-bottom:1px solid rgba(255,255,255,.1)}.navbar-content{max-width:1920px;margin:5px auto;padding:0 clamp(1rem,2vw,1.5rem);height:clamp(60px,12vh,70px);display:flex;align-items:center;justify-content:center;gap:clamp(1rem,2vw,1.5rem);position:relative;width:100%}.navbar-logo-col{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:0;position:absolute;left:clamp(1rem,2vw,1.5rem)}.navbar-left-links,.navbar-right-links{display:flex;align-items:center;gap:1rem;flex-shrink:0}.navbar-center{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:auto;margin:0}.navbar-actions{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-shrink:0;margin-left:0;position:absolute;right:clamp(1rem,2vw,1.5rem)}.navbar-center .search-bar-container{width:clamp(280px,36vw,640px);min-height:44px}.navbar-center .search-bar-input{font-size:.95rem;color:var(--foreground)}.navbar-center .search-bar-input::placeholder{color:var(--muted-foreground)}.navbar-logo{position:static;left:auto;top:auto;transform:none;display:flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;user-select:none;transition:transform .2s ease}.navbar-logo:hover{transform:scale(1.05)}.navbar-logo img{height:clamp(2rem,5vw,3rem);width:auto;object-fit:contain}.navbar-logo-svg{display:inline-flex;height:clamp(2rem,5vw,3rem);width:auto;color:#000}.navbar-logo-svg svg{height:100%;width:auto}.dark .navbar-logo-svg{color:#fff}.navbar-links-left,.navbar-links-right{display:flex;align-items:center;gap:.85rem}.navbar-link{color:var(--muted-foreground);text-decoration:none;font-size:.95rem;font-weight:500;transition:color .2s ease}.navbar-link:hover{color:var(--foreground)}.navbar-actions,.navbar-actions-desktop{display:flex;align-items:center;gap:.75rem}.navbar-icon-btn{position:relative;display:flex;align-items:center;justify-content:center;width:clamp(1.9rem,6vw,2.25rem);height:clamp(1.9rem,6vw,2.25rem);min-width:36px;min-height:36px;border-radius:var(--radius-full);background-color:transparent;border:none;color:var(--neutral-950);cursor:pointer;transition:all .2s ease;text-decoration:none}.navbar-icon-btn:hover{background-color:var(--muted);color:var(--neutral-950);transform:translateY(-2px)}.navbar-icon-btn:active{transform:translateY(0)}.navbar-login-btn{display:inline-flex;align-items:center;justify-content:center;padding:0 .875rem;border-radius:999px;border:1px solid var(--border-light);color:var(--muted-foreground);background:var(--background);text-decoration:none;font-weight:600;transition:all .2s ease;height:clamp(1.9rem,6vw,2.25rem);min-height:36px;white-space:nowrap;flex-shrink:0}.navbar-login-btn:hover{border-color:var(--mint-400);color:var(--foreground);background:var(--background)}.navbar-login-text{display:inline;font-size:.9375rem}.navbar-login-icon{display:none}.navbar-badge{position:absolute;top:0;right:0;min-width:1.125rem;height:1.125rem;padding:0 .25rem;background-color:var(--faves-500);color:#fff;border-radius:var(--radius-full);font-size:.625rem;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0003;animation:badge-pop .3s ease-out}@keyframes badge-pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@media (max-width: 1200px){.navbar-content{gap:.75rem}}@media (max-width: 1024px) and (min-width: 769px){.navbar-center .search-bar-container{width:clamp(320px,50vw,520px)}}@media (max-width: 1024px){.navbar-content{gap:.75rem}.navbar-center .search-bar-container{width:clamp(300px,50vw,500px)}}@media (max-width: 768px){.navbar-content{padding:0 1rem;gap:.5rem;display:flex;align-items:center;justify-content:center}.navbar-left-links,.navbar-right-links{display:none}.navbar-logo-col{margin-right:0;flex-shrink:0;position:absolute;left:1rem}.navbar-actions{margin-left:0;flex-shrink:0;position:absolute;right:1rem}.navbar-center{margin-left:0;flex-shrink:0;padding-left:85px;padding-right:50px}.navbar-center .search-bar-container{width:100%;min-width:140px;max-width:280px}.navbar-logo img,.navbar-logo-svg{height:clamp(1.75rem,5vw,2.5rem)}}@media (max-width: 480px){.navbar-content{padding:0 .75rem;gap:.375rem}.navbar-logo-col{left:.75rem}.navbar-actions{gap:.25rem;right:.75rem}.navbar-actions-desktop{display:none}.navbar-center{padding-left:75px;padding-right:45px}.navbar-center .search-bar-container{width:100%;min-width:100px;max-width:220px}.navbar-logo-svg{height:1.75rem}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.navbar-icon-btn:hover{transform:none!important}}@media (hover: none) and (pointer: coarse){.navbar-logo:hover,.navbar-icon-btn:hover{transform:none!important;background-color:transparent}}.dark .navbar-icon-btn{color:var(--neutral-50)}.dark .navbar-icon-btn:hover{color:var(--neutral-50);background-color:#ffffff14}.search-bar-container{display:flex;align-items:center;gap:.75rem;width:100%;padding:.65rem 1rem;background-color:var(--surface);border:none;border-radius:var(--radius-full);min-height:44px;transition:box-shadow .2s ease,background-color .2s ease;overflow:hidden}.search-bar-container:focus-within{box-shadow:0 0 0 3px rgba(var(--primary-rgb),.18)}.search-bar-icon{color:var(--muted-foreground);flex-shrink:0}.search-bar-input{flex:1;min-width:0;font-family:var(--font-sans);font-size:.95rem;color:var(--foreground);background:transparent;border:none;outline:none;padding:0}.search-bar-input::placeholder{color:var(--muted-foreground)}.search-bar-clear-button{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:.25rem;color:var(--muted-foreground);transition:color .2s ease,background-color .2s ease,transform .2s ease;border-radius:999px;flex-shrink:0;width:28px;height:28px;pointer-events:auto}.search-bar-clear-button.hidden{pointer-events:none}.search-bar-clear-button:hover{background-color:var(--surface);color:var(--mint-600)}.search-bar-clear-button:active{transform:scale(.95)}@media (max-width: 768px){.search-bar-container{padding:.55rem .875rem}.search-bar-input{font-size:.9rem}}@media (max-width: 480px){.search-bar-container{min-height:44px}}.search-bar-wrapper{position:relative;width:100%}.search-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--background);border:1px solid var(--border);border-radius:1rem;margin-top:.5rem;max-height:400px;overflow:hidden;box-shadow:0 4px 12px #0000001a;z-index:1000;display:flex;flex-direction:column}.search-autocomplete-dropdown-inner{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-right:4px}.search-autocomplete-dropdown-inner::-webkit-scrollbar{width:6px}.search-autocomplete-dropdown-inner::-webkit-scrollbar-track{background:transparent;margin:8px 0}.search-autocomplete-dropdown-inner::-webkit-scrollbar-thumb{background-color:#00000026;border-radius:3px}.search-autocomplete-dropdown-inner::-webkit-scrollbar-thumb:hover{background-color:#00000040}.dark .search-autocomplete-dropdown-inner::-webkit-scrollbar-thumb{background-color:#fff3}.dark .search-autocomplete-dropdown-inner::-webkit-scrollbar-thumb:hover{background-color:#ffffff59}.search-autocomplete-dropdown-inner{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) transparent}.dark .search-autocomplete-dropdown-inner{scrollbar-color:rgba(255,255,255,.2) transparent}@media (max-width: 640px){.search-autocomplete-dropdown{position:fixed;top:70px;left:12px;right:12px;max-height:calc(50vh - 20px);border-radius:1rem;box-shadow:0 8px 24px #00000026}.search-autocomplete-dropdown-inner{max-height:none}.search-autocomplete-item{padding:.625rem .875rem;gap:.625rem}.search-autocomplete-image{width:44px;height:44px}.search-autocomplete-name{font-size:.8125rem;-webkit-line-clamp:1;line-clamp:1}.search-autocomplete-price{font-size:.8125rem}}.search-autocomplete-loading{padding:1rem;text-align:center;color:var(--muted-foreground);font-size:.875rem}.search-autocomplete-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background-color .2s;border-bottom:1px solid var(--border)}.search-autocomplete-item:hover{background-color:var(--accent)}.search-autocomplete-item:last-child{border-bottom:none}.search-autocomplete-image{width:48px;height:48px;object-fit:cover;border-radius:.25rem;flex-shrink:0;background-color:var(--surface);image-rendering:auto}.search-autocomplete-info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.search-autocomplete-name{font-size:.875rem;font-weight:500;color:var(--foreground);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.search-autocomplete-price{font-size:.875rem;font-weight:600;color:var(--primary)}.store-label{font-size:.75rem;font-weight:500;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.search-autocomplete-item.store-item{background-color:#89c8ab08}.search-autocomplete-item.store-item:hover{background-color:#89c8ab14}.search-autocomplete-image.search-store-image{width:48px;height:48px;border-radius:.5rem;object-fit:contain;padding:4px;background-color:var(--surface);image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.search-autocomplete-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.verified-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;color:var(--primary);background-color:#89c8ab1a;padding:.125rem .5rem;border-radius:.375rem}.store-category{font-size:.75rem;font-weight:500;color:var(--muted-foreground);background-color:var(--accent);padding:.125rem .5rem;border-radius:.375rem}.search-history-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border);background-color:var(--surface)}.search-history-title{font-size:.75rem;font-weight:600;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.search-history-clear-all{font-size:.75rem;font-weight:500;color:var(--primary);background:none;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:.25rem;transition:background-color .2s}.search-history-clear-all:hover{background-color:var(--accent)}.search-history-remove-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;cursor:pointer;color:var(--muted-foreground);font-size:1.5rem;line-height:1;border-radius:.25rem;transition:all .2s;flex-shrink:0;margin-left:.5rem}.search-history-remove-btn:hover{background-color:var(--destructive);color:#fff}.dark .search-bar-container{background-color:#ffffff14;border-color:#ffffff1f}.dark .search-bar-container:focus-within{box-shadow:0 0 0 3px #f1667b40}.dark .search-bar-input{color:#f1f5f9}.mobile-menu-trigger{display:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full);background:transparent;border:none;color:var(--foreground);cursor:pointer;transition:all .2s ease}.mobile-menu-trigger:hover{background-color:var(--muted)}.mobile-menu-trigger:active{transform:scale(.95)}.mobile-menu-backdrop{position:fixed;inset:0;background:#00000080;z-index:1100;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu-drawer{position:fixed;top:0;right:-280px;width:280px;height:100vh;background:var(--card);z-index:1200;box-shadow:-4px 0 24px #00000026;transition:right .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.mobile-menu-drawer.open{right:0}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-light)}.mobile-menu-title{font-family:var(--font-display);font-size:1.125rem;font-weight:600;color:var(--foreground)}.mobile-menu-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-full);background:transparent;border:none;color:var(--muted-foreground);cursor:pointer;transition:all .2s ease}.mobile-menu-close:hover{background:var(--muted);color:var(--foreground)}.mobile-menu-nav{display:flex;flex-direction:column;padding:.75rem;gap:.25rem}.mobile-menu-item{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;border-radius:.75rem;color:var(--foreground);text-decoration:none;font-family:var(--font-sans);font-size:.9375rem;font-weight:500;transition:all .2s ease}.mobile-menu-item:hover{background:var(--surface)}.mobile-menu-item:active{background:var(--muted);transform:scale(.98)}.mobile-menu-badge{margin-left:auto;min-width:1.25rem;height:1.25rem;padding:0 .375rem;background:var(--faves-500);color:#fff;border-radius:var(--radius-full);font-size:.6875rem;font-weight:700;display:flex;align-items:center;justify-content:center}.dark .mobile-menu-drawer{background:var(--card);box-shadow:-4px 0 24px #0006}.dark .mobile-menu-trigger{color:var(--neutral-50)}.dark .mobile-menu-trigger:hover{background:#ffffff14}@media (max-width: 480px){.mobile-menu-trigger{display:flex}}.site-footer{width:100%;border-top:1px solid var(--border);background-color:var(--background);flex-shrink:0;position:relative;z-index:10}.footer-content{max-width:1400px;margin:0 auto;padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;gap:.75rem}.footer-links{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center}.footer-link{font-size:.875rem;color:var(--muted-foreground);text-decoration:none;transition:color .2s}.footer-link:hover{color:var(--foreground);text-decoration:underline}.footer-separator{color:var(--muted-foreground);font-size:.875rem}.footer-copyright{font-size:.75rem;color:var(--muted-foreground);text-align:center;margin:0}@media (max-width: 768px){.footer-content{padding:1.5rem 1rem}.footer-links{gap:.75rem}}.favorites-layout .site-footer{--sidebar-offset: calc(340px + clamp(1.25rem, 4vw, 3.5rem) + 2rem) ;margin-left:var(--sidebar-offset);width:calc(100% - var(--sidebar-offset));border-top:none}@media (max-width: 1280px){.favorites-layout .site-footer{margin-left:0;width:100%}}.floating-home-button{position:fixed;bottom:2rem;right:2rem;z-index:99;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fffffffa;border:1px solid rgba(137,200,171,.25);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);font-family:var(--font-sans);font-size:.875rem;font-weight:500;color:var(--foreground);cursor:pointer;user-select:none;transition:all .3s cubic-bezier(.4,0,.2,1);transform:translateY(0);opacity:1;pointer-events:auto}.floating-home-button.position-left{right:auto;left:2rem}body[data-selection-active=true] .floating-home-button{bottom:5rem}.dark .floating-home-button{background:#2a2a2afa;border-color:#89c8ab59;color:var(--foreground)}.floating-home-button:hover{background:#89c8abf2;border-color:var(--mint-500);color:var(--primary-foreground);transform:translateY(-2px) scale(1.02);box-shadow:var(--shadow-glow)}.dark .floating-home-button:hover{background:#89c8abf2;color:#fff}.floating-home-button:active{transform:translateY(0) scale(.98)}.floating-home-button.hidden{transform:translateY(calc(100% + 2rem));opacity:0;pointer-events:none}.floating-home-button.position-left.hidden{transform:translateY(calc(100% + 2rem))}.floating-home-button.visible{transform:translateY(0);opacity:1;pointer-events:auto}.floating-home-button svg{flex-shrink:0;transition:transform .2s ease}.floating-home-button:hover svg{transform:translateY(-3px)}.floating-home-button-text{white-space:nowrap;line-height:1}@media (max-width: 768px){.floating-home-button{bottom:1.5rem;right:1rem;padding:.625rem 1rem;font-size:.8125rem}.floating-home-button.position-left{right:auto;left:1rem}}@media (max-width: 480px){.floating-home-button{padding:.75rem;width:2.75rem;height:2.75rem;justify-content:center}.floating-home-button-text{display:none}}.floating-home-button:focus-visible{outline:2px solid var(--ring);outline-offset:4px}@media (prefers-reduced-motion: reduce){.floating-home-button{transition:opacity .2s ease,transform .2s ease}.floating-home-button:hover,.floating-home-button.hidden{transform:translateY(0)}}.consent-banner{position:fixed;left:50%;bottom:24px;transform:translate(-50%);max-width:580px;width:calc(100% - 32px);background:#17191dd3;color:#fff;border-radius:20px;padding:22px 26px;box-shadow:0 24px 48px #0f172a59;z-index:9999;display:flex;gap:18px;flex-direction:column;backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12)}.consent-banner__title{font-size:1.05rem;font-weight:700;margin:0 0 8px}.consent-banner__description{font-size:.92rem;line-height:1.55;margin:0;color:#ffffffd1}.consent-banner__actions{display:flex;gap:12px;flex-wrap:wrap}.consent-banner__button{flex:1;min-width:140px;padding:10px 16px;border-radius:999px;font-weight:600;font-size:.9rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;border:none}.consent-banner__button.primary{background:linear-gradient(135deg,#f1667b,#e04461);color:#fff}.consent-banner__button.primary:hover{transform:translateY(-1px)}.consent-banner__button.outline{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.18)}.consent-banner__button.outline:hover{background:#ffffff1f}@media (min-width: 540px){.consent-banner{flex-direction:row;align-items:center}.consent-banner__content{flex:1}.consent-banner__actions{flex:0 0 auto;flex-direction:column;align-items:flex-end}.consent-banner__button{min-width:160px}}.layout-container{min-height:100vh;background-color:var(--background);font-family:var(--font-sans);display:flex;flex-direction:column}.layout-container:has(.landing-page){min-height:100dvh;max-height:100dvh;height:100dvh;overflow:hidden}.layout-container:has(.landing-page) .layout-content{height:100%;max-height:100%;overflow:hidden;display:flex;flex-direction:column}.layout-container:has(.landing-page) .layout-content .landing-page{flex:1;height:100%}.dark .layout-container{background-color:var(--background)}.auth-page,.dark .auth-page{background:var(--login-bg)}.layout-content{width:100%;padding:0;flex:1;display:flex;flex-direction:column}.layout-content--with-navbar{padding-top:calc(70px + .25rem)}@media (max-width: 768px){.layout-content{padding:0}.layout-content--with-navbar{padding-top:calc(64px + .25rem)}}.u-text-center{text-align:center}.u-relative{position:relative}.u-overflow-hidden{overflow:hidden}.u-px-page{padding-left:clamp(1rem,4vw,2rem);padding-right:clamp(1rem,4vw,2rem)}.u-py-hero{padding-top:clamp(3rem,8vw,5rem);padding-bottom:clamp(2rem,6vw,4rem)}@media (hover: none) and (pointer: coarse){[data-sonner-toaster]{inset:160px 0 auto auto!important;z-index:90!important;transform:none!important}[data-sonner-toaster] [data-sonner-toast]{transform-origin:right center}}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{display:none;width:0;height:0}body:has(.overlay-backdrop),html:has(.overlay-backdrop){overflow:hidden;touch-action:none}#root:has(.overlay-backdrop){overflow:hidden}body.overlay-open,html.overlay-open{overflow:hidden;touch-action:none}#root.overlay-open{overflow:hidden}.overlay-backdrop{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;align-items:flex-end;pointer-events:auto;overscroll-behavior:contain;touch-action:none}.overlay-container{position:relative;width:100%;max-height:100vh;background:var(--background, #ffffff);border-radius:24px 24px 0 0;z-index:1001;pointer-events:auto;will-change:transform;backface-visibility:hidden;overscroll-behavior:contain}.overlay-content{width:100%;height:100%;max-height:100vh;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;overscroll-behavior-y:contain}.overlay-content.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.overlay-content.hide-scrollbar::-webkit-scrollbar{display:none;width:0;height:0}@media (max-width: 768px){.overlay-container{border-radius:0}}.dark .overlay-backdrop{background:#000c}.dark .overlay-container{background:var(--background-dark, #1a1a1a)}.dark .overlay-content{scrollbar-color:var(--primary-dark, #6ba589) transparent}.dark .overlay-content::-webkit-scrollbar-thumb{background-color:var(--primary-dark, #6ba589)}.dark .overlay-content::-webkit-scrollbar-thumb:hover{background-color:var(--primary-light, #b8e0d2)}@media (prefers-reduced-motion: reduce){.overlay-backdrop,.overlay-container{transition:none!important;animation:none!important}.overlay-content{scroll-behavior:auto}}.star-rating{display:flex;align-items:center;gap:.125rem}.star-rating-star{position:relative;background:none;border:none;padding:0;margin:0;cursor:default;display:flex;align-items:center;justify-content:center;color:inherit}.star-rating-star.interactive,.star-rating.interactive{cursor:pointer}.star-rating-icon{position:relative;display:flex;align-items:center;justify-content:center;width:fit-content}.star-rating-icon>svg{display:block;pointer-events:none}.star-rating-filled{position:absolute;top:0;left:0;height:100%;display:block;overflow:hidden}.star-rating-filled svg{display:block;pointer-events:none;height:100%;width:auto;flex:none}.product-detail-page{width:100%;max-width:100vw;min-height:100vh;background-color:var(--background);padding-top:0;display:flex;flex-direction:column;overflow-x:hidden}.product-hero{max-width:1400px;width:100%;margin:0 auto;padding:5rem clamp(1rem,4vw,3rem) 2rem clamp(1rem,4vw,3rem);min-height:calc(100vh - 5rem);display:grid;grid-template-columns:60% 40%;gap:clamp(2rem,4vw,3rem);align-items:start;overflow:hidden}.product-gallery{display:flex;flex-direction:column;gap:1rem;height:fit-content;min-height:0;overflow:hidden;max-width:100%}@media (min-height: 801px){.product-gallery{position:sticky;top:6rem;max-height:none;overflow:visible}}.product-main-image-wrapper{position:relative;width:100%;max-height:calc(100vh - 18rem);aspect-ratio:4 / 3;border-radius:1rem;overflow:hidden;background-color:var(--surface);border:1px solid var(--border-light);cursor:zoom-in;transition:all .3s cubic-bezier(.4,0,.2,1)}@media (max-height: 800px){.product-main-image-wrapper{max-height:50vh}}.product-main-image-wrapper:hover{border-color:var(--border);box-shadow:0 8px 24px #00000014}.product-main-image{width:100%;height:100%;object-fit:contain;transition:transform .5s cubic-bezier(.4,0,.2,1)}.product-main-image-wrapper:hover .product-main-image{transform:scale(1.05)}.product-zoom-hint{position:absolute;bottom:1rem;right:1rem;background-color:#000000bf;color:#fff;padding:.5rem .875rem;border-radius:.5rem;font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:.375rem;opacity:0;transition:opacity .3s ease;backdrop-filter:blur(8px);pointer-events:none}.product-main-image-wrapper:hover .product-zoom-hint{opacity:1}.product-nav-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;background:#0009;backdrop-filter:blur(8px);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;opacity:0;transition:all .3s cubic-bezier(.4,0,.2,1)}.product-main-image-wrapper:hover .product-nav-arrow{opacity:1}.product-nav-arrow.prev{left:1rem}.product-nav-arrow.next{right:1rem}.product-nav-arrow:hover{background:#000000d9;transform:translateY(-50%) scale(1.1)}.product-nav-arrow:active{transform:translateY(-50%) scale(.95)}.product-thumbnails-track{position:relative;width:100%;overflow:hidden;cursor:grab;user-select:none;padding:.5rem 0}.product-thumbnails-track:active{cursor:grabbing}.product-thumbnails-slider{display:flex;gap:2rem;transition:transform .3s ease;will-change:transform;padding-left:.25rem;padding-right:1rem}.product-thumbnails-slider.dragging{transition:none}.product-thumb{flex-shrink:0;width:110px;height:85px;border-radius:1.5rem;overflow:hidden;border:2px solid var(--border-light);background:var(--surface);cursor:pointer;transition:all .2s ease;padding:0}.product-thumb img{width:100%;height:100%;object-fit:cover;pointer-events:none}.product-thumb:hover{border-color:var(--border);transform:scale(1.05)}.product-thumb.active{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.product-thumbs-indicator{display:flex;justify-content:center;gap:.5rem;margin-top:.75rem}.indicator-dot{width:8px;height:8px;border-radius:50%;background:var(--border);transition:all .2s ease}.indicator-dot.active{width:24px;border-radius:4px;background:var(--primary)}.product-thumbnails-wrapper{display:flex;align-items:center;gap:.75rem;width:auto;max-width:100%;overflow:hidden}.product-thumbnails-wrapper .product-thumbnails-track{flex:1;min-width:0;overflow:hidden}.product-thumbnails-arrow{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border-light);border-radius:50%;color:var(--foreground);cursor:pointer;transition:all .2s ease}.product-thumbnails-arrow:hover:not(.disabled){background:var(--muted);border-color:var(--border);transform:scale(1.05)}.product-thumbnails-arrow:active:not(.disabled){transform:scale(.95)}.product-thumbnails-arrow.disabled{opacity:.3;cursor:not-allowed}.product-info{display:flex;flex-direction:column;gap:1.5rem;padding:.5rem 0}.product-title{font-family:var(--font-display);font-size:clamp(1.25rem,4vw + .5rem,2rem);font-weight:700;line-height:1.2;color:var(--foreground);margin:0;letter-spacing:clamp(-.01em,-.015em,-.02em)}.product-title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem}.product-rating-section{display:none!important}.product-rating-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.product-rating-text{font-size:.875rem;color:var(--text-secondary);font-weight:500;line-height:1.4;padding-top:.5rem}.product-rating-text--empty{font-style:italic;opacity:.8}.product-user-rating-row{display:flex;align-items:center;padding-top:.2rem;gap:.375rem}.product-user-rating{font-size:.8125rem;color:var(--primary);font-weight:600;display:inline-flex;align-items:center;gap:.25rem}.product-user-rating-trigger{border:none;background:transparent;color:var(--primary);display:inline-flex;align-items:center;gap:.375rem;padding:0;cursor:pointer}.product-user-rating-trigger:hover{opacity:.85}.product-user-rating-delete{border:none;background:transparent;color:var(--destructive);padding-left:.5rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.product-user-rating-delete:hover{opacity:.85}.product-user-rating-icon{fill:var(--rating);stroke:var(--rating)}.product-rating-hint{font-size:.8125rem;color:var(--text-light);font-style:italic}.product-price-section{display:flex;flex-direction:column;gap:.5rem;padding:1rem 0}.product-price-main{display:flex;align-items:center;gap:1rem}.product-price{font-family:var(--font-display);font-size:clamp(1.75rem,5vw + .5rem,2.5rem);font-weight:800;color:var(--foreground);line-height:1;letter-spacing:clamp(-.02em,-.025em,-.03em)}.product-discount-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.875rem;font-weight:700;border-radius:.5rem;letter-spacing:.05em;box-shadow:0 2px 8px #10b9814d}.product-price-original{font-size:1.125rem;color:var(--text-light);text-decoration:line-through;font-weight:500}.product-description{font-size:.9375rem;color:var(--text-secondary);line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;transition:all .3s ease}.product-description.expanded{display:block;-webkit-line-clamp:unset;line-clamp:unset}.product-read-more{display:block;margin-top:.5rem;padding:0;background:none;border:none;font-size:.875rem;color:var(--primary);font-weight:600;cursor:pointer;transition:all .2s ease;text-align:left}.product-read-more:hover{text-decoration:underline;color:var(--primary)}.product-actions{display:flex;gap:1rem}.product-btn-buy{flex:1;min-height:44px;height:clamp(44px,10vw,56px);display:flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,var(--foreground) 0%,var(--foreground) 100%);color:var(--background);border:none;border-radius:.875rem;font-size:clamp(.6875rem,1.5vw + .5rem,.875rem);font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000001f,0 8px 24px #00000014;white-space:nowrap}.product-btn-buy:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000029,0 12px 32px #0000001f}.product-btn-buy:active{transform:translateY(0)}.product-btn-buy.disabled{background:var(--muted);color:var(--muted-foreground);cursor:not-allowed;box-shadow:none}.product-btn-buy.disabled:hover{transform:none;box-shadow:none}.product-btn-favorite{flex:1;min-height:44px;height:clamp(44px,10vw,56px);display:flex;align-items:center;justify-content:center;gap:.5rem;background-color:transparent;border:2px solid var(--favorite);border-radius:.875rem;color:var(--favorite);font-size:clamp(.6875rem,1.5vw + .5rem,.875rem);font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.product-btn-favorite:hover{background-color:var(--favorite);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #f1667b4d}.product-btn-favorite.favorited{background-color:var(--favorite);color:#fff;border-color:var(--favorite)}.product-store{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:var(--surface);border:1px solid var(--border-light);border-radius:.75rem;cursor:pointer;transition:all .3s ease;margin-top:auto}.product-store:hover{background-color:var(--muted);border-color:var(--border);transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.product-store-logo{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--border-light);flex-shrink:0}.product-store-logo-fallback{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--mint-400) 0%,var(--mint-500) 100%);color:#fff;font-weight:700;font-size:.875rem;border:2px solid var(--border-light)}.product-store-logo-fallback--hidden{display:none}.product-store-info{flex:1;min-width:0}.product-store-name{display:flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:600;color:var(--foreground);margin-bottom:.125rem}.product-store-action{font-size:.75rem;color:var(--text-secondary);font-weight:500}.product-store svg:last-child{color:var(--text-secondary);transition:transform .3s ease}.product-store:hover svg:last-child{transform:translate(4px)}.product-zoom-modal{position:fixed;inset:0;background-color:#000000f2;display:flex;align-items:center;justify-content:center;z-index:9999;padding:2rem;cursor:zoom-out;overflow:hidden}.product-zoom-modal-content{position:relative;max-width:85vw;max-height:85vh;display:flex;align-items:center;justify-content:center}.product-zoom-modal-image{max-width:100%;max-height:85vh;object-fit:contain;border-radius:.5rem}.product-zoom-modal-close{position:absolute;top:-3rem;right:-3rem;z-index:10001;width:44px;height:44px;background-color:#0009;border:none;color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;backdrop-filter:blur(8px)}.product-zoom-modal-close:hover{background-color:#fff3;transform:scale(1.1)}.product-loading{display:flex;justify-content:center;align-items:center;min-height:70vh;font-size:1rem;color:var(--text-secondary);font-weight:500}@media (max-width: 1024px){.product-hero{grid-template-columns:50% 50%;min-height:auto}.product-gallery{position:static!important}.product-main-image-wrapper{max-height:50vh}}@media (max-width: 640px){.product-hero{grid-template-columns:1fr;gap:1rem;padding:3rem 1rem 1rem;min-height:auto;overflow:hidden;max-width:100%}.product-gallery{order:1;position:static!important;gap:.75rem;overflow:hidden;max-width:100%}.product-info{order:2;gap:1rem}.product-main-image-wrapper{max-height:42vh;aspect-ratio:4/3;max-width:100%;overflow:hidden}.product-thumbnails-wrapper{max-width:100%;overflow:hidden}.product-thumbnails-slider{gap:1rem;padding-left:0}.product-thumb{width:85px;height:85px;border-radius:1.25rem}.product-title{font-size:1.25rem;line-height:1.3}.product-price-section{padding:.5rem 0}.product-price{font-size:1.75rem}.product-discount-badge{padding:.25rem .625rem;font-size:.8125rem}.product-price-original{font-size:1rem}.product-description{font-size:.875rem;-webkit-line-clamp:2;line-clamp:2}.product-actions{gap:.75rem}.product-btn-buy,.product-btn-favorite{height:48px;font-size:.8125rem;border-radius:.75rem}.product-store{padding:.875rem;gap:.625rem}.product-store-logo,.product-store-logo-fallback{width:36px;height:36px}.product-store-name{font-size:.875rem}.product-store-action{font-size:.75rem}}@media (max-width: 768px){.product-detail-page{padding-top:3rem}.product-main-image{object-fit:contain}.product-thumbnails-slider{gap:.875rem;padding-left:0}.product-thumb{width:60px;height:60px;border-radius:.875rem}.product-feed-container{padding:0}.product-scroll-indicator{bottom:1rem}.product-scroll-arrow{font-size:1.5rem}.product-scroll-text{font-size:.5625rem}.product-description-modal-content{padding:2rem}}@media (max-width: 480px){.product-hero{gap:.875rem;padding:2.75rem .75rem .75rem}.product-main-image-wrapper{max-height:38vh;border-radius:.75rem}.product-thumbnails-slider{gap:.75rem}.product-thumb{width:56px;height:56px;border-radius:.75rem}.product-thumbs-indicator{margin-top:.5rem;gap:.375rem}.indicator-dot{width:6px;height:6px}.indicator-dot.active{width:18px}.product-info{gap:.75rem}.product-title{font-size:1.125rem}.product-price{font-size:1.5rem}.product-btn-buy,.product-btn-favorite{height:44px;font-size:.75rem}}@media (max-width: 380px){.product-btn-buy,.product-btn-favorite{font-size:.6875rem;height:44px}}@media (max-width: 320px){.product-scroll-arrow{font-size:1.125rem}}.product-back-button{position:fixed;top:1.5rem;left:1.5rem;z-index:100;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:none;font-size:.875rem;font-weight:600;color:var(--foreground);cursor:pointer;transition:opacity .2s ease;animation:fadeInSlideLeft .3s cubic-bezier(.4,0,.2,1) .1s both}.product-back-button:hover{opacity:.7}.product-back-button--standalone{top:5.5rem;font-size:1rem;padding:.875rem 1.5rem;gap:.625rem}.product-back-button:active{opacity:.5}@keyframes fadeInSlideLeft{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.product-back-button{top:.75rem;left:.75rem;padding:.5rem;width:36px;height:36px;justify-content:center}.product-back-button span{display:none}.product-back-button--standalone{top:4rem;width:40px;height:40px}}@media (max-width: 480px){.product-back-button{top:.5rem;left:.5rem;width:32px;height:32px;padding:.375rem}.product-back-button--standalone{top:4rem;width:36px;height:36px}}@media (prefers-reduced-motion: reduce){.product-back-button{animation:none;transition:none}.product-back-button:hover{transform:none}.product-actions{gap:.5rem}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.product-main-image-wrapper:hover .product-main-image,.product-nav-arrow:hover,.product-thumb:hover,.product-btn-buy:hover,.product-btn-favorite:hover,.product-store:hover{transform:none!important}@keyframes bounceSmall{0%,to{transform:translateY(0)}}}@media (hover: none) and (pointer: coarse){.product-main-image-wrapper:hover .product-main-image,.product-main-image-wrapper:hover .product-zoom-hint,.product-main-image-wrapper:hover .product-nav-arrow,.product-nav-arrow:hover,.product-thumb:hover,.product-btn-buy:hover,.product-btn-favorite:hover,.product-store:hover,.product-zoom-modal-close:hover,.product-description-modal-close:hover{transform:none!important;opacity:1}.product-nav-arrow{opacity:.8}.product-thumbnails-track{cursor:default}}
