@keyframes pfSpin{to{transform:rotate(360deg)}}@keyframes pfShine{0%,55%{transform:translate(-120%) skew(-20deg)}to{transform:translate(220%) skew(-20deg)}}@keyframes pfPing{0%{transform:scale(1);opacity:.75}80%,to{transform:scale(2.6);opacity:0}}@keyframes pfFloat{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(-1deg)}}@keyframes pfMarquee{to{transform:translate(-50%)}}@keyframes pfNudge{0%,to{transform:translate(0)}50%{transform:translate(3px,-3px)}}@keyframes pfNudgeX{0%,to{transform:translate(0)}50%{transform:translate(5px)}}@keyframes pfFlowDot{0%{top:-4px;opacity:0}15%{opacity:1}85%{opacity:1}to{top:calc(100% - 4px);opacity:0}}@keyframes pfProgress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes pfGlow{0%,to{opacity:.55}50%{opacity:.95}}.pf-spin{animation:pfSpin 3.2s linear infinite}.pf-shine:after{content:"";position:absolute;inset:0;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:pfShine 3.4s ease-in-out infinite}.pf-ping{animation:pfPing 1.6s cubic-bezier(0,0,.2,1) infinite}.pf-float{animation:pfFloat 6s ease-in-out infinite}.pf-marquee{animation:pfMarquee var(--pf-marquee-dur, 45s) linear infinite}.pf-marquee-wrap:hover .pf-marquee{animation-play-state:paused}.pf-nudge{animation:pfNudge 1.4s ease-in-out infinite}.pf-nudge-x{animation:pfNudgeX 1.2s ease-in-out infinite}.pf-flow-dot{animation:pfFlowDot 1.8s ease-in-out infinite}.pf-progress{transform-origin:left;animation:pfProgress var(--pf-progress-dur, 4.5s) linear forwards}.pf-glow{animation:pfGlow 2.6s ease-in-out infinite}.pf-mask-x{-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}@media(prefers-reduced-motion:reduce){.pf-spin,.pf-ping,.pf-float,.pf-marquee,.pf-nudge,.pf-nudge-x,.pf-flow-dot,.pf-glow,.pf-shine:after{animation:none!important}.pf-progress{animation:none!important;transform:scaleX(1)}}
