.generate-btn{--btn-width:100%;--btn-height:52px;--bg-color:#0c0d10;--border-color:#ffffff1a;--primary-gradient:linear-gradient(135deg, #7c3aed 0%, #3b82f6 100%);--hover-shadow:0 0 40px #7c3aed33;--active-scale:.98;width:var(--btn-width);height:var(--btn-height);background-color:var(--bg-color);cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;padding:2px;transition:all .4s cubic-bezier(.23,1,.32,1);display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px -10px #0000004d}.generate-btn:before{content:"";z-index:0;background:conic-gradient(#0000,#0000,#7c3aed,#3b82f6,#10b981,#0000,#0000);width:300%;height:300%;animation:4s linear infinite border-rotate;position:absolute;top:-100%;left:-100%}@keyframes border-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.generate-btn:after{content:"";background:var(--bg-color);z-index:1;border-radius:12px;transition:all .3s;position:absolute;inset:2px}.generate-btn:hover:after{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c0d10d9}.btn-content{z-index:10;color:#fff;justify-content:center;align-items:center;gap:10px;width:100%;height:100%;display:flex;position:relative}.btn-icon{color:#7c3aed;filter:drop-shadow(0 0 5px #7c3aed80);width:20px;height:20px;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.btn-text{letter-spacing:-.01em;background:linear-gradient(#fff,#e2e8f0);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:15px;font-weight:700;transition:all .3s}.generate-btn:hover{box-shadow:var(--hover-shadow);transform:translateY(-2px)}.generate-btn:hover .btn-icon{color:#3b82f6;transform:scale(1.2)rotate(15deg)}.generate-btn:active{transform:translateY(0) scale(var(--active-scale))}.btn-shimmer{z-index:2;background:linear-gradient(90deg,#0000,#ffffff1a,#0000);width:100%;height:100%;transition:all .6s;position:absolute;top:0;left:-100%}.generate-btn:hover .btn-shimmer{transition:all .8s;left:100%}.generate-btn.is-loading{pointer-events:none}.generate-btn.is-loading:before{background:conic-gradient(#7c3aed,#3b82f6,#7c3aed);animation:1s linear infinite border-rotate}.generate-btn.is-disabled{opacity:.5;filter:grayscale();cursor:not-allowed;pointer-events:none}.btn-particles{z-index:5;opacity:0;transition:opacity .3s;position:absolute;inset:0;overflow:hidden}.generate-btn:hover .btn-particles{opacity:1}.particle{filter:blur(1px);background:#7c3aed;border-radius:50%;width:4px;height:4px;position:absolute}.particle.p1{animation:2s ease-in-out infinite p-float;top:20%;left:10%}.particle.p2{animation:2.5s ease-in-out .5s infinite p-float;top:70%;left:85%}.particle.p3{animation:3s ease-in-out 1s infinite p-float;top:15%;left:90%}.particle.p4{animation:2.2s ease-in-out .3s infinite p-float;top:80%;left:15%}@keyframes p-float{0%,to{opacity:.2;transform:translate(0)scale(1)}50%{opacity:.8;transform:translate(5px,-10px)scale(1.5)}}.dark .generate-btn{--bg-color:#030406}
