Pulsar

Rules Engine

CSS

A vertical sequence of three evaluation nodes executes in succession with concentric status pulses.

Tier
CSS
Dependencies
None
Duration
4 s, loops
Categories
Loaders and spinners
Use cases
Loading and waiting, Workflow and approvals
Industries
Insurance, Cross-industry
Style
Technical · light stroke
Set
underwrite
Tags
geometricdotspulseloop

Companion assets

The same artwork, not animated. Derived from the entry’s own resting state, so it matches exactly.

Animated
CSS tier
Static vector
Rules Engine, not animated
Download SVG

Code

animation.svg

<svg xmlns="http://www.w3.org/2000/svg" fill="none" aria-hidden="true" class="pulsar pulsar-underwrite-rules" data-pulsar="underwrite-rules" viewBox="0 0 160 96"><line x1="48" x2="48" y1="20" y2="76" stroke="currentColor" stroke-dasharray="2 3" stroke-width="1.5" class="eval-axis" opacity=".3"></line><g class="rule-row r1"><circle cx="48" cy="28" r="8" stroke="var(--pulsar-accent, currentColor)" stroke-width="1.5" class="ring-pulse p1"></circle><circle cx="48" cy="28" r="4" fill="var(--pulsar-accent, currentColor)" class="node-core n1"></circle><line x1="62" x2="116" y1="28" y2="28" stroke="currentColor" stroke-width="1.5" opacity=".4"></line><path stroke="var(--pulsar-accent, currentColor)" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m120 26 3 3 5-5" class="check c1"></path></g><g class="rule-row r2"><circle cx="48" cy="48" r="8" stroke="var(--pulsar-accent, currentColor)" stroke-width="1.5" class="ring-pulse p2"></circle><circle cx="48" cy="48" r="4" fill="var(--pulsar-accent, currentColor)" class="node-core n2"></circle><line x1="62" x2="116" y1="48" y2="48" stroke="currentColor" stroke-width="1.5" opacity=".4"></line><path stroke="var(--pulsar-accent, currentColor)" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m120 46 3 3 5-5" class="check c2"></path></g><g class="rule-row r3"><circle cx="48" cy="68" r="8" stroke="var(--pulsar-accent, currentColor)" stroke-width="1.5" class="ring-pulse p3"></circle><circle cx="48" cy="68" r="4" fill="var(--pulsar-accent, currentColor)" class="node-core n3"></circle><line x1="62" x2="116" y1="68" y2="68" stroke="currentColor" stroke-width="1.5" opacity=".4"></line><path stroke="var(--pulsar-accent, currentColor)" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m120 66 3 3 5-5" class="check c3"></path></g></svg>

animation.css

.pulsar-underwrite-rules {
  display: block;
  width: 100%;
  height: 100%;
}
.pulsar-underwrite-rules .p1,
.pulsar-underwrite-rules .n1,
.pulsar-underwrite-rules .c1 {
  animation: underwrite-rules-step1 4s ease-in-out infinite;
}
.pulsar-underwrite-rules .p2,
.pulsar-underwrite-rules .n2,
.pulsar-underwrite-rules .c2 {
  animation: underwrite-rules-step2 4s ease-in-out infinite;
}
.pulsar-underwrite-rules .p3,
.pulsar-underwrite-rules .n3,
.pulsar-underwrite-rules .c3 {
  animation: underwrite-rules-step3 4s ease-in-out infinite;
}
@keyframes underwrite-rules-step1 {
  0%,
  10% {
    opacity: 0.2;
    transform: scale(0.8);
  }
  25%,
  85% {
    opacity: 1;
    transform: scale(1);
  }
  95%,
  100% {
    opacity: 0.2;
    transform: scale(0.8);
  }
}
@keyframes underwrite-rules-step2 {
  0%,
  30% {
    opacity: 0.2;
    transform: scale(0.8);
  }
  45%,
  85% {
    opacity: 1;
    transform: scale(1);
  }
  95%,
  100% {
    opacity: 0.2;
    transform: scale(0.8);
  }
}
@keyframes underwrite-rules-step3 {
  0%,
  50% {
    opacity: 0.2;
    transform: scale(0.8);
  }
  65%,
  85% {
    opacity: 1;
    transform: scale(1);
  }
  95%,
  100% {
    opacity: 0.2;
    transform: scale(0.8);
  }
}
@media (prefers-reduced-motion: reduce) {
  .pulsar-underwrite-rules .p1,
  .pulsar-underwrite-rules .n1,
  .pulsar-underwrite-rules .c1,
  .pulsar-underwrite-rules .p2,
  .pulsar-underwrite-rules .n2,
  .pulsar-underwrite-rules .c2,
  .pulsar-underwrite-rules .p3,
  .pulsar-underwrite-rules .n3,
  .pulsar-underwrite-rules .c3 {
    animation: none;
    transform: none;
    opacity: 1;
  }
}

From this family15 in Underwrite

See the family