.upl-ring-fg{transition:stroke-dashoffset .22s linear}.upl-spin{transform-origin:50% 50%;animation:upl-spin .9s linear infinite}@keyframes upl-spin{to{transform:rotate(1turn)}}.upl-pop{animation:upl-pop .26s cubic-bezier(.32,1.1,.5,1) both}@keyframes upl-pop{0%{transform:scale(.6);opacity:0}to{transform:none;opacity:1}}.upl-bar-fill{transform-origin:right center;transition:transform .3s cubic-bezier(.22,1,.36,1)}.upl-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:translate3d(100%,0,0);animation:upl-sheen 1.4s ease-in-out infinite}@keyframes upl-sheen{to{transform:translate3d(-100%,0,0)}}.upl-check{stroke-dasharray:34;stroke-dashoffset:34;animation:upl-draw .42s cubic-bezier(.22,1,.36,1) .14s forwards}@keyframes upl-draw{to{stroke-dashoffset:0}}.upl-success{animation:upl-success-in .22s ease-out both}@keyframes upl-success-in{0%{opacity:0}to{opacity:1}}.photo-loading-ring{width:38px;height:38px;border-radius:9999px;border:3px solid rgba(255,255,255,.25);border-top-color:#fff;opacity:0;animation:upl-spin .85s linear infinite,upl-delayed-in .2s ease-out .35s forwards}@keyframes upl-delayed-in{to{opacity:1}}@media (prefers-reduced-motion:reduce){.upl-pop,.upl-spin{animation:none}.upl-bar-fill{transition:none}.upl-bar-fill:after{animation:none;display:none}.upl-check{stroke-dashoffset:0}.upl-check,.upl-success{animation:none}.photo-loading-ring{animation:upl-delayed-in 1ms .35s forwards}}