@keyframes kenBurns{0%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes scrollBanner{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes burst{0%{transform:scale(1)}50%{transform:scale(1.4)}to{transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes fadeSlideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes dotPulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}@keyframes countdownUrgent{0%,to{color:var(--green)}50%{color:var(--red)}}@keyframes badgeBounce{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.feed-scroll{scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow:hidden scroll}.feed-scroll::-webkit-scrollbar{display:none}.feed-card{scroll-snap-align:start}.card-bg-active{animation:8s ease-out forwards kenBurns}.reveal-ribbon{animation:.3s cubic-bezier(.34,1.2,.64,1) .1s both fadeSlideDown}.reveal-actions{animation:.3s cubic-bezier(.34,1.2,.64,1) .15s both fadeSlideRight}.reveal-content{animation:.35s cubic-bezier(.34,1.2,.64,1) .2s both fadeSlideUp}.reveal-cta{animation:.3s cubic-bezier(.34,1.2,.64,1) .3s both fadeSlideUp}.card-hidden{opacity:0;transition:opacity .2s,transform .2s;transform:translateY(8px)}.rb-destaque{background:linear-gradient(135deg, var(--blue), var(--cyan))}.rb-lancamento{background:linear-gradient(135deg, var(--purple), #a855f7)}.rb-oferta{background:linear-gradient(135deg, var(--red), #ff6b35)}.rb-limitado{background:linear-gradient(135deg, var(--gold), #ff8c00)}.rb-novo{background:linear-gradient(135deg, var(--green), #34d399)}.promo-scroll{animation:20s linear infinite scrollBanner}.tap-bounce:active{transition:transform .1s;transform:scale(.93)}.input-shake{animation:.4s ease-in-out shake}.badge-bounce{animation:.3s ease-out badgeBounce}.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}.cat-scroll{scrollbar-width:none;-webkit-overflow-scrolling:touch}.cat-scroll::-webkit-scrollbar{display:none}.card-gradient{background:linear-gradient(#0000 45%,#06080f4d 70%,#06080fd9 100%)}@keyframes kenBurnsZoomOut{0%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes kenBurnsPanSlow{0%{transform:scale(1.08)translate(0%)}50%{transform:scale(1.05)translate(-1%,-1%)}to{transform:scale(1.08)translate(0%)}}.photo-ken-burns{animation:12s ease-out forwards kenBurnsZoomOut}.photo-ken-burns-loop{animation:15s ease-in-out infinite kenBurnsPanSlow}
