Market Depth Map
CSSFaint steps of nested geometric blocks rise and fall slowly, simulating a dynamic order book depth.
- Tier
- CSS
- Dependencies
- None
- Duration
- 4 s, loops
- Categories
- Backgrounds and ambient
- Use cases
- Dashboards and reporting, Ambient background
- Industries
- Finance and fintech
- Style
- Technical · light stroke
- Set
- treasury
- Tags
- barsgeometricscaleambient
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-treasury-depth" data-pulsar="treasury-depth" viewBox="0 0 160 96"><line x1="80" x2="80" y1="16" y2="80" stroke="currentColor" stroke-dasharray="3 3" stroke-width="1.25" class="midline" opacity=".4"></line><g class="depth-bids bids-side"><path stroke="var(--pulsar-accent, currentColor)" stroke-width="1.5" d="M24 76h14V64h14V52h14V40h10v36Z" class="step-bids" opacity=".75"></path><line x1="24" x2="76" y1="76" y2="76" stroke="var(--pulsar-accent, currentColor)" stroke-width="1.5"></line></g><g class="depth-asks asks-side"><path stroke="currentColor" stroke-width="1.5" d="M136 76h-14V62h-14V50H94v-8H84v34Z" class="step-asks" opacity=".6"></path><line x1="84" x2="136" y1="76" y2="76" stroke="currentColor" stroke-width="1.5"></line></g><g stroke="currentColor" class="depth-ticks" opacity=".3"><line x1="24" x2="136" y1="20" y2="20" stroke-dasharray="2 4"></line><line x1="24" x2="136" y1="80" y2="80"></line></g><circle cx="80" cy="41" r="3" stroke="var(--pulsar-accent, currentColor)" stroke-width="1.5" class="spread-indicator"></circle></svg>
animation.css
.pulsar-treasury-depth {
display: block;
width: 100%;
height: 100%;
}
.pulsar-treasury-depth .depth-bids.bids-side {
transform-origin: 50px 76px;
animation: treasury-depth-bid-fluctuate 4s ease-in-out infinite;
}
.pulsar-treasury-depth .depth-asks.asks-side {
transform-origin: 110px 76px;
animation: treasury-depth-ask-fluctuate 4s ease-in-out infinite;
}
.pulsar-treasury-depth .spread-indicator {
transform-origin: 80px 41px;
animation: treasury-depth-spread 4s ease-in-out infinite;
}
.pulsar-treasury-depth .midline {
animation: treasury-depth-midline 4s ease-in-out infinite;
}
@keyframes treasury-depth-bid-fluctuate {
0%,
100% {
transform: scaleY(0.95);
opacity: 0.65;
}
50% {
transform: scaleY(1.08);
opacity: 0.9;
}
}
@keyframes treasury-depth-ask-fluctuate {
0%,
100% {
transform: scaleY(1.06);
opacity: 0.85;
}
50% {
transform: scaleY(0.92);
opacity: 0.55;
}
}
@keyframes treasury-depth-spread {
0%,
100% {
transform: scale(0.85);
opacity: 0.5;
}
50% {
transform: scale(1.25);
opacity: 1;
}
}
@keyframes treasury-depth-midline {
0%,
100% {
opacity: 0.3;
}
50% {
opacity: 0.6;
}
}
@media (prefers-reduced-motion: reduce) {
.pulsar-treasury-depth .depth-bids.bids-side,
.pulsar-treasury-depth .depth-asks.asks-side,
.pulsar-treasury-depth .spread-indicator,
.pulsar-treasury-depth .midline {
animation: none;
transform: none;
opacity: 0.7;
}
}