Pulsar

Shield

CSS

A technical credential shield expands into focus as a central verification tick marks approval.

Tier
CSS
Dependencies
None
Duration
4 s, loops
Categories
Icons and micro-interactions
Use cases
Success and confirmation, Security and trust
Industries
Education and training, Cross-industry
Style
Technical · light stroke
Set
accredit
Tags
geometriclinescaleloop

Companion assets

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

Animated
CSS tier
Static vector
Shield, not animated
Download SVG

Code

animation.svg

<svg xmlns="http://www.w3.org/2000/svg" fill="none" aria-hidden="true" class="pulsar pulsar-accredit-shield" data-pulsar="accredit-shield" viewBox="0 0 160 96"><g class="shield-outline"><path fill="currentColor" fill-opacity=".05" stroke="currentColor" stroke-width="1.5" d="m80 18 28 10v22c0 16-28 28-28 28S52 66 52 50V28z"></path><path stroke="var(--pulsar-accent, currentColor)" stroke-dasharray="3 3" d="m80 24 22 8v16c0 13-22 23-22 23S58 61 58 48V32z" class="inner-edge"></path></g><g class="center-tick"><path stroke="var(--pulsar-accent, currentColor)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" d="m72 48 6 6 12-12"></path><circle cx="80" cy="48" r="16" stroke="var(--pulsar-accent, currentColor)" stroke-dasharray="2 3" opacity=".5"></circle></g></svg>

animation.css

.pulsar-accredit-shield {
  display: block;
  width: 100%;
  height: 100%;
}
.pulsar-accredit-shield .shield-outline {
  transform-origin: 80px 48px;
  animation: accredit-shield-breath 4s ease-in-out infinite;
}
.pulsar-accredit-shield .center-tick {
  transform-origin: 80px 48px;
  animation: accredit-shield-pop 4s cubic-bezier(0.34, 1.56, 0.64, 1) infinite;
}
@keyframes accredit-shield-breath {
  0%,
  15%,
  85%,
  100% {
    transform: scale(0.94);
    opacity: 0.6;
  }
  45%,
  65% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes accredit-shield-pop {
  0%,
  20% {
    transform: scale(0.5);
    opacity: 0;
  }
  40%,
  75% {
    transform: scale(1);
    opacity: 1;
  }
  90%,
  100% {
    transform: scale(0.5);
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .pulsar-accredit-shield .shield-outline,
  .pulsar-accredit-shield .center-tick {
    animation: none;
    transform: none;
    opacity: 1;
  }
}

From this family15 in Accredit

See the family