Stripe webGL example sucks up a ton of battery. Surprised to see they have it enabled on mobile as well.
just experimenting a bit with animating linear gradients (svg gradients should work similar)
let b1 = "linear-gradient(217deg, rgba(255,0,0,.9), rgba(255,0,0,0) 70.71%), linear-gradient(127deg, rgba(0,255,0,.9), rgba(0,255,0,0) 70.71%), linear-gradient(336deg, rgba(0,0,255,.9), rgba(0,0,255,0) 70.71%)";
let b2 = "linear-gradient(17deg, rgba(255,0,0,.7), rgba(255,0,0,0) 70.71%), linear-gradient(200deg, rgba(0, 255, 0, .9), rgba(0,255,0,.2) 70.71%), linear-gradient(336deg, rgba(0,0,255,.8), rgba(0,0,255,0.1) 70.71%)";
gsap.timeline({repeat:-1, yoyo:"true", repeatDelay:0})
.add(gsap.set("#a", {width:300, height:200, background: b1}))
.add(gsap.to("#a", {ease: "none", duration: 6, background: b2}))
.play(0)
https://codepen.io/DickeySingh/pen/LYGXrMq