.infinite-scroll-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:3rem;padding-bottom:3rem;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.infinite-scroll-loader.hidden{pointer-events:none;opacity:0}.infinite-scroll-loader.visible{opacity:1}.loader-spinner{position:relative;height:4rem;width:4rem}.loader-spinner:before{content:"";display:block;height:4rem;width:4rem;border-radius:9999px;border-width:4px;--tw-border-opacity: 1;border-color:rgb(212 212 216 / var(--tw-border-opacity, 1));border-top-color:#71717a;animation:spin 1s linear infinite}.loader-text{margin-top:1rem;font-weight:500;--tw-text-opacity: 1;color:rgb(82 82 91 / var(--tw-text-opacity, 1))}@keyframes spin{to{transform:rotate(360deg)}}.product-item.fade-in{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.infinite-scroll-error{padding-top:2rem;padding-bottom:2rem;text-align:center}.infinite-scroll-error p{margin-bottom:1rem;--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.infinite-scroll-error .retry-button{margin-top:.75rem;display:inline-flex;height:3rem;align-items:center;justify-content:center;border-width:1px;padding:.25rem 1.25rem;font-weight:500;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;cursor:pointer;--tw-border-opacity: 1;border-color:rgb(113 113 122 / var(--tw-border-opacity, 1));background-color:transparent;--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.infinite-scroll-error .retry-button:hover{--tw-bg-opacity: 1;background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}html{scroll-behavior:smooth}
