/* Prime Creation | Text SFX v5
   20 bespoke mechanisms, not 20 variants of the same glitch.
   Original word remains in the DOM and is returned untouched.
   Three tiny vector planes max, no canvas, body transforms, sensors or animation loops.
*/
html body .prime-text-sfx-atom{
 position:relative!important;display:inline!important;white-space:nowrap!important;
 color:inherit!important;-webkit-text-fill-color:currentColor!important;
 text-shadow:inherit!important;background:none!important;box-shadow:none!important;
 isolation:auto!important;transform-style:preserve-3d!important;
}
html body .prime-text-sfx-atom>.prime-text-sfx-plane{
 position:absolute!important;inset:0!important;display:block!important;
 width:100%!important;height:100%!important;margin:0!important;padding:0!important;
 border:0!important;box-sizing:border-box!important;
 font:inherit!important;font-size:inherit!important;font-weight:inherit!important;
 font-style:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;
 text-align:inherit!important;text-transform:inherit!important;text-decoration:none!important;
 white-space:nowrap!important;background:none!important;box-shadow:none!important;
 text-shadow:none!important;filter:none!important;mix-blend-mode:normal!important;
 pointer-events:none!important;user-select:none!important;backface-visibility:visible!important;
 transform-origin:50% 50%!important;opacity:0;
 color:var(--prime-text-sfx-ink,currentColor)!important;
 -webkit-text-fill-color:var(--prime-text-sfx-ink,currentColor)!important;
}
html body .prime-text-sfx-atom>.prime-text-sfx-plane-primary{z-index:1!important}
html body .prime-text-sfx-atom>.prime-text-sfx-plane-secondary{z-index:2!important}
html body .prime-text-sfx-atom>.prime-text-sfx-plane-tertiary{z-index:3!important}
html body .prime-text-sfx-atom .prime-text-sfx-glyph{
 position:relative!important;display:inline-block!important;
 transform-origin:center center!important;transform-style:preserve-3d!important;
 white-space:pre!important;will-change:auto!important;
}
html body .prime-text-sfx-atom[data-prime-text-sfx-morph="true"]{
 color:transparent!important;-webkit-text-fill-color:transparent!important;text-shadow:none!important;
}
html body .prime-text-sfx-atom[data-prime-text-sfx-morph="true"]>.prime-text-sfx-plane{
 color:var(--prime-text-sfx-ink,#e6e6e6)!important;
 -webkit-text-fill-color:var(--prime-text-sfx-ink,#e6e6e6)!important;
}
html body .prime-text-sfx-image-mask{
 position:absolute!important;inset:0!important;z-index:5!important;
 display:block!important;overflow:hidden!important;pointer-events:none!important;
 background:transparent!important;border:0!important;transform:none!important;filter:none!important;
}
html body .prime-text-sfx-image-mask>.prime-text-sfx-image-plane{
 display:block!important;position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;pointer-events:none!important;
 border:0!important;margin:0!important;padding:0!important;filter:none!important;box-shadow:none!important;
 opacity:0;
}
html body .prime-text-sfx-image-mask>.prime-text-sfx-plane-primary{
 animation:prime-v5-wordmark 780ms steps(1,end) both!important;
}
html body .prime-text-sfx-image-mask>.prime-text-sfx-plane-secondary,
html body .prime-text-sfx-image-mask>.prime-text-sfx-plane-tertiary{display:none!important}
@keyframes prime-v5-wordmark{
 0%,100%{opacity:0;clip-path:inset(0);transform:none}
 18%{opacity:.42;clip-path:inset(43% 0 50% 0);transform:translateX(2px)}
 32%{opacity:.25;clip-path:inset(68% 0 27% 0);transform:translateX(-2px)}
 55%{opacity:.5;clip-path:inset(12% 0 79% 0);transform:translateX(1px)}
 82%{opacity:0;transform:none}
}
/* Native Spatial supplies the pose. SFX only adds under-2px local optical depth. */
html[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"]
 .prime-text-sfx-atom>.prime-text-sfx-plane-primary{translate:0 0 .45px!important}
html[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"]
 .prime-text-sfx-atom>.prime-text-sfx-plane-secondary{translate:0 0 1px!important}
html[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"]
 .prime-text-sfx-atom>.prime-text-sfx-plane-tertiary{translate:0 0 1.6px!important}
html[data-prime-spatial-unified-suspended="true"] .prime-text-sfx-plane{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce),print{
 html body .prime-text-sfx-atom[data-prime-text-sfx-morph="true"]{
  color:inherit!important;-webkit-text-fill-color:currentColor!important;
 }
 html body .prime-text-sfx-atom>.prime-text-sfx-plane,
 html body .prime-text-sfx-image-mask{display:none!important;animation:none!important}
}

/* SINE-CARRIER | Traveling oscillation deforms individual glyph baselines */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="sine-carrier"]>.prime-text-sfx-plane-primary{animation:prime-v5-sine-glow 810ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="sine-carrier"]>.prime-text-sfx-plane-primary>.prime-text-sfx-glyph{animation:prime-v5-sine-glyph 810ms ease-in-out both!important;animation-delay:calc(var(--sfx-i) * -87ms)!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="sine-carrier"]>.prime-text-sfx-plane-secondary{animation:prime-v5-sine-harmonic 810ms steps(1,end) both!important;}

@keyframes prime-v5-sine-glow{0%,100%{opacity:0}15%,70%{opacity:.28}85%{opacity:0}}
@keyframes prime-v5-sine-glyph{0%,100%{transform:translateY(0) rotate(0)}22%{transform:translateY(-2.8px) rotate(-3deg)}52%{transform:translateY(1.8px) rotate(2deg)}75%{transform:translateY(-1px) rotate(-1deg)}}
@keyframes prime-v5-sine-harmonic{0%,100%{opacity:0;transform:none;clip-path:inset(0)}30%{opacity:.24;transform:translateY(-2px);clip-path:inset(10% 0 74% 0)}55%{opacity:.25;transform:translateY(2px);clip-path:inset(70% 0 19% 0)}}


/* CODE-BREAK | Ciphertext mutation in two encoding passes, followed by restored glyphs */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="code-break"]>.prime-text-sfx-plane-primary{animation:prime-v5-cipher-a 680ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="code-break"]>.prime-text-sfx-plane-secondary{animation:prime-v5-cipher-b 680ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="code-break"]>.prime-text-sfx-plane-tertiary{animation:prime-v5-cipher-c 680ms steps(1,end) both!important;}

@keyframes prime-v5-cipher-a{0%,100%{opacity:0}10%,26%{opacity:1}28%{opacity:0}35%{opacity:.6;transform:translateX(1.3px)}39%{opacity:0}}
@keyframes prime-v5-cipher-b{0%,100%{opacity:0}29%,50%{opacity:.94;letter-spacing:.05em}52%{opacity:0}58%{opacity:.38;transform:translateX(-1px)}62%{opacity:0}}
@keyframes prime-v5-cipher-c{0%,7%,64%{opacity:0}8%{opacity:.9}10%{opacity:0}67%,100%{opacity:1}}


/* EVENT-HORIZON | Gravitational lens crushes typography into a single axis */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="event-horizon"]>.prime-text-sfx-plane-primary{animation:prime-v5-horizon-collapse 910ms cubic-bezier(.21,.04,.7,1) both!important;transform-origin:50% 50%!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="event-horizon"]>.prime-text-sfx-plane-secondary{animation:prime-v5-horizon-accretion 910ms steps(1,end) both!important;}

@keyframes prime-v5-horizon-collapse{0%,100%{opacity:0;transform:scale(1)}18%{opacity:.6;transform:scaleY(.85) scaleX(1.04)}41%{opacity:.95;transform:scaleY(.05) scaleX(1.32)}56%{opacity:.45;transform:scaleY(.02) scaleX(.38)}78%{opacity:.2;transform:scaleY(1.08) scaleX(.94)}}
@keyframes prime-v5-horizon-accretion{0%,100%{opacity:0;clip-path:inset(0)}25%{opacity:.35;clip-path:inset(48% 0 48% 0);transform:scaleX(1.4)}44%{opacity:.8;clip-path:inset(49% 0 49% 0);transform:scaleX(.2)}65%{opacity:.15;transform:scaleX(1.3);clip-path:inset(45% 0 45% 0)}}


/* PRISM-RIFT | Clean opposing polygonal prisms open on diagonal axes */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="prism-rift"]>.prime-text-sfx-plane-primary{animation:prime-v5-prism-left 830ms cubic-bezier(.15,.77,.3,1) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="prism-rift"]>.prime-text-sfx-plane-secondary{animation:prime-v5-prism-right 830ms cubic-bezier(.15,.77,.3,1) both!important;}

@keyframes prime-v5-prism-left{0%,100%{opacity:0;transform:none}19%{opacity:.85;clip-path:polygon(0 0,75% 0,25% 100%,0 100%);transform:translate3d(-2px,-1px,1px) rotateZ(-2deg)}43%{opacity:.75;clip-path:polygon(0 0,65% 0,18% 100%,0 100%);transform:translate3d(-4px,-2px,3px) rotateZ(-4deg)}77%{opacity:.14;transform:none;clip-path:polygon(0 0,70% 0,30% 100%,0 100%)}}
@keyframes prime-v5-prism-right{0%,100%{opacity:0;transform:none}20%{opacity:.7;clip-path:polygon(75% 0,100% 0,100% 100%,25% 100%);transform:translate3d(2px,1px,-1px) rotateZ(2deg)}45%{opacity:.75;clip-path:polygon(65% 0,100% 0,100% 100%,18% 100%);transform:translate3d(4px,2px,-2px) rotateZ(4deg)}75%{opacity:.14;transform:none}}


/* PACKET-LOSS | Structured network dropout with entirely missing rectangular data chunks */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="packet-loss"]>.prime-text-sfx-plane-primary{animation:prime-v5-packet-miss 650ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="packet-loss"]>.prime-text-sfx-plane-tertiary{animation:prime-v5-packet-resend 650ms steps(1,end) both!important;-webkit-mask-image:repeating-conic-gradient(#000 0 25%,transparent 0 50%)!important;mask-image:repeating-conic-gradient(#000 0 25%,transparent 0 50%)!important;-webkit-mask-size:8px 8px!important;mask-size:8px 8px!important;}

@keyframes prime-v5-packet-miss{0%,100%{opacity:0;transform:none;clip-path:inset(0)}12%{opacity:1;clip-path:polygon(0 0,29% 0,29% 35%,65% 35%,65% 60%,100% 60%,100% 100%,0 100%)}26%{opacity:0}40%{opacity:.9;clip-path:polygon(0 0,80% 0,80% 27%,42% 27%,42% 75%,100% 75%,100% 100%,0 100%);transform:translateX(2px)}54%{opacity:0}71%{opacity:.2;clip-path:inset(47% 0 47% 0)}}
@keyframes prime-v5-packet-resend{0%,100%{opacity:0}35%{opacity:.95;clip-path:inset(0 0 35% 0)}43%{opacity:.2}61%{opacity:.75;clip-path:inset(34% 0 0 0)}80%{opacity:0}}


/* QUANTUM-STEP | Independent glyph teleport between discretized XYZ coordinates */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="quantum-step"]>.prime-text-sfx-plane-primary{animation:prime-v5-quantum-field 730ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="quantum-step"]>.prime-text-sfx-plane-primary>.prime-text-sfx-glyph{animation:prime-v5-quantum-glyph 730ms steps(1,end) both!important;animation-delay:calc(var(--sfx-i) * -61ms)!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="quantum-step"]>.prime-text-sfx-plane-secondary{animation:prime-v5-quantum-ghost 730ms steps(1,end) both!important;}

@keyframes prime-v5-quantum-field{0%,100%{opacity:0}12%,83%{opacity:.8}}
@keyframes prime-v5-quantum-glyph{0%,100%{transform:translate3d(0,0,0)}18%{transform:translate3d(4px,-2px,3px)}19%{transform:translate3d(-3px,2px,-4px)}37%{transform:translate3d(0,0,0)}56%{transform:translate3d(-2px,-3px,5px)}58%{transform:translate3d(2px,1px,-1px)}76%{transform:translate3d(0,0,0)}}
@keyframes prime-v5-quantum-ghost{0%,100%{opacity:0;transform:none;clip-path:inset(0)}22%{opacity:.18;transform:translate3d(-3px,1px,-2px);clip-path:inset(3% 0 64% 0)}63%{opacity:.22;transform:translate3d(2px,-1px,2px);clip-path:inset(68% 0 6% 0)}}


/* SCANLINE-TEAR | Single razor-thin CRT read line traverses the height, bending ink in transit */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="scanline-tear"]>.prime-text-sfx-plane-primary{animation:prime-v5-crt-raster 760ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="scanline-tear"]>.prime-text-sfx-plane-secondary{animation:prime-v5-crt-counter 760ms steps(1,end) both!important;-webkit-mask-image:repeating-linear-gradient(0deg,#000 0 1px,transparent 1px 4px)!important;mask-image:repeating-linear-gradient(0deg,#000 0 1px,transparent 1px 4px)!important;}

@keyframes prime-v5-crt-raster{0%,100%{opacity:0;clip-path:inset(0)}9%{opacity:.8;clip-path:inset(1% 0 92% 0);transform:translateX(3px)}24%{clip-path:inset(23% 0 70% 0);transform:translateX(-4px)}40%{clip-path:inset(41% 0 52% 0);transform:translateX(2px)}61%{clip-path:inset(68% 0 24% 0);transform:translateX(-2px)}76%{opacity:.4;clip-path:inset(90% 0 5% 0);transform:none}}
@keyframes prime-v5-crt-counter{0%,100%{opacity:0}14%{opacity:.28;transform:translateX(-1px)}35%{opacity:.17;transform:translateX(1px)}67%{opacity:.38;transform:translateX(-2px)}82%{opacity:0}}


/* VOXEL-RISE | Coarse architectural pixel voxels assemble upward letter by letter */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="voxel-rise"]>.prime-text-sfx-plane-primary{animation:prime-v5-voxel-layer 890ms steps(1,end) both!important;-webkit-mask-image:repeating-conic-gradient(#000 0 25%,transparent 0 50%)!important;mask-image:repeating-conic-gradient(#000 0 25%,transparent 0 50%)!important;-webkit-mask-size:5px 5px!important;mask-size:5px 5px!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="voxel-rise"]>.prime-text-sfx-plane-primary>.prime-text-sfx-glyph{animation:prime-v5-voxel-glyph 890ms steps(1,end) both!important;animation-delay:calc(var(--sfx-i) * 38ms)!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="voxel-rise"]>.prime-text-sfx-plane-secondary{animation:prime-v5-voxel-final 890ms steps(1,end) both!important;}

@keyframes prime-v5-voxel-layer{0%,100%{opacity:0}13%{opacity:.85}75%{opacity:.15}}
@keyframes prime-v5-voxel-glyph{0%,100%{transform:none}15%{transform:translateY(9px) scaleY(.48)}36%{transform:translateY(2px) scaleY(.74)}61%{transform:translateY(-2px) scaleY(1)}80%{transform:none}}
@keyframes prime-v5-voxel-final{0%,100%{opacity:0;clip-path:inset(0)}50%{opacity:.2;clip-path:inset(68% 0 0 0)}71%{opacity:.48;clip-path:inset(29% 0 0 0)}85%{opacity:0;clip-path:inset(0)}}


/* PHASE-INVERSION | Photographic negative of the original glyphs with temporal polarity switching */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="phase-inversion"]>.prime-text-sfx-plane-primary{animation:prime-v5-polarity-field 700ms steps(1,end) both!important;mix-blend-mode:difference!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="phase-inversion"]>.prime-text-sfx-plane-secondary{animation:prime-v5-polarity-wipe 700ms steps(1,end) both!important;mix-blend-mode:difference!important;}

@keyframes prime-v5-polarity-field{0%,100%{opacity:0;filter:none}17%{opacity:.9;clip-path:inset(0);filter:invert(1)}28%{opacity:.05}37%{opacity:.8;clip-path:inset(25% 0 43% 0);filter:invert(0)}57%{opacity:.65;clip-path:inset(0);filter:invert(1)}72%{opacity:.15}}
@keyframes prime-v5-polarity-wipe{0%,100%{opacity:0;clip-path:inset(0)}21%{opacity:.8;clip-path:inset(2% 0 72% 0)}47%{opacity:.75;clip-path:inset(35% 0 34% 0)}68%{opacity:.8;clip-path:inset(78% 0 5% 0)}}


/* DATA-RAIN | Cipher glyphs fall downward in cascading vertical columns */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="data-rain"]>.prime-text-sfx-plane-primary{animation:prime-v5-rain-code 880ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="data-rain"]>.prime-text-sfx-plane-primary>.prime-text-sfx-glyph{animation:prime-v5-rain-drop 880ms steps(1,end) both!important;animation-delay:calc(var(--sfx-i) * 39ms)!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="data-rain"]>.prime-text-sfx-plane-secondary{animation:prime-v5-rain-lag 880ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="data-rain"]>.prime-text-sfx-plane-tertiary{animation:prime-v5-rain-recover 880ms steps(1,end) both!important;}

@keyframes prime-v5-rain-code{0%,100%{opacity:0}7%,34%{opacity:.95}}
@keyframes prime-v5-rain-drop{0%{opacity:0;transform:translateY(-9px)}22%{opacity:1;transform:translateY(-1px)}40%{opacity:.1;transform:translateY(6px)}100%{opacity:0;transform:translateY(12px)}}
@keyframes prime-v5-rain-lag{0%,100%{opacity:0;transform:none}28%{opacity:.9;transform:translateY(-5px)}48%{opacity:.4;transform:translateY(6px)}62%{opacity:0;transform:translateY(10px)}}
@keyframes prime-v5-rain-recover{0%,54%{opacity:0}60%{opacity:.3;clip-path:inset(0 0 61% 0)}75%,100%{opacity:1;clip-path:inset(0)}}


/* RECURSIVE-ECHO | Shrinking self-similar nested copies converge from two different scales */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="recursive-echo"]>.prime-text-sfx-plane-primary{animation:prime-v5-recursive-inner 940ms ease-in-out both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="recursive-echo"]>.prime-text-sfx-plane-secondary{animation:prime-v5-recursive-outer 940ms ease-in-out both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="recursive-echo"]>.prime-text-sfx-plane-tertiary{animation:prime-v5-recursive-third 940ms ease-in-out both!important;}

@keyframes prime-v5-recursive-inner{0%,100%{opacity:0;transform:scale(.75)}21%{opacity:.2;transform:scale(.77)}48%{opacity:.43;transform:scale(.9)}74%{opacity:.08;transform:scale(1)}}
@keyframes prime-v5-recursive-outer{0%,100%{opacity:0;transform:scale(1.22)}28%{opacity:.32;transform:scale(1.18)}59%{opacity:.46;transform:scale(1.07)}82%{opacity:.05;transform:scale(1)}}
@keyframes prime-v5-recursive-third{0%,100%{opacity:0;transform:scale(.55)}32%{opacity:.25;transform:scale(.65)}67%{opacity:.38;transform:scale(.97)}84%{opacity:0;transform:scale(1)}}


/* MAGNETIC-COLLAPSE | Electromagnetic attraction pulls the complete word toward its midline */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="magnetic-collapse"]>.prime-text-sfx-plane-primary{animation:prime-v5-magnetic-in 820ms cubic-bezier(.64,.01,.21,1.05) both!important;transform-origin:50% 50%!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="magnetic-collapse"]>.prime-text-sfx-plane-secondary{animation:prime-v5-magnetic-after 820ms steps(1,end) both!important;}

@keyframes prime-v5-magnetic-in{0%,100%{opacity:0;transform:scaleX(1)}18%{opacity:.35;transform:scaleX(1.17)}38%{opacity:.8;transform:scaleX(.44)}49%{opacity:.99;transform:scaleX(.09)}59%{opacity:.5;transform:scaleX(.36)}76%{opacity:.21;transform:scaleX(1.11)}}
@keyframes prime-v5-magnetic-after{0%,100%{opacity:0;transform:none}38%{opacity:.4;transform:scaleX(1.4)}52%{opacity:.65;transform:scaleX(.27)}68%{opacity:.14;transform:scaleX(1.25)}}


/* INTERFERENCE-GRID | Overlapping subpixel interference lattice generates directional moiré */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="interference-grid"]>.prime-text-sfx-plane-primary{animation:prime-v5-moire-a 720ms steps(1,end) both!important;-webkit-mask-image:repeating-linear-gradient(72deg,#000 0 1px,transparent 1px 3px)!important;mask-image:repeating-linear-gradient(72deg,#000 0 1px,transparent 1px 3px)!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="interference-grid"]>.prime-text-sfx-plane-secondary{animation:prime-v5-moire-b 720ms steps(1,end) both!important;-webkit-mask-image:repeating-linear-gradient(106deg,#000 0 1px,transparent 1px 3px)!important;mask-image:repeating-linear-gradient(106deg,#000 0 1px,transparent 1px 3px)!important;}

@keyframes prime-v5-moire-a{0%,100%{opacity:0;transform:none}12%{opacity:.64;transform:translateX(-.8px)}38%{opacity:.87;transform:translateX(1.4px) skewY(1.8deg)}59%{opacity:.72;transform:translateX(-1.4px) skewY(-1.8deg)}76%{opacity:.12;transform:none}}
@keyframes prime-v5-moire-b{0%,100%{opacity:0;transform:none}22%{opacity:.63;transform:translateY(1px)}45%{opacity:.8;transform:translateY(-1px) skewY(-1.6deg)}67%{opacity:.55;transform:translateY(1.4px) skewY(1.1deg)}87%{opacity:0}}


/* COMPRESSION-FRACTURE | Extreme horizontal compression produces broken letter slivers */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="compression-fracture"]>.prime-text-sfx-plane-primary{animation:prime-v5-crush-left 790ms steps(1,end) both!important;transform-origin:12% 50%!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="compression-fracture"]>.prime-text-sfx-plane-secondary{animation:prime-v5-crush-right 790ms steps(1,end) both!important;transform-origin:88% 50%!important;}

@keyframes prime-v5-crush-left{0%,100%{opacity:0;transform:none}15%{opacity:.6;transform:scaleX(.9);clip-path:polygon(0 0,63% 0,34% 47%,71% 62%,33% 100%,0 100%)}37%{opacity:.98;transform:scaleX(.37) skewY(8deg);clip-path:polygon(0 0,70% 0,23% 44%,80% 58%,42% 100%,0 100%)}62%{opacity:.67;transform:scaleX(1.23) skewY(-3deg)}82%{opacity:.1}}
@keyframes prime-v5-crush-right{0%,100%{opacity:0;transform:none}17%{opacity:.7;clip-path:polygon(63% 0,100% 0,100% 100%,33% 100%,71% 62%,34% 47%);transform:scaleX(1.12)}42%{opacity:.98;transform:scaleX(.34) skewY(-9deg)}65%{opacity:.48;transform:scaleX(1.2) skewY(3deg)}80%{opacity:0}}


/* ORIGAMI-FOLD | Individual letters hinge backward into real perspective folds */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="origami-fold"]>.prime-text-sfx-plane-primary{animation:prime-v5-origami-body 920ms steps(1,end) both!important;perspective:250px!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="origami-fold"]>.prime-text-sfx-plane-primary>.prime-text-sfx-glyph{animation:prime-v5-origami-letter 920ms cubic-bezier(.44,0,.36,1) both!important;animation-delay:calc(var(--sfx-i) * 32ms)!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="origami-fold"]>.prime-text-sfx-plane-secondary{animation:prime-v5-origami-edge 920ms steps(1,end) both!important;}

@keyframes prime-v5-origami-body{0%,100%{opacity:0}12%,78%{opacity:.83}}
@keyframes prime-v5-origami-letter{0%,100%{transform:rotateX(0deg) rotateY(0deg)}21%{transform:rotateX(55deg) rotateY(-14deg)}39%{transform:rotateX(-65deg) rotateY(17deg)}55%{transform:rotateX(94deg) rotateY(25deg)}78%{transform:rotateX(0deg) rotateY(0deg)}}
@keyframes prime-v5-origami-edge{0%,100%{opacity:0;clip-path:inset(0)}22%{opacity:.25;clip-path:inset(0 0 63% 0);transform:skewX(5deg)}52%{opacity:.46;clip-path:inset(61% 0 0 0);transform:skewX(-5deg)}75%{opacity:0}}


/* SONIC-RIPPLE | Expanding circular soundfronts refract glyphs in concentric rings */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="sonic-ripple"]>.prime-text-sfx-plane-primary{animation:prime-v5-sonic-ring 860ms cubic-bezier(.1,.65,.3,1) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="sonic-ripple"]>.prime-text-sfx-plane-secondary{animation:prime-v5-sonic-back 860ms cubic-bezier(.1,.65,.3,1) both!important;}

@keyframes prime-v5-sonic-ring{0%,100%{opacity:0;clip-path:circle(0% at 50% 50%);transform:scale(1)}18%{opacity:.75;clip-path:circle(12% at 50% 50%);transform:scaleY(1.2)}37%{opacity:.82;clip-path:circle(32% at 50% 50%);transform:scaleX(1.09)}62%{opacity:.45;clip-path:circle(66% at 50% 50%);transform:scaleY(.96)}82%{opacity:.04;clip-path:circle(92% at 50% 50%);transform:scale(1)}}
@keyframes prime-v5-sonic-back{0%,100%{opacity:0;clip-path:circle(0% at 50% 50%)}35%{opacity:.3;clip-path:circle(5% at 50% 50%);transform:scaleY(.81)}61%{opacity:.54;clip-path:circle(39% at 50% 50%);transform:scaleX(1.16)}83%{opacity:.05;clip-path:circle(90% at 50% 50%)}}


/* PARITY-FLIP | Alternating letter faces reverse individually on the Y axis */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="parity-flip"]>.prime-text-sfx-plane-primary{animation:prime-v5-parity-field 640ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="parity-flip"]>.prime-text-sfx-plane-primary>.prime-text-sfx-glyph{animation:prime-v5-parity-letter 640ms ease-in-out both!important;animation-delay:calc(var(--sfx-i) * 49ms)!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="parity-flip"]>.prime-text-sfx-plane-secondary{animation:prime-v5-parity-shadow 640ms steps(1,end) both!important;}

@keyframes prime-v5-parity-field{0%,100%{opacity:0}10%,77%{opacity:.85}}
@keyframes prime-v5-parity-letter{0%,100%{transform:rotateY(0deg)}22%{transform:rotateY(90deg)}39%{transform:rotateY(180deg)}55%{transform:rotateY(270deg)}70%{transform:rotateY(360deg)}}
@keyframes prime-v5-parity-shadow{0%,100%{opacity:0;transform:scaleX(1)}37%{opacity:.22;transform:scaleX(-1)}58%{opacity:.4;transform:scaleX(-1)}80%{opacity:0;transform:none}}


/* TIME-ECHO | Past/future ghost images arrive early and late, like a temporal exposure */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="time-echo"]>.prime-text-sfx-plane-primary{animation:prime-v5-past-exposure 970ms ease-out both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="time-echo"]>.prime-text-sfx-plane-secondary{animation:prime-v5-future-exposure 970ms ease-out both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="time-echo"]>.prime-text-sfx-plane-tertiary{animation:prime-v5-present-exposure 970ms ease-out both!important;}

@keyframes prime-v5-past-exposure{0%,100%{opacity:0;transform:none}8%{opacity:.18;transform:translateX(-9px)}29%{opacity:.38;transform:translateX(-6px)}56%{opacity:.29;transform:translateX(-2px)}82%{opacity:.04;transform:none}}
@keyframes prime-v5-future-exposure{0%,100%{opacity:0;transform:none}20%{opacity:.31;transform:translateX(10px)}42%{opacity:.46;transform:translateX(7px)}67%{opacity:.23;transform:translateX(2px)}89%{opacity:0;transform:none}}
@keyframes prime-v5-present-exposure{0%,100%{opacity:0;transform:none}33%{opacity:.1;transform:translateX(0)}59%{opacity:.47;transform:translateX(0)}76%{opacity:.14}}


/* DEPTH-SHATTER | Shards separate on three Z depths, rotating as physical fragments */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="depth-shatter"]>.prime-text-sfx-plane-primary{animation:prime-v5-shatter-near 860ms cubic-bezier(.2,.7,.2,1) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="depth-shatter"]>.prime-text-sfx-plane-secondary{animation:prime-v5-shatter-far 860ms cubic-bezier(.2,.7,.2,1) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="depth-shatter"]>.prime-text-sfx-plane-tertiary{animation:prime-v5-shatter-center 860ms cubic-bezier(.2,.7,.2,1) both!important;}

@keyframes prime-v5-shatter-near{0%,100%{opacity:0;transform:none}18%{opacity:.9;clip-path:polygon(0 0,56% 0,42% 44%,70% 86%,27% 100%,0 100%);transform:translate3d(-1px,-1px,2px) rotateY(-4deg)}43%{opacity:.83;transform:translate3d(-6px,-3px,9px) rotateY(-23deg)}75%{opacity:.1;transform:none}}
@keyframes prime-v5-shatter-far{0%,100%{opacity:0;transform:none}20%{opacity:.9;clip-path:polygon(56% 0,100% 0,100% 100%,27% 100%,70% 86%,42% 44%);transform:translate3d(1px,1px,-2px) rotateY(4deg)}44%{opacity:.8;transform:translate3d(6px,3px,-8px) rotateY(22deg)}74%{opacity:.1;transform:none}}
@keyframes prime-v5-shatter-center{0%,100%{opacity:0;transform:none}29%{opacity:.29;clip-path:polygon(30% 13%,72% 0,90% 63%,42% 98%,10% 57%)}48%{opacity:.62;transform:translate3d(1px,-4px,12px) rotateX(14deg)}77%{opacity:0;transform:none}}


/* NANITE-REPAIR | False cipher glyphs self-assemble into the original text, progressively */
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="nanite-repair"]>.prime-text-sfx-plane-primary{animation:prime-v5-nanite-unbuilt 990ms steps(1,end) both!important;-webkit-mask-image:repeating-conic-gradient(#000 0 25%,transparent 0 50%)!important;mask-image:repeating-conic-gradient(#000 0 25%,transparent 0 50%)!important;-webkit-mask-size:3px 3px!important;mask-size:3px 3px!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="nanite-repair"]>.prime-text-sfx-plane-secondary{animation:prime-v5-nanite-construct 990ms steps(1,end) both!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="nanite-repair"]>.prime-text-sfx-plane-secondary>.prime-text-sfx-glyph{animation:prime-v5-nanite-atom 990ms steps(1,end) both!important;animation-delay:calc(var(--sfx-i) * 28ms)!important;}
html body .prime-text-sfx-atom[data-prime-text-sfx-effect="nanite-repair"]>.prime-text-sfx-plane-tertiary{animation:prime-v5-nanite-restore 990ms steps(1,end) both!important;}

@keyframes prime-v5-nanite-unbuilt{0%,100%{opacity:0;transform:none}12%{opacity:.8;clip-path:inset(0)}31%{opacity:.72;transform:translateY(-3px);clip-path:inset(0 0 40% 0)}49%{opacity:.24;transform:translateY(-5px);clip-path:inset(0 0 82% 0)}57%{opacity:0}}
@keyframes prime-v5-nanite-construct{0%,100%{opacity:0}31%{opacity:.6}52%{opacity:.9}73%{opacity:0}}
@keyframes prime-v5-nanite-atom{0%{opacity:0;transform:translateY(6px) scale(.3)}29%{opacity:.6;transform:translateY(3px) scale(.6)}61%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:none}}
@keyframes prime-v5-nanite-restore{0%,47%{opacity:0;clip-path:inset(0 100% 0 0)}59%{opacity:.9;clip-path:inset(0 62% 0 0)}76%{opacity:1;clip-path:inset(0 0 0 0)}100%{opacity:1}}



/* ZERO-LAYOUT TEXT SFX v6: native text stays untouched.
   The only generated DOM is a paint-contained, fixed viewport glyph overlay.
   It cannot change any scrollport's height, inline wrapping, focus or anchor. */
html body .prime-text-sfx-atom.prime-text-sfx-viewport-word{
  position:fixed!important;
  display:block!important;
  inset:auto!important;
  left:0!important;
  top:0!important;
  width:var(--prime-text-sfx-width,0px)!important;
  height:var(--prime-text-sfx-height,0px)!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  transform:translate3d(var(--prime-text-sfx-x,0px),var(--prime-text-sfx-y,0px),0)!important;
  transform-origin:top left!important;
  contain:strict!important;
  overflow:hidden!important;
  isolation:isolate!important;
  z-index:2147482000!important;
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  touch-action:none!important;
  white-space:nowrap!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  text-shadow:none!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
  will-change:auto!important;
}
html body .prime-text-sfx-atom.prime-text-sfx-viewport-word>.prime-text-sfx-plane{
  transform-origin:50% 50%!important;
  pointer-events:none!important;
  max-width:100%!important;
  max-height:100%!important;
}
/* Prevent the old sub-2px Spatial translation from moving a fixed overlay
   into a second 3D coordinate system. Word effects still animate in 2D. */
html[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"]
body .prime-text-sfx-viewport-word>.prime-text-sfx-plane{
  translate:none!important;
}
