Revoke Access
CSSAn active consent outline badge withdraws its sharing link, retracting its connecting vector rules and returning to an isolated state.
- Tier
- CSS
- Dependencies
- None
- Duration
- 4.2 s, loops
- Categories
- Transitions and reveals
- Use cases
- Security and trust, Workflow and approvals
- Industries
- Security and identity, Cross-industry
- Style
- Minimal line · light stroke
- Set
- consent
- Tags
- lineminimalstrokepulsegeometric
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" aria-hidden="true" class="pulsar pulsar-consent-revoke-transition" data-pulsar="consent-revoke-transition" viewBox="0 0 160 96"><circle cx="50" cy="48" r="14" stroke="currentColor" stroke-width="1.25" opacity=".6"></circle><circle cx="50" cy="48" r="4" stroke="currentColor"></circle><circle cx="110" cy="48" r="14" stroke="currentColor" stroke-dasharray="2 2" stroke-width="1.25" opacity=".4"></circle><line x1="64" x2="96" y1="48" y2="48" stroke="var(--pulsar-accent, currentColor)" stroke-dasharray="4 2" stroke-width="1.5" class="consent-revoke-link"></line><g class="consent-revoke-break"><path stroke="var(--pulsar-accent, currentColor)" stroke-linecap="round" stroke-width="1.5" d="m77 45 6 6m0-6-6 6"></path></g></svg>
animation.css
.pulsar-consent-revoke-transition {
display: block;
overflow: visible;
}
.pulsar-consent-revoke-transition .consent-revoke-link {
animation: consent-revoke-transition-link-anim 4200ms cubic-bezier(0.2, 1, 0.3, 1) infinite;
transform-origin: 50px 48px;
}
.pulsar-consent-revoke-transition .consent-revoke-break {
animation: consent-revoke-transition-break-anim 4200ms ease infinite;
}
@keyframes consent-revoke-transition-link-anim {
0%,
20% {
transform: scaleX(1);
opacity: 1;
}
45%,
75% {
transform: scaleX(0);
opacity: 0;
}
90%,
100% {
transform: scaleX(1);
opacity: 1;
}
}
@keyframes consent-revoke-transition-break-anim {
0%,
25% {
opacity: 0;
transform: scale(0.5);
}
40%,
70% {
opacity: 1;
transform: scale(1.1);
}
85%,
100% {
opacity: 0;
transform: scale(0.5);
}
}
@media (prefers-reduced-motion: reduce) {
.pulsar-consent-revoke-transition .consent-revoke-link,
.pulsar-consent-revoke-transition .consent-revoke-break {
animation: none;
}
}