Extended Module
Effects
Theatrical, genre-defining visual effects — glitch artifacts, holographic scan-lines, VHS distortion, and portal reveals. All running live below.
gleam-effects.css
4 effects
CSS filter + clip-path
GPU composited
<!-- Glitch on any element -->
<div class="fx-glitch">Any content</div>
<!-- Text slice glitch (data-text must mirror text content) -->
<h1 class="fx-glitch-text" data-text="GLITCH">GLITCH</h1>
<!-- Holographic overlay -->
<div class="fx-hologram">...</div>
<!-- Portal entrance -->
<div class="gleam fx-portal">...</div>
<!-- VHS tape distortion -->
<div class="gleam fx-vhs">...</div>
fx-glitch & fx-glitch-text
Chromatic aberration + structural jitter — fires every 5s
fx-glitch (block)
GLEAM
fx-glitch-text
GLITCH
On a UI element
ERROR
/* How fx-glitch-text works:
Pseudo-elements are exact copies (via attr(data-text)),
clipped to different horizontal bands, shifted on glitch frames */
.fx-glitch-text::before {
content: attr(data-text);
clip-path: inset(5% 0 75% 0); /* top slice */
color: rgba(255,0,60,0.85); /* red channel */
}
.fx-glitch-text::after {
clip-path: inset(70% 0 5% 0); /* bottom slice */
color: rgba(0,255,200,0.85); /* cyan channel */
}
fx-hologram
Hue cycling + scan-line overlay + drop-shadow glow
Box
HOLO
Avatar
👤
Status panel
SYS: ONLINE
SIGNAL: 98%
/* How fx-hologram works:
- @keyframes cycles hue-rotate(0→360deg) with saturate/brightness variation
- ::after overlays repeating-linear-gradient scan lines
- drop-shadow in keyframes creates the chromatic glow */
<div class="fx-hologram" style="color:rgba(0,255,200,0.9)">
Holographic content
</div>
<!-- Works on images — apply to a wrapper div -->
<div class="fx-hologram"><img src="..."></div>
fx-portal & fx-vhs — click to replay
fx-portal
Iris reveal from center out
fx-vhs
VHS tape distortion
<!-- Portal: clip-path iris grows from center + brightness/blur entrance -->
<div class="gleam fx-portal">Reveals from center</div>
<!-- VHS: RGB split + contrast/brightness + scale distortion -->
<div class="gleam fx-vhs">Tape aesthetic</div>
<!-- Loop continuously -->
.my-vhs { --iteration-count: infinite; }
Performance:
filter: hue-rotate() and drop-shadow() trigger GPU compositing — fast but expensive at scale. Best for UI accents and hero elements rather than large grids.
Use Cases
Error / lost connection
⚠ Connection lost
Sci-fi status panel
SYS: NOMINAL
Retro / nostalgia
◄ REC