/* https://grabient.com/_gG-fWOgMIgHyg2AgDEgO6gBigcsgF1gO8gJX?style=angularGradient&steps=8&angle=135 */
background: conic-gradient(from 135deg, #19a69d 0.000deg, #00b8e6 51.429deg, #24c3ea 102.857deg, #8bc7a0 154.286deg, #e0c5a8 205.714deg, #e9bcf0 257.143deg, #a0acdd 308.571deg, #379598 360.000deg);
<svg width="800" height="400" viewBox="0 0 800 400" fill="none" xmlns="http://www.w3.org/2000/svg">
<!-- https://grabient.com/_gG-fWOgMIgHyg2AgDEgO6gBigcsgF1gO8gJX?style=angularGradient&steps=8&angle=135 -->
<g clip-path="url(#paint0_angular_clip_path)" data-figma-skip-parse="true"><g transform="matrix(0.139677 0.139677 -0.139677 0.139677 400.000000 200.000000)"><foreignObject x="-2264" y="-2264" width="4528" height="4528"><div xmlns="http://www.w3.org/1999/xhtml" style="background:conic-gradient(from 90deg,rgba(25, 166, 157, 1) 0.000000deg,rgba(0, 184, 230, 1) 51.428571deg,rgba(36, 195, 234, 1) 102.857143deg,rgba(139, 199, 160, 1) 154.285714deg,rgba(224, 197, 168, 1) 205.714286deg,rgba(233, 188, 240, 1) 257.142857deg,rgba(160, 172, 221, 1) 308.571429deg,rgba(55, 149, 152, 1) 360.000000deg);height:100%;width:100%;opacity:1"></div></foreignObject></g></g><rect width="800" height="400" data-figma-gradient-fill="{"type":"GRADIENT_ANGULAR","stops":[{"color":{"r":0.09803921568627451,"g":0.6509803921568628,"b":0.615686274509804,"a":1},"position":0},{"color":{"r":0,"g":0.7215686274509804,"b":0.9019607843137255,"a":1},"position":0.14285714285714285},{"color":{"r":0.1411764705882353,"g":0.7647058823529411,"b":0.9176470588235294,"a":1},"position":0.2857142857142857},{"color":{"r":0.5450980392156862,"g":0.7803921568627451,"b":0.6274509803921569,"a":1},"position":0.42857142857142855},{"color":{"r":0.8784313725490196,"g":0.7725490196078432,"b":0.6588235294117647,"a":1},"position":0.5714285714285714},{"color":{"r":0.9137254901960784,"g":0.7372549019607844,"b":0.9411764705882353,"a":1},"position":0.7142857142857143},{"color":{"r":0.6274509803921569,"g":0.6745098039215687,"b":0.8666666666666667,"a":1},"position":0.8571428571428571},{"color":{"r":0.21568627450980393,"g":0.5843137254901961,"b":0.596078431372549,"a":1},"position":1}],"stopsVar":[{"color":{"r":0.09803921568627451,"g":0.6509803921568628,"b":0.615686274509804,"a":1},"position":0},{"color":{"r":0,"g":0.7215686274509804,"b":0.9019607843137255,"a":1},"position":0.14285714285714285},{"color":{"r":0.1411764705882353,"g":0.7647058823529411,"b":0.9176470588235294,"a":1},"position":0.2857142857142857},{"color":{"r":0.5450980392156862,"g":0.7803921568627451,"b":0.6274509803921569,"a":1},"position":0.42857142857142855},{"color":{"r":0.8784313725490196,"g":0.7725490196078432,"b":0.6588235294117647,"a":1},"position":0.5714285714285714},{"color":{"r":0.9137254901960784,"g":0.7372549019607844,"b":0.9411764705882353,"a":1},"position":0.7142857142857143},{"color":{"r":0.6274509803921569,"g":0.6745098039215687,"b":0.8666666666666667,"a":1},"position":0.8571428571428571},{"color":{"r":0.21568627450980393,"g":0.5843137254901961,"b":0.596078431372549,"a":1},"position":1}],"transform":{"m00":565.685425,"m01":-565.685425,"m02":400.000000,"m10":565.685425,"m11":565.685425,"m12":-365.685425},"opacity":1.0,"blendMode":"NORMAL","visible":true}"/>
<defs>
<clipPath id="paint0_angular_clip_path"><rect width="800" height="400"/></clipPath>
</defs>
</svg>
["#19a69d", "#00b8e6", "#24c3ea", "#8bc7a0", "#e0c5a8", "#e9bcf0", "#a0acdd", "#379598"]
// https://grabient.com/_gG-fWOgMIgHyg2AgDEgO6gBigcsgF1gO8gJX?style=angularGradient&steps=8&angle=135
// cosine gradient palette — https://iquilezles.org/articles/palettes/
const float STEPS = 8.0;
const float ANGLE = 135.0;
vec3 palette(float t) {
vec3 a = vec3(0.446, -2.674, 0.776);
vec3 b = vec3(0.498, 3.456, 0.196);
vec3 c = vec3(0.954, 0.098, 1.836);
vec3 d = vec3(0.373, 0.956, 0.599);
return a + b * cos(6.283185 * (c * t + d));
}
// N stops sampled from the palette, blended like the CSS gradient
vec3 stops(float t) {
float n = STEPS - 1.0;
float x = clamp(t, 0.0, 1.0) * n;
return mix(palette(floor(x) / n), palette(min(floor(x) + 1.0, n) / n), fract(x));
}
void mainImage(out vec4 fragColor, in vec2 fragCoord) {
vec2 p = fragCoord - 0.5 * iResolution.xy;
// conic from ANGLE, clockwise from top (CSS convention)
float t = fract((atan(p.x, p.y) - radians(ANGLE)) / 6.283185);
fragColor = vec4(stops(t), 1.0);
}
[
[0.446, -2.674, 0.776],
[0.498, 3.456, 0.196],
[0.954, 0.098, 1.836],
[0.373, 0.956, 0.599]
]