<div class="fan"></div>
body {
display:grid;
margin:0;
height:100vh;
place-items:center;
background:pink;
}
.fan {
width:300px;
height:300px;
border-radius:50%;
margin-top:50px;
overflow:hidden;
display:grid;
mask:
radial-gradient(#000 8%,#0000 0),
conic-gradient(from -70deg,#fff 0 140deg,#0000 0);
background:
radial-gradient(#000 6%,#0000 12%),
conic-gradient(from 67deg,#0000 0,#000 1deg 10deg,#0000 0),
repeating-conic-gradient(from -70deg,#0000 0 ,#000 1deg 2deg,#0000 4deg 10deg);
clip-path: polygon(1% 99%, 6% 33%, 5.33% 28%, 9% 25.33%, 9.67% 20.33%, 14% 19%, 15.33% 14%, 20.33% 13%, 22.33% 8.67%, 27.33% 9.33%, 30% 5.33%, 34.67% 6%, 38% 2.67%, 42.67% 3.67%, 47% 1%, 51% 2.67%, 55.33% 0.67%, 59.33% 3%, 64% 1.67%, 67.33% 5%, 72% 6%, 74.67% 9.67%, 79% 10%, 81% 14.33%, 86% 16%, 87.34% 20.33%, 91% 23%, 91.67% 28.00%, 95% 32%, 100% 100%);
}
.fan:before {
content:"";
mask:radial-gradient(#0000 25%,#000 0);
background:
radial-gradient(farthest-side,red 98%,#0000) 50% 15%/45px 45px no-repeat,
conic-gradient(from 67deg,#0000 0,#000 1deg 10deg,#0000 0),
repeating-conic-gradient(from -70deg,#cdcdcd 0 2deg,#f3f3eb 0 6deg,#e6e6de 0 10deg);
background-blend-mode: multiply;
}
.fan:after {
content:"";
background:
radial-gradient(#9a742c 1%, #f5e4ac 3%,#0000 0),
conic-gradient(from 70deg,pink 40deg,#0000 0 180deg,pink 0 220deg,#0000 0)
}
.fan:before,
.fan:after {
grid-area:1/1;
}
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.