.glowing-button{--shimmer-hue-1:213deg;--shimmer-sat-1:95%;--shimmer-lit-1:91%;--shimmer-hue-2:248deg;--shimmer-sat-2:100%;--shimmer-lit-2:86%;--shimmer-hue-3:293deg;--shimmer-sat-3:78%;--shimmer-lit-3:89%;--glow-hue:222deg;--spring-easing:cubic-bezier(0.25,0.8,0.5,1);--spring-duration:1.33s;position:relative;overflow:hidden;display:inline-block;border:none;outline:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:#fff;background-image:linear-gradient(315deg,hsl(var(--shimmer-hue-1) var(--shimmer-sat-1) var(--shimmer-lit-1)) 0,hsl(var(--shimmer-hue-2) var(--shimmer-sat-2) var(--shimmer-lit-2)) 47%,hsl(var(--shimmer-hue-3) var(--shimmer-sat-3) var(--shimmer-lit-3)) 100%);isolation:isolate;transition:transform var(--spring-duration) var(--spring-easing),box-shadow var(--spring-duration) var(--spring-easing)}.glowing-button:active:not(:disabled),.glowing-button:hover:not(:disabled){transition-duration:calc(var(--spring-duration) * .5)}.glowing-button:disabled{background:#4c4c5c;background-image:none;cursor:not-allowed}.glowing-button .shimmer{opacity:0;position:absolute;inset:0;transform:scale(1.4);border-radius:inherit;pointer-events:none;mix-blend-mode:plus-lighter;-webkit-mask-image:conic-gradient(from var(--mask,0deg),transparent 0,transparent 10%,#000 36%,#000 45%,transparent 50%,transparent 60%,#000 85%,#000 95%,transparent 100%);mask-image:conic-gradient(from var(--mask,0deg),transparent 0,transparent 10%,#000 36%,#000 45%,transparent 50%,transparent 60%,#000 85%,#000 95%,transparent 100%);-webkit-mask-size:cover;mask-size:cover;animation:spin 3s linear -.5s infinite both}.glowing-button .shimmer:after,.glowing-button .shimmer:before{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .5s ease}.glowing-button .shimmer:before{box-shadow:0 0 3px 2px hsl(var(--shimmer-hue-1) 20% 95%),0 0 7px 4px hsl(var(--shimmer-hue-1) 20% 80%),0 0 13px 8px hsl(var(--shimmer-hue-2) 40% 60%),0 0 22px 6px hsl(var(--shimmer-hue-2) 20% 40%);z-index:-1}.glowing-button .shimmer:after{box-shadow:inset 0 0 0 1px hsl(var(--shimmer-hue-2) 70% 95%),inset 0 0 6px 2px hsl(var(--shimmer-hue-2) 100% 80%),inset 0 0 12px 4px hsl(var(--shimmer-hue-2) 100% 70%);z-index:2}.glowing-button:hover .shimmer,.glowing-button:hover .shimmer:after,.glowing-button:hover .shimmer:before{opacity:1}.glowing-button .text{color:#fff;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(120deg,transparent,hsla(var(--shimmer-hue-1),100%,80%,.66) 40%,hsla(var(--shimmer-hue-2),100%,90%,.9) 50%,transparent 52%);background-repeat:no-repeat;background-size:300% 300%;background-position:center 200%}.glowing-button:hover .text{color:#fff;animation:text .66s ease-in-out 1}.glowing-button[data-effect=wipe] .shimmer{-webkit-mask-image:linear-gradient(90deg,transparent 20%,#000 88%,transparent 90%);mask-image:linear-gradient(90deg,transparent 20%,#000 88%,transparent 90%);animation:wipe 1.5s linear -.5s infinite both}.glowing-button[data-effect=wave] .shimmer,.glowing-button[data-effect=wipe] .shimmer{-webkit-mask-size:200% 200%;mask-size:200% 200%;-webkit-mask-position:center;mask-position:center}.glowing-button[data-effect=wave] .shimmer{-webkit-mask-image:linear-gradient(90deg,transparent 15%,#000 45%,#000 55%,transparent 85%);mask-image:linear-gradient(90deg,transparent 15%,#000 45%,#000 55%,transparent 85%);animation:wipe 3s linear -.5s infinite both}.glowing-button[data-effect=throb] .shimmer{-webkit-mask-image:none;mask-image:none;animation:pulse 3s ease -.5s infinite both}.glowing-button[data-effect=pulse] .shimmer{-webkit-mask-image:none;mask-image:none;animation:pulse2 3s ease -.5s infinite both}.glowing-button[data-effect=flicker] .shimmer{-webkit-mask-image:none;mask-image:none;animation:flicker 3.33s ease -.5s infinite both}@keyframes spin{0%{--mask:0deg}to{--mask:360deg}}@keyframes wipe{0%{-webkit-mask-position:200% center;mask-position:200% center}to{-webkit-mask-position:0 center;mask-position:0 center}}@keyframes pulse{0%,90%,to{opacity:0}20%{opacity:1}}@keyframes pulse2{0%{opacity:0}8%{opacity:1}14%{opacity:0}20%{opacity:1}to{opacity:0}}@keyframes flicker{0%{opacity:.1;-webkit-mask-image:none;mask-image:none}1%{opacity:1}2%{opacity:.5}3%{opacity:.1}4%{opacity:.7}5%{opacity:1}7%{opacity:.7;-webkit-mask-image:linear-gradient(90deg,transparent 15%,#000 45%,#000 55%,transparent 85%);mask-image:linear-gradient(90deg,transparent 15%,#000 45%,#000 55%,transparent 85%)}8%{opacity:.1}10%{opacity:.4}13%{opacity:1}15%{opacity:.1;-webkit-mask-image:linear-gradient(45deg,rgba(0,0,0,.4) 25%,transparent 45%,#000 65%,#000 90%,transparent);mask-image:linear-gradient(45deg,rgba(0,0,0,.4) 25%,transparent 45%,#000 65%,#000 90%,transparent)}17%{opacity:.8}19%{opacity:.3}21.5%{opacity:0}23%{opacity:1}39%{opacity:.7}45%{opacity:.2}49%{opacity:.9}52%{opacity:.7}53.5%{opacity:.2;-webkit-mask-image:linear-gradient(90deg,#000 15%,#000 45%,rgba(0,0,0,.4) 75%,transparent 85%);mask-image:linear-gradient(90deg,#000 15%,#000 45%,rgba(0,0,0,.4) 75%,transparent 85%)}57%{opacity:.8}63%{opacity:1}75%{opacity:.85}77%{opacity:1}80%{opacity:.9}82%{opacity:.95}83%{opacity:.85}86%{opacity:1}89%{opacity:.85}91%{opacity:1}92%{opacity:.9}to{opacity:1}}@keyframes text{0%{background-position:100%}to{background-position:-100%}}