1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5889,6018],{37540:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(66352),a=n(95132);let i={colorA:"#0d8ed6",colorB:"#19282f",brightness:1,speed:.55,spread:.27,diag:-1,alpha:2};function o(e){let t=parseInt(e.slice(1),16);return new Float32Array([(t>>16&255)/255,(t>>8&255)/255,(255&t)/255])}function s(e){let{variant:t="section"}=e,n=(0,a.useRef)(null);return(0,a.useEffect)(()=>{let e,r=n.current;if(!r)return;let a="page"===t,s=window.matchMedia("(prefers-reduced-motion: reduce)").matches,l=0,c=()=>{let e,t=r.getContext("webgl",{alpha:!1,depth:!1,stencil:!1,antialias:!1,powerPreference:"low-power"});if(!t)return;let n=function(e){let t=(t,n)=>{let r=e.createShader(t);return r?(e.shaderSource(r,n),e.compileShader(r),r):null},n=t(e.VERTEX_SHADER,"\nattribute vec2 aPos;\nvarying vec2 vUv;\nvoid main() {\n vUv = aPos * 0.5 + 0.5;\n gl_Position = vec4(aPos, 0.0, 1.0);\n}"),r=t(e.FRAGMENT_SHADER,"\nprecision highp float;\n\nvarying vec2 vUv;\nuniform float uTime;\nuniform float uIntensity;\nuniform vec3 uColorA;\nuniform vec3 uColorB;\nuniform float uSpread;\nuniform float uDiag;\nuniform vec2 uEdgeFade; // (top, bottom) fade widths, 0 = none\n\nvec3 warp3d(vec3 pos, float t) {\n float curv = 0.8;\n float a = 1.9;\n float b = 0.7;\n pos *= 2.0;\n pos.x += curv * sin(t + a * pos.y) + t * b;\n pos.y += curv * cos(t + a * pos.x);\n pos.y += curv * sin(t + a * pos.z) + t * b;\n pos.z += curv * cos(t + a * pos.y);\n pos.z += curv * sin(t + a * pos.x) + t * b;\n pos.x += curv * cos(t + a * pos.z);\n return 0.5 + 0.5 * cos(pos + vec3(1.0, 2.0, 4.0));\n}\n\nvoid main() {\n vec2 uv = 2.0 * vUv - 1.0;\n vec3 w = pow(warp3d(vec3(uv.x, sin(uv.y), uv.y), uTime), vec3(1.5));\n vec3 col = 1.5 * uColorA * w.x;\n col *= w.y;\n col += uColorB * w.z;\n col *= smoothstep(uSpread, 1.0, abs(uv.y));\n float m = smoothstep(uDiag, 1.0, -uv.y * uv.x);\n col *= m * m;\n // Ease to black before the horizontal edges (section variant); at\n // uEdgeFade 0 the epsilon keeps smoothstep defined and this is a no-op.\n float edgeFade = uv.y > 0.0 ? uEdgeFade.x : uEdgeFade.y;\n col *= smoothstep(0.0, max(edgeFade, 0.0001), 1.0 - abs(uv.y));\n col *= uIntensity;\n // \xb10.5/255 of noise breaks the 8-bit banding these dark gradients\n // would otherwise show.\n float n = fract(sin(dot(gl_FragCoord.xy, vec2(12.9898, 78.233))) * 43758.5453);\n col += (n - 0.5) / 255.0;\n gl_FragColor = vec4(col, 1.0);\n}");if(!n||!r)return null;let a=e.createProgram();return a?(e.attachShader(a,n),e.attachShader(a,r),e.linkProgram(a),e.deleteShader(n),e.deleteShader(r),e.getProgramParameter(a,e.LINK_STATUS))?a:(e.deleteProgram(a),null):null}(t);if(!n)return;t.useProgram(n);let c=t.createBuffer();t.bindBuffer(t.ARRAY_BUFFER,c),t.bufferData(t.ARRAY_BUFFER,new Float32Array([-1,-1,3,-1,-1,3]),t.STATIC_DRAW);let d=t.getAttribLocation(n,"aPos");t.enableVertexAttribArray(d),t.vertexAttribPointer(d,2,t.FLOAT,!1,0,0);let p=t.getUniformLocation(n,"uTime"),u=t.getUniformLocation(n,"uIntensity");t.uniform3fv(t.getUniformLocation(n,"uColorA"),o(i.colorA)),t.uniform3fv(t.getUniformLocation(n,"uColorB"),o(i.colorB)),t.uniform1f(t.getUniformLocation(n,"uSpread"),i.spread),t.uniform1f(t.getUniformLocation(n,"uDiag"),i.diag),t.uniform2f(t.getUniformLocation(n,"uEdgeFade"),.2*!a,.32*!a);let m=0,g=e=>{m||(m=e);let n=e-m;t.uniform1f(p,e/1e3*i.speed);let r=s?1:Math.max(0,Math.min(1,(n-200)/1500));t.uniform1f(u,i.brightness*i.alpha*r),t.drawArrays(t.TRIANGLES,0,3)},h=()=>{let e=r.clientWidth,n=r.clientHeight;if(!e||!n)return;let a=Math.min(.5,1536/e),i=Math.max(1,Math.round(e*a)),o=Math.max(1,Math.round(n*a));(r.width!==i||r.height!==o)&&(r.width=i,r.height=o,t.viewport(0,0,i,o),s&&g(12e3))},x=new ResizeObserver(h);x.observe(r),h();let f=!1,v=!1,y=e=>{g(e),f?l=requestAnimationFrame(y):v=!1},b=()=>{s||v||!f||(v=!0,l=requestAnimationFrame(y))};if(a){let t=()=>{let e=window.innerHeight||1,t=Math.max(0,Math.min(1,(window.scrollY-.12*e)/(.43000000000000005*e))),n=1-t*t*(3-2*t);r.style.opacity=n.toFixed(3),f=n>0,b()};window.addEventListener("scroll",t,{passive:!0}),t(),e=()=>window.removeEventListener("scroll",t)}else{let t=new IntersectionObserver(e=>{let[t]=e;f=t.isIntersecting,b()});t.observe(r),e=()=>t.disconnect()}return s&&g(12e3),()=>{e(),x.disconnect(),cancelAnimationFrame(l),v=!1,t.deleteBuffer(c),t.deleteProgram(n)}},d=e=>{e.preventDefault(),cancelAnimationFrame(l)},p=()=>{null==e||e(),e=c()};return r.addEventListener("webglcontextlost",d),r.addEventListener("webglcontextrestored",p),e=c(),()=>{var t,n;r.removeEventListener("webglcontextlost",d),r.removeEventListener("webglcontextrestored",p),null==e||e(),null==(n=r.getContext("webgl"))||null==(t=n.getExtension("WEBGL_lose_context"))||t.loseContext()}}
1,[t]),(0,r.jsx)("canvas",{ref:n,"aria-hidden":!0,className:"pointer-events-none mix-blend-screen light:invert light:hue-rotate-180 light:mix-blend-multiply ".concat("page"===t?"fixed inset-x-0 top-0 h-lvh w-full":"absolute inset-x-0 w-full"),style:"section"===t?{top:"-".concat(12,"rem"),height:"calc(100% + ".concat(24,"rem)")}:void 0})}},56900:(e,t,n)=>{"use strict";n.d(t,{A:()=>l});var r=n(66352),a=n(28806),i=n.n(a),o=n(34597);function s(e){let t=e.split("?")[0].split("#")[0];return""===t||"/"===t?"/":t.endsWith("/")?t:"".concat(t,"/")}function l(e){var t;let{title:n,description:a,openGraphTitle:l,openGraphImageInnerImageUrl:c,openGraphImageUrl:d,canonicalUrl:p,twitterTitle:u,twitterDescription:m,twitterImage:g,twitterUrl:h,twitterSite:x="@LuxAlgo",pathname:f,markdownPath:v,siteName:y="LuxAlgo",children:b}=e,w=(0,o.useRouter)(),_="https://www.luxalgo.com",j=s(null!=(t=null!=f?f:w.asPath)?t:"/"),k="".concat(_).concat(j),A=p?function(e,t){if(!e.startsWith(t))return e;let n=e.slice(t.length);return"".concat(t).concat(s(n))}(p,_):k,N="",S=null;if(d)(N=d.startsWith("/")?"".concat(_).concat(d):d).includes("/api/og/")&&(S="image/png");else if(j.includes("/library/indicator")){let e=new URL("".concat(_,"/api/library/generate-image/"));e.searchParams.append("title",l||n),c&&e.searchParams.append("imageUrl",c),N=e.toString(),S="image/png"}else N="".concat(_,"/images/logo/luxalgo_og_default.jpg"),S="image/jpeg";return(0,r.jsxs)(i(),{children:[(0,r.jsx)("title",{children:n}),(0,r.jsx)("meta",{name:"description",content:a}),(0,r.jsx)("link",{rel:"canonical",href:A}),v&&(0,r.jsx)("link",{rel:"alternate",type:"text/markdown",href:v.startsWith("http")?v:"".concat(_).concat(v)}),(0,r.jsx)("meta",{property:"og:locale",content:"en_US"}),(0,r.jsx)("meta",{property:"og:url",content:A}),(0,r.jsx)("meta",{property:"og:type",content:"website"}),(0,r.jsx)("meta",{property:"og:title",content:l||n}),(0,r.jsx)("meta",{property:"og:site_name",content:y}),(0,r.jsx)("meta",{property:"og:description",content:a}),(0,r.jsx)("meta",{property:"og:image",content:N}),(0,r.jsx)("meta",{property:"og:image:alt",content:l||n}),S&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("meta",{property:"og:image:type",content:S}),(0,r.jsx)("meta",{property:"og:image:width",content:"1200"}),(0,r.jsx)("meta",{property:"og:image:height",content:"630"})]}),(0,r.jsx)("meta",{property:"og:logo",content:"".concat(_,"/external/open-graph/luxalgo_logo_full_white.png")}),(0,r.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,r.jsx)("meta",{name:"twitter:site",content:x}),(0,r.jsx)("meta",{name:"twitter:title",content:u||n}),(0,r.jsx)("meta",{name:"twitter:description",content:m||a}),(0,r.jsx)("meta",{name:"twitter:image",content:g||N}),(0,r.jsx)("meta",{name:"twitter:image:alt",content:l||n}),(0,r.jsx)("meta",{name:"twitter:url",content:h||A}),b]})}n(81686)},69626:(e,t,n)=>{"use strict";n.d(t,{Ib:()=>i,T9:()=>c,Wx:()=>o,gN:()=>s,tG:()=>l});var r=n(66352),a=n(95132);function i(){let[e,t]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{let e=window.matchMedia("(prefers-reduced-motion: reduce)");t(e.matches);let n=e=>t(e.matches);return e.addEventListener("change",n),()=>e.removeEventListener("change",n)},[]),e}function o(e){let t=(0,a.useRef)(null),[n,r]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{var n,a;let i=t.current;if(!i)return;let o=new IntersectionObserver(e=>{let[t]=e;t.isIntersecting&&(r(!0),o.disconnect())},{rootMargin:null!=(n=null==e?void 0:e.rootMargin)?n:"0px 0px -12% 0px",threshold:null!=(a=null==e?void 0:e.threshold)?a:.15});return o.observe(i),()=>o.disconnect()},[]),[t,n]}function s(e){let{children:t,delay:n=0,y:a=16,blur:s=10,immediate:l=!1,className:c=""}=e,d=i(),[p,u]=o(),m=u||d;return l?(0,r.jsx)("div",{className:"animate-[reveal-in_700ms_cubic-bezier(0.16,1,0.3,1)_both] motion-reduce:animate-none ".concat(c),style:{animationDelay:"".concat(n,"ms")},children:t}):(0,r.jsx)("div",{ref:p,className:"transition-[opacity,transform,filter] duration-700 ease-[cubic-bezier(0.16,1,0.3,1)] will-change-transform motion-reduce:transition-none ".concat(c),style:{transitionDelay:m?"".concat(n,"ms"):"0ms",opacity:+!!m,transform:d?void 0:m?"translateY(0)":"translateY(".concat(a,"px)"),filter:d?void 0:m?"blur(0)":"blur(".concat(s,"px)")},children:t})}function l(e){let{text:t,className:n="",delay:a=0,step:s=70,immediate:l=!1}=e,c=i(),[d,p]=o(),u=l||p,m=t.split(" ");return(0,r.jsx)("span",{ref:d,className:n,children:m.map((e,t)=>(0,r.jsxs)("span",{className:"inline-block whitespace-pre will-change-[filter,transform] motion-reduce:animate-none",style:c?void 0:u?{animation:"vela-word 640ms ".concat("cubic-bezier(0.16, 1, 0.3, 1)"," ").concat(a+t*s,"ms both")}:{opacity:0}
1,children:[e,t<m.length-1?" ":""]},t))})}function c(e){let{value:t,decimals:n=0,prefix:s="",suffix:l="",locale:c=!1,start:d}=e,p=i(),[u,m]=o(),[g,h]=(0,a.useState)(0),x=null!=d?d:m;return(0,a.useEffect)(()=>{let e;if(!x)return;if(p)return void h(t);let n=performance.now(),r=a=>{let i=Math.min(1,(a-n)/1400);h(t*(1-Math.pow(1-i,3))),i<1&&(e=requestAnimationFrame(r))};return e=requestAnimationFrame(r),()=>cancelAnimationFrame(e)},[x,p,t]),(0,r.jsxs)("span",{ref:u,children:[s,c?Math.round(g).toLocaleString("en-US"):g.toFixed(n),l]})}},69734:(e,t,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/pricing",function(){return n(99867)}])},72766:(e,t,n)=>{"use strict";n.d(t,{Bk:()=>u,MA:()=>f,Y0:()=>c,Zk:()=>h,gV:()=>x,iq:()=>d,jD:()=>g,pq:()=>m,vu:()=>p,w:()=>l});var r=n(66352),a=n(94092),i=n.n(a),o=n(56331),s=n(69626);function l(e){let{children:t,as:n="h2"}=e;return(0,r.jsx)(n,{className:"text-[clamp(32px,4vw,52px)] leading-[1.08] font-medium tracking-tight text-fg-100 text-pretty",children:"string"==typeof t?(0,r.jsx)(s.tG,{text:t,step:55,immediate:"h1"===n}):t})}function c(e){let{children:t}=e;return(0,r.jsx)("p",{className:"text-lg sm:text-xl text-fg-200 text-pretty max-w-prose",children:t})}function d(e){let{children:t}=e;return(0,r.jsx)("p",{className:"text-base leading-relaxed text-fg-300 text-pretty max-w-prose",children:t})}function p(e){let{children:t}=e;return(0,r.jsx)("span",{className:"inline-flex items-center rounded-full border border-white/10 px-3 py-1 text-xs text-fg-200 whitespace-nowrap",children:t})}function u(e){let{children:t,onClick:n,href:a,withArrow:s=!0,disabled:l=!1}=e,c=(0,r.jsxs)(r.Fragment,{children:[t,s&&(0,r.jsx)(o.A,{"aria-hidden":!0,className:"size-4 transition-transform duration-200 ease-out-quart group-hover:translate-x-0.5"})]}),d="group relative inline-flex items-center gap-2 rounded-full bg-white px-6 py-2.5 text-sm font-medium text-black transition-[transform,background-color] duration-[160ms] ease-out-quart hover:bg-fg-100 active:scale-[0.97] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white";return a?(0,r.jsx)(i(),{href:a,className:d,children:c}):(0,r.jsx)("button",{type:"button",onClick:n,disabled:l,className:d,children:c})}function m(e){let{children:t,onClick:n,href:a,external:o}=e,s="inline-flex items-center gap-2 rounded-full border border-white/15 bg-surface-100 px-6 py-2.5 text-sm font-medium text-fg-100 transition-[transform,background-color,border-color] duration-[160ms] ease-out-quart hover:border-white/30 hover:bg-surface-200 active:scale-[0.97] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white";return a&&o?(0,r.jsx)("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:s,children:t}):a?(0,r.jsx)(i(),{href:a,className:s,children:t}):(0,r.jsx)("button",{type:"button",onClick:n,className:s,children:t})}let g="bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-sky-400)_40%,transparent)_28%,color-mix(in_srgb,var(--color-purple-500)_40%,transparent)_55%,color-mix(in_srgb,var(--color-pink-500)_35%,transparent)_74%,transparent)]";function h(e){let{children:t,className:n="",accent:a="none"}=e;return(0,r.jsxs)("div",{className:"relative overflow-hidden rounded-xl border border-white/10 bg-surface-100 ".concat(n),children:["prism"===a&&(0,r.jsx)("span",{"aria-hidden":!0,className:"pointer-events-none absolute inset-x-6 top-0 h-px ".concat(g)}),t]})}function x(e){let{alpha:t=.03}=e,n="rgba(255,255,255,".concat(t,")");return(0,r.jsx)("div",{"aria-hidden":!0,className:"pointer-events-none absolute inset-0 bg-[size:72px_72px] [mask-image:radial-gradient(ellipse_at_center,black_35%,transparent_80%)]",style:{backgroundImage:"linear-gradient(".concat(n," 1px, transparent 1px), linear-gradient(90deg, ").concat(n," 1px, transparent 1px)")}})}function f(e){let{className:t="",alpha:n=.09}=e;return(0,r.jsx)("div",{"aria-hidden":!0,className:"pointer-events-none absolute motion-safe:animate-breathe ".concat(t),style:{background:"radial-gradient(closest-side, rgba(255,255,255,".concat(n,"), transparent 70%)")}})}},75271:(e,t,n)=>{"use strict";n.d(t,{A:()=>r.gN});var r=n(69626)},91920:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(66352),a=n(87832);function i(e){let{campaign:t}=e;
1return(0,r.jsx)("div",{"aria-hidden":!0,className:"pointer-events-none absolute inset-x-0 top-0 h-[68vh] max-h-[820px] min-h-[520px] overflow-hidden light:hidden",children:(0,r.jsx)(a.A,{visuals:t.visuals,variant:"backdrop",className:"inset-0 [mask-image:linear-gradient(180deg,black_40%,transparent_96%)]"})})}},97238:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(66352),a=n(49493),i=n(5937),o=n(79591);function s(e){let{children:t,buttonTitle:n,containerClassName:s,buttonClassName:l,defaultOpen:c}=e;return(0,r.jsx)(a.EN,{defaultOpen:c,children:e=>{let{open:c}=e;return(0,r.jsxs)("div",{className:"overflow-hidden ".concat(s),children:[(0,r.jsxs)(a._q,{className:"w-full flex justify-between items-center text-left cursor-pointer ".concat(l),children:[n,c?(0,r.jsx)(i.A,{className:"size-5 shrink-0"}):(0,r.jsx)(o.A,{className:"size-5 shrink-0"})]}),(0,r.jsx)(a.kS,{className:"origin-top transition duration-75 ease-in data-closed:opacity-0 data-closed:-translate-y-1",transition:!0,unmount:!1,children:t})]})}})}},99867:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__N_SSG:()=>U,default:()=>B});var r=n(66352),a=n(95132),i=n(56900),o=n(79159),s=n(40515),l=n(70467),c=n(35249);let d={red:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-red-600)_75%,transparent)_50%,transparent)]",orange:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-orange-500)_75%,transparent)_50%,transparent)]",green:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-green-600)_75%,transparent)_50%,transparent)]",cyan:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-cyan-500)_75%,transparent)_50%,transparent)]",blue:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-sky-600)_75%,transparent)_50%,transparent)]",purple:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-purple-600)_75%,transparent)_50%,transparent)]",pink:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-pink-600)_75%,transparent)_50%,transparent)]",slate:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-slate-600)_75%,transparent)_50%,transparent)]",crimson:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-red-500)_70%,transparent)_50%,transparent)]",evergreen:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-green-500)_65%,transparent)_50%,transparent)]",gold:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-orange-400)_70%,transparent)_50%,transparent)]",cobalt:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-cobalt-500)_75%,transparent)_50%,transparent)]",ocean:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-sky-400)_60%,transparent)_35%,color-mix(in_srgb,var(--color-cyan-500)_60%,transparent)_65%,transparent)]",aurora:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-purple-500)_65%,transparent)_35%,color-mix(in_srgb,var(--color-pink-500)_60%,transparent)_65%,transparent)]",sunset:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-pink-500)_60%,transparent)_35%,color-mix(in_srgb,var(--color-orange-400)_60%,transparent)_65%,transparent)]"};function p(e){var t,n;let{sale:i}=e,o=(0,c.bO)(),s=o?o.sale:i,l=null!=(n=d[null!=(t=null==s?void 0:s.colorScheme)?t:""])?n:"bg-[linear-gradient(90deg,transparent,color-mix(in_srgb,var(--color-sky-400)_60%,transparent)_25%,color-mix(in_srgb,var(--color-purple-500)_60%,transparent)_50%,color-mix(in_srgb,var(--color-pink-500)_55%,transparent)_75%,transparent)]",[p,u]=(0,a.useState)(()=>Date.now()),m=(0,c.uM)(s),g=m?s.endDate:null,h=m&&s.hasCountdown;
1if((0,a.useEffect)(()=>{if(!h)return;let e=setInterval(()=>u(Date.now()),1e3);return()=>clearInterval(e)},[h]),!m)return null;let x=g?function(e,t){let n=Date.parse(e)-t;if(n<=0)return null;let r=Math.floor(n/1e3),a=Math.floor(r/86400),i=[Math.floor(r%86400/3600),Math.floor(r%3600/60),r%60].map(e=>String(e).padStart(2,"0")).join(":");return a>0?"".concat(a,"d ").concat(i):i}(g,p):null;return x?(0,r.jsxs)("div",{className:"mx-auto mb-10 max-w-2xl",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-baseline justify-center gap-x-4 gap-y-1 text-center",children:[(0,r.jsx)("span",{className:"text-sm font-medium tracking-tight text-fg-100",children:s.name||"Sale"}),s.intervalTagline&&(0,r.jsx)("span",{className:"text-sm text-fg-300",children:s.intervalTagline}),h&&(0,r.jsxs)("span",{className:"font-mono text-sm tabular-nums text-fg-100",suppressHydrationWarning:!0,children:["ends in ",x]})]}),(0,r.jsx)("div",{"aria-hidden":!0,className:"mt-3 h-px ".concat(l)})]}):null}var u=n(18482),m=n(91920),g=n(39042),h=n(22269),x=n(70627),f=n(37540),v=n(92004),y=n(3082),b=n(48976),w=n(94092),_=n.n(w),j=n(83643),k=n(56331);function A(){return(0,r.jsx)("div",{className:"border-t border-white/[0.06] px-6 py-8",children:(0,r.jsxs)("p",{className:"mx-auto flex max-w-[1240px] flex-wrap items-center justify-center gap-x-2 gap-y-1 text-center text-sm text-fg-300",children:["Building a product with our tech?",(0,r.jsxs)(_(),{href:(0,j.Wx)("/pricing/"),className:"group inline-flex items-center gap-1 font-medium text-fg-200 transition-colors duration-150 hover:text-fg-100",children:["Commercial Licensing",(0,r.jsx)(k.A,{"aria-hidden":!0,className:"size-3.5 transition-transform duration-200 ease-out-quart group-hover:translate-x-0.5"})]})]})})}var N=n(72766),S=n(28806),E=n.n(S),F=n(32043);let L="https://www.luxalgo.com",P=new Set(["p","li","ul","ol","div","br"]),C=(e,t)=>Number((0,F.a)(e,t).toFixed(2));function I(e){let{name:t,description:n}=(0,o.B$)(e),r=e.byInterval.monthly.price.currency||"usd",a=r.toUpperCase(),i=e.byInterval.yearly.price.amountInCents,s=e.byInterval.monthly.price.amountInCents;return{"@type":"Offer",name:t,description:n,url:"".concat(L,"/pricing/"),price:C(i.monthly.regular,r),priceCurrency:a,availability:"https://schema.org/InStock",priceSpecification:[{"@type":"UnitPriceSpecification",name:"Billed annually",price:C(i.yearly.regular,r),priceCurrency:a,referenceQuantity:{"@type":"QuantitativeValue",value:1,unitCode:"ANN"}},{"@type":"UnitPriceSpecification",name:"Billed monthly",price:C(s.monthly.regular,r),priceCurrency:a,referenceQuantity:{"@type":"QuantitativeValue",value:1,unitCode:"MON"}}],seller:{"@id":"".concat(L,"/#organization")}}}function M(e){let{plans:t,faqs:n}=e,i={"@type":"SoftwareApplication","@id":"".concat(L,"/#software"),name:"LuxAlgo",url:"".concat(L,"/"),applicationCategory:"FinanceApplication",operatingSystem:"Web",offers:[{"@type":"Offer",name:"Free",description:"Free forever, no credit card required.",url:"".concat(L,"/pricing/"),price:0,priceCurrency:"USD",availability:"https://schema.org/InStock",seller:{"@id":"".concat(L,"/#organization")}},...(null!=t?t:[]).map(I)]},o={"@type":"FAQPage","@id":"".concat(L,"/pricing/#faq"),mainEntity:n.map(e=>{let{q:t,a:n}=e;
1return{"@type":"Question",name:t,acceptedAnswer:{"@type":"Answer",text:(function e(t){if(null==t||"boolean"==typeof t)return"";if("string"==typeof t||"number"==typeof t)return"".concat(t);if(Array.isArray(t))return t.map(e).join("");if((0,a.isValidElement)(t)){let n=e(t.props.children);return"string"==typeof t.type&&P.has(t.type)?" ".concat(n," "):n}return""})(n).replace(/\s+/g," ").trim()}}})};return(0,r.jsx)(E(),{children:(0,r.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":"https://schema.org","@graph":[i,o]}).replace(/</g,"\\u003c")}})})}let q=[y.Vb,{q:"Whatâs the difference between monthly and annual billing?",a:(0,r.jsxs)("p",{children:[(0,r.jsx)(y.B,{children:"Same platform, same features either way."})," Annual is billed once a year and works out 40â50% below the month-to-month rate. On Ultimate that's roughly half price. Monthly keeps you fully flexible: billed month to month, cancel anytime."]})},{q:"How does the 30-day money-back guarantee work?",a:(0,r.jsxs)("p",{children:[(0,r.jsx)(y.B,{children:"Every paid plan carries it."})," If LuxAlgo isn't for you, contact [email protected] within 30 days of signing up for a refund on your first payment. Requests are generally reviewed the same business day, and approved refunds typically reach your bank in 3â5 business days. The guarantee covers your first payment; renewal charges aren't eligible."]})},{q:"What do I get without paying?",a:(0,r.jsxs)("p",{children:["The Free plan is ",(0,r.jsx)(y.B,{children:"free forever, no credit card required"}),": state-of-the-art charts with Vela on every major market, the"," ",(0,r.jsx)(y.x1,{term:"orderflow",children:"Orderflow"})," Suite with 1-day lookback, the LuxAlgo Library, 500 monthly credits for ",(0,r.jsx)(y.x1,{term:"quant",children:"Quant"}),", 5 strategy alerts, 10 saved workspaces, and unlimited tools per chart, indicator templates, and watchlists. Every plan opens 16 charts per tab."]})},{q:"What are credits?",a:(0,r.jsxs)("p",{children:["Credits are the platform's fuel. Your balance is shared across"," ",(0,r.jsx)(y.x1,{term:"quant",children:"Quant"})," and the"," ",(0,r.jsx)(y.x1,{term:"aiBacktesting",children:"Backtesting Assistant"}),", and it resets on the first of every month. Every plan includes a monthly allowance: from 500 on Free up to 100,000 on AI Ultra."]})},{q:"Do higher plans unlock more markets?",a:(0,r.jsxs)("p",{children:[(0,r.jsx)(y.B,{children:"Just one"}),": live futures data requires a paid plan. Every other market and timeframe is on every plan, including Free. Every plan opens 16 charts per tab, with unlimited tools per chart. What scales between tiers is depth and firepower: credits, strategy alerts,"," ",(0,r.jsx)(y.x1,{term:"orderflow",children:"Orderflow"})," lookback, historical bars, saved workspaces, and backtesting depth."]})},{q:"Can I change my plan anytime?",a:(0,r.jsxs)("p",{children:[(0,r.jsx)(y.B,{children:"Yes"}),". Upgrade, downgrade, or extend from the pricing page while logged in. Upgrades convert remaining time into days on the new plan; downgrades begin when your current plan ends; yearly plans can be extended up to three times."]})},{q:"Do plans renew automatically?",a:(0,r.jsxs)("p",{children:[(0,r.jsx)(y.B,{children:"Yes"}),". Monthly plans renew each month and annual plans each year, so your alerts and running strategies never stop. You can cancel anytime to stop the next renewal. When promotional pricing is offered it applies to the initial payment; renewals bill at the then-current standard rate."]})}];var U=!0;function B(e){var t,n;let{sale:c,activePhase:d,fallbackPlans:w}=e,{status:_}=(0,l.V)(),j=(0,a.useMemo)(()=>(0,u.Bc)(c),[c]);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(i.A,{title:"LuxAlgo Pricing: AI Trading & Charting Platform Plans",description:"Simple pricing for the AI trading & charting platform. Start free, no credit card. Every plan carries a 30-day money-back guarantee.",canonicalUrl:"".concat("https://www.luxalgo.com","/pricing"),markdownPath:"/pricing.md",openGraphImageUrl:"/api/og/page/?title=Pricing"}),(0,r.jsx)(M,{plans:w,faqs:q}),j?(0,r.jsx)(m.A,{campaign:j}):(0,r.jsx)(f.A,{variant:"page"}),(0,r.jsxs)("div",{className:"relative mx-auto max-w-[1240px] px-6 pt-20 pb-24 sm:pt-24 sm:pb-32",children:[!j&&(0,r.jsx)(p,{sale:c}),(0,r.jsxs)("div",{className:"mx-auto max-w-2xl space-y-5 text-center",children:[(0,r.jsx)(N.w,{as:"h1",children:j?j.copy.pricing.h1:"Every plan, 30 days risk free."}),(!j||null!==j.copy.pricing.sub)&&(0,r.jsx)(N.Y0,{children:j?j.copy.pricing.sub:"Pick your plan and try the full platform. Not for you? Get your first payment back within 30 days."})]}),j&&j.sale.hasCountdown&&j.sale.endDate&&(0,r.jsx)("div",{className:"mt-8 flex justify-center",children:(0,r.jsx)(h.A,{target:j.sale.endDate,label:"Sale ends in"})}),j&&j.sale.phases.length>
10&&(0,r.jsx)(g.A,{phases:j.sale.phases,activePhaseId:null!=(t=null==d?void 0:d.id)?t:null,accent:j.visuals.accent,className:"mt-10"}),(0,r.jsxs)("div",{id:"plans",className:"mt-12 scroll-mt-24",children:[(0,r.jsx)(o.Ay,{fallbackPlans:w,campaign:null!=(n=null==j?void 0:j.cardMode)?n:null}),(0,r.jsxs)("p",{className:"mt-6 text-center text-sm text-fg-300",children:["Not ready yet?"," ",(0,r.jsx)("button",{type:"button",disabled:"unknown"===_,onClick:()=>"signed-in"===_?(0,s.AL)():(0,s.PS)("/sign-up"),className:"text-fg-100 underline underline-offset-4 transition-colors duration-150 hover:text-white",children:"Start free"}),", no credit card required."]})]}),(0,r.jsxs)("div",{id:"compare",className:"mt-24 scroll-mt-24 space-y-8 sm:mt-32",children:[(0,r.jsx)("h2",{className:"text-center text-2xl font-medium tracking-tight text-fg-100 sm:text-3xl",children:"Compare plans."}),(0,r.jsx)(x.A,{})]})]}),(0,r.jsx)(v.A,{}),(0,r.jsx)(y.Ay,{faqs:q}),(0,r.jsx)(b.A,{showPricingLink:!1}),(0,r.jsx)(A,{})]})}}},e=>{e.O(0,[5543,9735,2233,2755,9159,5944,636,6593,8792],()=>e(e.s=69734)),_N_E=e.O()}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.