.crt-effect-wrapper.sweep-on:before{content:"";width:100%;height:var(--sweep-thickness,10px);pointer-events:none;animation:sweep-line var(--sweep-duration,7s) linear infinite;z-index:9999;filter:blur(1.5px);background:linear-gradient(#0000 0%,#0006 40%,#0009 50%,#08080880 50%,#0000 100%);position:absolute;top:-30%;left:0}.crt-effect-wrapper.sweep-soft:before{content:"";width:100%;height:var(--sweep-thickness,10px);pointer-events:none;animation:sweep-line var(--sweep-duration,7s) linear infinite;z-index:9999;filter:blur(5px);background:linear-gradient(#0000 0%,#00000026 40%,#0000001a 50%,#00000014 55%,#0000 100%);position:absolute;top:-30%;left:0}@keyframes sweep-line{0%{top:-30%}to{top:130%}}.crt-effect-wrapper.scanlines-on:after{content:"";pointer-events:none;background-image:repeating-linear-gradient(var(--scanline-gradient-direction,to bottom),rgba(var(--scanline-color-rgb,91, 179, 135),calc(var(--scanline-opacity,.035))) 0px,rgba(var(--scanline-color-rgb,18, 58, 39),calc(var(--scanline-opacity,.2))) var(--scanline-thickness,2px),transparent var(--scanline-thickness,2px),transparent calc(var(--scanline-thickness,2px) + var(--scanline-gap,3px)));z-index:9998;mix-blend-mode:screen;position:absolute;inset:0}.crt-edge-glow{pointer-events:none;box-shadow:inset 0 0 var(--edge-glow-size,30px) var(--edge-glow-color,#00ff8033);z-index:9998;position:absolute;inset:0}.crt-vignette{pointer-events:none;background:radial-gradient(ellipse at center,#0000 60%,rgba(0,0,0,var(--vignette-intensity,.4)));mix-blend-mode:multiply;z-index:9997;position:absolute;inset:0}.crt-inner{width:100%;height:100%}.crt-effect-wrapper.flicker-on{animation:crt-flicker var(--flicker-speed,.8s) infinite}@keyframes crt-flicker{0%,to{opacity:1}10%{opacity:calc(1 - var(--flicker-intensity,.15) * .53)}20%{opacity:calc(1 - var(--flicker-intensity,.15) * .13)}30%{opacity:calc(1 - var(--flicker-intensity,.15) * .8)}40%{opacity:calc(1 - var(--flicker-intensity,.15) * .33)}50%{opacity:calc(1 - var(--flicker-intensity,.15) * .67)}60%{opacity:1}70%{opacity:calc(1 - var(--flicker-intensity,.15) * 1)}80%{opacity:calc(1 - var(--flicker-intensity,.15) * .27)}90%{opacity:1}}.crt-inner.glitch-on{animation:glitch-fuzz var(--glitch-speed,.6s) ease-in-out infinite;will-change:transform}@keyframes glitch-fuzz{0%,to{transform:translate(0)skew(0deg)}10%{transform:translate(calc(-2px * var(--glitch-intensity,1)),calc(1px * var(--glitch-intensity,1))) skew(calc(-.5deg * var(--glitch-intensity,1)))}20%{transform:translate(0)skew(0deg)}30%{transform:translate(calc(3px * var(--glitch-intensity,1)),calc(-1px * var(--glitch-intensity,1))) skew(calc(.8deg * var(--glitch-intensity,1)))}40%{transform:translate(0)skew(0deg)}50%{transform:translate(calc(-1px * var(--glitch-intensity,1)),calc(2px * var(--glitch-intensity,1))) skew(calc(-.3deg * var(--glitch-intensity,1)))}60%{transform:translate(0)skew(0deg)}70%{transform:translate(calc(2px * var(--glitch-intensity,1)),calc(-2px * var(--glitch-intensity,1))) skew(calc(.6deg * var(--glitch-intensity,1)))}80%,90%{transform:translate(0)skew(0deg)}}@media (prefers-reduced-motion:reduce){.crt-effect-wrapper.sweep-on:before,.crt-effect-wrapper.sweep-soft:before{display:none;animation:none!important}.crt-effect-wrapper.flicker-on{opacity:1!important;animation:none!important}.crt-inner.glitch-on{animation:none!important;transform:none!important}}
