.battle-animation-layer{position:fixed;inset:0;z-index:11000;pointer-events:none;overflow:hidden;color:#d9fff8;font-family:var(--font-mono,monospace)}.glitch-world-transition{background:transparent}.glitch-fault,.glitch-noise,.glitch-slices,.glitch-collapse,.glitch-rebuild{position:absolute;inset:0}.glitch-fault{opacity:0;background:linear-gradient(transparent 46%,rgba(54,255,230,.35) 47%,rgba(255,26,93,.3) 48%,transparent 49%)}.phase-fault .glitch-fault{animation:glitchFault .7s steps(2)}.glitch-noise{opacity:0;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(76,255,223,.055) 4px)}.phase-corrupt .glitch-noise{opacity:1;animation:glitchNoise .16s steps(2) infinite}.glitch-slices i{position:absolute;left:0;right:0;top:calc(var(--slice)*14.285%);height:14.4%;opacity:0;background:rgba(8,10,15,.08);border-block:1px solid rgba(80,255,230,.08);backdrop-filter:contrast(1.15) saturate(1.4)}.phase-desync .glitch-slices i{opacity:1;animation:glitchSlice .5s steps(2) infinite alternate;animation-delay:calc(var(--slice)*-73ms)}.glitch-collapse{display:grid;place-content:center;text-align:center;opacity:0;background:#020305}.glitch-collapse img{width:min(280px,35vw);filter:drop-shadow(12px 0 rgba(255,20,70,.5)) drop-shadow(-10px 0 rgba(25,255,230,.45));clip-path:polygon(0 0,100% 0,100% 47%,92% 48%,100% 52%,100% 100%,0 100%,0 51%,8% 49%,0 46%)}.glitch-system-line{margin-top:18px;font-weight:900;letter-spacing:.18em}.phase-collapse .glitch-collapse{opacity:1}.phase-collapse .glitch-collapse img{animation:glitchEye .22s steps(2) infinite}.glitch-rebuild{display:grid;place-content:center;text-align:center;opacity:0;background:repeating-linear-gradient(90deg,#03050a 0 12%,#071014 12% 12.4%);font:900 clamp(18px,3vw,38px) var(--font-machine,monospace);letter-spacing:.08em;transform:scaleY(.02)}.glitch-rebuild small{display:block;margin-top:12px;color:#8ee8da;font-size:.45em}.phase-rebuild .glitch-rebuild{animation:glitchRebuild 1.25s steps(8) forwards}.phase-rebuild .glitch-collapse{opacity:0}.battle-ambience-glitch-world body.room-mode-battle::after{content:"";position:fixed;z-index:9000;inset:0;pointer-events:none;opacity:.12;background:linear-gradient(transparent 50%,rgba(60,255,220,.07) 51%);background-size:100% 5px;animation:glitchAmbient 14s linear infinite}.battle-ambience-glitch-world body.room-mode-battle :is(.toolbar-btn,.cell):hover{filter:drop-shadow(1px 0 rgba(255,44,91,.22)) drop-shadow(-1px 0 rgba(41,255,225,.2))}.glitch-world-micro{animation:glitchMicro .15s steps(2)!important}@keyframes glitchFault{20%{opacity:.8;transform:translateX(9px)}45%{opacity:.15;transform:translateX(-4px)}100%{opacity:0}}@keyframes glitchNoise{50%{transform:translateY(3px)}}@keyframes glitchSlice{0%{transform:translateX(calc((var(--slice) - 3)*4px))}100%{transform:translateX(calc((3 - var(--slice))*7px))}}@keyframes glitchEye{50%{transform:translateX(7px);filter:drop-shadow(-13px 0 #0ff) drop-shadow(15px 0 #f23)}}@keyframes glitchRebuild{0%{opacity:1;transform:scaleY(.02)}35%{transform:scaleY(.35) translateX(12px)}65%{transform:scaleY(.82) translateX(-5px)}100%{opacity:1;transform:none}}@keyframes glitchAmbient{to{background-position:0 100vh}}@keyframes glitchMicro{50%{transform:translateX(4px);filter:hue-rotate(70deg) contrast(1.4)}}@media(prefers-reduced-motion:reduce){.glitch-world-transition *,.battle-ambience-glitch-world body::after{animation:none!important}.glitch-slices,.glitch-noise{display:none}}
