Scope Two Indirect
CSSAn electrical plug icon emits a thin power-flow line that feeds into a small utility meter, representing indirect energy emissions.
- Tier
- CSS
- Dependencies
- None
- Duration
- 4 s, loops
- Categories
- Icons and micro-interactions
- Use cases
- Dashboards and reporting, Sync and integration
- Industries
- Energy and utilities, Cross-industry
- Style
- Minimal line · light stroke
- Set
- emission
- Tags
- dotspulselineminimalwave
Companion assets
The same artwork, not animated. Derived from the entry’s own resting state, so it matches exactly.
Code
animation.svg
<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="pulsar pulsar-emission-scope-2" data-pulsar="emission-scope-2" viewBox="0 0 160 96"><path stroke-width="1.5" d="M32 38h12c3 0 5 3 5 6v8c0 3-2 6-5 6H32Z"></path><line x1="26" x2="32" y1="43" y2="43" stroke-width="2"></line><line x1="26" x2="32" y1="53" y2="53" stroke-width="2"></line><line x1="20" x2="26" y1="48" y2="48" stroke-width="1.5" opacity=".4"></line><circle cx="118" cy="48" r="20" stroke-width="1.5"></circle><circle cx="118" cy="48" r="16" stroke-dasharray="2 3" opacity=".35"></circle><circle cx="118" cy="48" r="3" fill="currentColor"></circle><g class="emission-scope2-needle"><line x1="118" x2="118" y1="48" y2="34" stroke="var(--pulsar-accent, currentColor)" stroke-width="2"></line></g><path stroke="var(--pulsar-accent, currentColor)" stroke-width="1.5" d="M49 48h49" class="emission-scope2-wire"></path><circle cx="49" cy="48" r="2.5" fill="var(--pulsar-accent, currentColor)" stroke-width="0" class="emission-scope2-pulse pulse-1"></circle><circle cx="49" cy="48" r="2.5" fill="var(--pulsar-accent, currentColor)" stroke-width="0" class="emission-scope2-pulse pulse-2"></circle></svg>
animation.css
.pulsar-emission-scope-2 {
display: block;
overflow: visible;
}
.pulsar-emission-scope-2 .emission-scope2-wire {
stroke-dasharray: 4 4;
animation: emission-scope-2-flow 4000ms linear infinite;
}
.pulsar-emission-scope-2 .pulse-1 {
animation: emission-scope-2-packet 4000ms cubic-bezier(0.4, 0, 0.2, 1) infinite;
}
.pulsar-emission-scope-2 .pulse-2 {
animation: emission-scope-2-packet 4000ms cubic-bezier(0.4, 0, 0.2, 1) -2000ms infinite;
}
.pulsar-emission-scope-2 .emission-scope2-needle {
transform-origin: 118px 48px;
animation: emission-scope-2-meter-sweep 4000ms ease-in-out infinite;
}
@keyframes emission-scope-2-flow {
0% {
stroke-dashoffset: 0;
}
100% {
stroke-dashoffset: -32;
}
}
@keyframes emission-scope-2-packet {
0% {
transform: translateX(0px);
opacity: 0;
}
10% {
opacity: 1;
}
85% {
opacity: 1;
}
100% {
transform: translateX(49px);
opacity: 0;
}
}
@keyframes emission-scope-2-meter-sweep {
0%,
100% {
transform: rotate(-35deg);
}
50% {
transform: rotate(40deg);
}
}
@media (prefers-reduced-motion: reduce) {
.pulsar-emission-scope-2 .emission-scope2-wire,
.pulsar-emission-scope-2 .pulse-1,
.pulsar-emission-scope-2 .pulse-2,
.pulsar-emission-scope-2 .emission-scope2-needle {
animation: none;
transform: none;
opacity: 1;
}
.pulsar-emission-scope-2 .pulse-2 {
opacity: 0;
}
}