:root{--ch-duration:1.2s;--ch-delay:0s;--ch-timing:ease;--ch-repeat:infinite;--ch-reveal-color1:#333;--ch-reveal-color2:#222;--ch-gradient-colors:#09f1b8,#00a2ff,#ff00d2,#fed90f;--ch-gradient-size:300%;--ch-gradient-direction:to right;--ch-accent:#4a6cf7;--ch-spacing:1rem;--ch-border-radius:8px;--ch-box-shadow:0 4px 6px rgba(0,0,0,0.1)}[hover\:ch-text-typewriter]:hover{overflow:hidden;border-right:.15em solid var(--ch-accent);white-space:nowrap;animation:1s steps(40) forwards ch-typewriter,.75s step-end infinite ch-blink-caret}@keyframes ch-typewriter{from{width:0}to{width:100%}}@keyframes ch-blink-caret{from,to{border-color:transparent}50%{border-color:var(--ch-accent)}}[hover\:ch-text-gradient-flow]:hover{background:linear-gradient(45deg,#ff8a00,#da1b60,#00a2ff);background-size:300% 300%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:4s infinite ch-gradient-flow}@keyframes ch-gradient-flow{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}[hover\:ch-text-glitch]:hover{position:relative;animation:.65s linear infinite ch-text-glitch}@keyframes ch-text-glitch{0%,100%{transform:translate(0)}20%{transform:translate(-5px,5px)}40%{transform:translate(-5px,-5px)}60%{transform:translate(5px,5px)}80%{transform:translate(5px,-5px)}}[hover\:ch-text-neon]:hover{animation:1.5s infinite ch-text-neon;text-shadow:0 0 5px #fff,0 0 10px #fff,0 0 20px var(--ch-accent),0 0 40px var(--ch-accent)}@keyframes ch-text-neon{0%,100%{text-shadow:0 0 5px #fff,0 0 10px #fff,0 0 20px var(--ch-accent),0 0 40px var(--ch-accent)}50%{text-shadow:0 0 2px #fff,0 0 5px #fff,0 0 10px var(--ch-accent),0 0 20px var(--ch-accent)}}[hover\:ch-text-bounce]:hover{animation:1s infinite ch-text-bounce}@keyframes ch-text-bounce{0%,100%,50%{transform:translateY(0)}25%{transform:translateY(-15px)}75%{transform:translateY(-7px)}}[hover\:ch-text-wave]:hover{display:inline-block;animation:1s infinite ch-text-wave}@keyframes ch-text-wave{0%,100%{transform:translateY(0)}50%{transform:translateY(-15px)}}[hover\:ch-text-rotate3d]:hover{animation:2s infinite ch-text-rotate3d;transform-style:preserve-3d}@keyframes ch-text-rotate3d{0%{transform:rotateX(0) rotateY(0) rotateZ(0)}100%{transform:rotateX(360deg) rotateY(360deg) rotateZ(360deg)}}[hover\:ch-text-fade-in]:hover{animation:1.2s forwards ch-text-fade-in}@keyframes ch-text-fade-in{from{opacity:0}to{opacity:1}}[hover\:ch-text-slide-in]:hover{animation:1s forwards ch-text-slide-in}@keyframes ch-text-slide-in{from{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}[hover\:ch-text-flip-in]:hover{animation:1.2s forwards ch-text-flip-in;transform-origin:center}@keyframes ch-text-flip-in{from{transform:rotateY(90deg);opacity:0}to{transform:rotateY(0);opacity:1}}[hover\:ch-text-zoom-in]:hover{animation:.8s forwards ch-text-zoom-in}@keyframes ch-text-zoom-in{from{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}[hover\:ch-text-shake]:hover{animation:.5s infinite ch-text-shake}@keyframes ch-text-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}[hover\:ch-text-pulse]:hover{animation:1.5s infinite ch-text-pulse}@keyframes ch-text-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}[hover\:ch-text-wobble]:hover{animation:1.2s infinite ch-text-wobble}@keyframes ch-text-wobble{0%,100%{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}[hover\:ch-text-blink]:hover{animation:1s step-end infinite ch-text-blink}@keyframes ch-text-blink{0%,100%{opacity:1}50%{opacity:0}}[hover\:ch-text-swing]:hover{transform-origin:top center;animation:1.5s infinite ch-text-swing}@keyframes ch-text-swing{0%,100%{transform:rotate(0)}25%{transform:rotate(10deg)}75%{transform:rotate(-10deg)}}[hover\:ch-text-jelly]:hover{animation:1s infinite ch-text-jelly}@keyframes ch-text-jelly{0%,100%{transform:scale(1,1)}25%{transform:scale(1.2,.8)}50%{transform:scale(.8,1.2)}75%{transform:scale(1.1,.9)}}[hover\:ch-text-skew]:hover{animation:1.2s infinite ch-text-skew}@keyframes ch-text-skew{0%,100%{transform:skewX(0)}50%{transform:skewX(15deg)}}[hover\:ch-text-fly-in]:hover{animation:1s forwards ch-text-fly-in}@keyframes ch-text-fly-in{from{transform:translateY(100px) rotate(10deg);opacity:0}to{transform:translateY(0) rotate(0);opacity:1}}[hover\:ch-text-reveal]:hover{position:relative;overflow:hidden}[hover\:ch-text-reveal]:hover::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:var(--ch-accent);animation:1.5s forwards ch-text-reveal}@keyframes ch-text-reveal{from{transform:translateX(-100%)}to{transform:translateX(101%)}}[hover\:ch-text-stretch]:hover{animation:1.2s infinite ch-text-stretch}@keyframes ch-text-stretch{0%,100%{letter-spacing:normal}50%{letter-spacing:10px}}[hover\:ch-text-shadow-pulse]:hover{animation:1.5s infinite ch-text-shadow-pulse}@keyframes ch-text-shadow-pulse{0%,100%{text-shadow:0 0 5px rgba(255,255,255,.5)}50%{text-shadow:0 0 20px rgba(255,255,255,.8)}}[hover\:ch-text-gradient-shift]:hover{background:linear-gradient(45deg,#ff8a00,#da1b60,#00a2ff,#00c9ff);background-size:300% 300%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:6s infinite ch-gradient-shift}@keyframes ch-gradient-shift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}[hover\:ch-text-letter-flip]:hover span{display:inline-block;animation:1s forwards ch-letter-flip;animation-delay:calc(.1s * var(--i))}@keyframes ch-letter-flip{from{transform:rotateX(90deg);opacity:0}to{transform:rotateX(0);opacity:1}}[hover\:ch-text-glow]:hover{animation:1.5s infinite ch-text-glow;text-shadow:0 0 10px #fff,0 0 20px #fff,0 0 30px var(--ch-accent),0 0 40px var(--ch-accent)}