diff --git a/docs/404.html b/docs/404.html
index ad3bc23f65..471765d931 100644
--- a/docs/404.html
+++ b/docs/404.html
@@ -24,7 +24,7 @@
}
requestAnimationFrame(raf);
-
+
diff --git a/docs/_astro/DashboardNav.BlnvMOpY.js b/docs/_astro/DashboardNav.B4RJdQmz.js
similarity index 98%
rename from docs/_astro/DashboardNav.BlnvMOpY.js
rename to docs/_astro/DashboardNav.B4RJdQmz.js
index 97ee9bc8c6..84fc10abff 100644
--- a/docs/_astro/DashboardNav.BlnvMOpY.js
+++ b/docs/_astro/DashboardNav.B4RJdQmz.js
@@ -1 +1 @@
-import{j as e}from"./jsx-runtime.CzgMDNMm.js";import{r as m}from"./index.DQ2WTIsS.js";import{c as n}from"./clsx.B-dksMZM.js";import{t as r}from"./bundle-mjs.moIDn3jv.js";import{u as p}from"./index.9YVhM4q0.js";import{$ as g}from"./npchandler.CsnXuAhR.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const a=({text:o,href:t,onClick:s,className:l})=>{const i=()=>{s&&s(),t&&(window.location.href=t)},d=r("relative z-10 px-5 py-3 overflow-visible font-medium text-gray-600 bg-gray-100 border border-gray-100 rounded-lg shadow-inner group","hover:text-white",l),u=n("absolute top-0 left-0 w-0 h-0 transition-all duration-200 border-t-2 border-gray-600 group-hover:w-full ease","absolute bottom-0 right-0 w-0 h-0 transition-all duration-200 border-b-2 border-gray-600 group-hover:w-full ease"),c=n("absolute top-0 left-0 w-full h-0 transition-all duration-300 delay-200 bg-gray-600 group-hover:h-full ease","absolute bottom-0 left-0 w-full h-0 transition-all duration-300 delay-200 bg-gray-600 group-hover:h-full ease","absolute inset-0 w-full h-full duration-300 delay-300 bg-gray-900 opacity-0 group-hover:opacity-100");return e.jsxs("button",{type:"button",className:d,onClick:i,children:[e.jsx("span",{className:u}),e.jsx("span",{className:c}),e.jsx("span",{className:"relative z-20 transition-colors duration-300 delay-200 group-hover:text-white ease",children:o})]})},k=()=>{const[o,t]=m.useState(!1),s=p(g),l=()=>{t(!o)};return e.jsx("nav",{className:r("bg-yellow-50/60 dark:bg-neutral-900 border-dashed hover:border-double border-2 border-cyan-500"),children:e.jsxs("div",{className:r("max-w-[85rem] w-full mx-auto sm:flex sm:flex-row sm:justify-between sm:items-center sm:gap-x-3 py-3 px-4 sm:px-6 lg:px-8"),children:[e.jsxs("div",{className:r("flex justify-between items-center gap-x-3"),children:[e.jsx("div",{className:r("grow"),children:e.jsx("span",{className:r("font-semibold whitespace-nowrap text-gray-800 dark:text-neutral-200"),children:`Good to see you, ${s.username}!`})}),e.jsxs("button",{type:"button",className:r("hs-collapse-toggle sm:hidden py-1.5 px-2 inline-flex items-center font-medium text-xs rounded-md border border-gray-200 bg-white text-gray-800 shadow-sm","hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 focus:outline-none focus:bg-gray-100","dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700"),onClick:l,"aria-controls":"hs-nav-secondary","aria-label":"Toggle navigation",children:["Overview",e.jsx("svg",{className:n("hs-dropdown-open:rotate-180 shrink-0 size-4 ms-1 transition-transform",o&&"rotate-180"),xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"m6 9 6 6 6-6"})})]})]}),e.jsx("div",{id:"hs-nav-secondary",className:r("hs-collapse overflow-hidden transition-all duration-300 basis-full grow sm:block",o?"block":"hidden"),children:e.jsxs("div",{className:r("py-3 sm:py-0 flex flex-col sm:flex-row sm:justify-end gap-y-2 sm:gap-y-0 sm:gap-x-6"),children:[e.jsx(a,{text:"Overview",href:"#"}),e.jsx(a,{text:"Resources",href:"#"}),e.jsx(a,{text:"Profile",href:"/profile"}),e.jsx(a,{text:"Logout",href:"/logout"})]})})]})})};export{k as default};
+import{j as e}from"./jsx-runtime.CzgMDNMm.js";import{r as m}from"./index.DQ2WTIsS.js";import{c as n}from"./clsx.B-dksMZM.js";import{t as r}from"./bundle-mjs.moIDn3jv.js";import{u as p}from"./index.9YVhM4q0.js";import{$ as g}from"./npchandler.6lM6j_9q.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const a=({text:o,href:t,onClick:s,className:l})=>{const i=()=>{s&&s(),t&&(window.location.href=t)},d=r("relative z-10 px-5 py-3 overflow-visible font-medium text-gray-600 bg-gray-100 border border-gray-100 rounded-lg shadow-inner group","hover:text-white",l),u=n("absolute top-0 left-0 w-0 h-0 transition-all duration-200 border-t-2 border-gray-600 group-hover:w-full ease","absolute bottom-0 right-0 w-0 h-0 transition-all duration-200 border-b-2 border-gray-600 group-hover:w-full ease"),c=n("absolute top-0 left-0 w-full h-0 transition-all duration-300 delay-200 bg-gray-600 group-hover:h-full ease","absolute bottom-0 left-0 w-full h-0 transition-all duration-300 delay-200 bg-gray-600 group-hover:h-full ease","absolute inset-0 w-full h-full duration-300 delay-300 bg-gray-900 opacity-0 group-hover:opacity-100");return e.jsxs("button",{type:"button",className:d,onClick:i,children:[e.jsx("span",{className:u}),e.jsx("span",{className:c}),e.jsx("span",{className:"relative z-20 transition-colors duration-300 delay-200 group-hover:text-white ease",children:o})]})},k=()=>{const[o,t]=m.useState(!1),s=p(g),l=()=>{t(!o)};return e.jsx("nav",{className:r("bg-yellow-50/60 dark:bg-neutral-900 border-dashed hover:border-double border-2 border-cyan-500"),children:e.jsxs("div",{className:r("max-w-[85rem] w-full mx-auto sm:flex sm:flex-row sm:justify-between sm:items-center sm:gap-x-3 py-3 px-4 sm:px-6 lg:px-8"),children:[e.jsxs("div",{className:r("flex justify-between items-center gap-x-3"),children:[e.jsx("div",{className:r("grow"),children:e.jsx("span",{className:r("font-semibold whitespace-nowrap text-gray-800 dark:text-neutral-200"),children:`Good to see you, ${s.username}!`})}),e.jsxs("button",{type:"button",className:r("hs-collapse-toggle sm:hidden py-1.5 px-2 inline-flex items-center font-medium text-xs rounded-md border border-gray-200 bg-white text-gray-800 shadow-sm","hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 focus:outline-none focus:bg-gray-100","dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700"),onClick:l,"aria-controls":"hs-nav-secondary","aria-label":"Toggle navigation",children:["Overview",e.jsx("svg",{className:n("hs-dropdown-open:rotate-180 shrink-0 size-4 ms-1 transition-transform",o&&"rotate-180"),xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"m6 9 6 6 6-6"})})]})]}),e.jsx("div",{id:"hs-nav-secondary",className:r("hs-collapse overflow-hidden transition-all duration-300 basis-full grow sm:block",o?"block":"hidden"),children:e.jsxs("div",{className:r("py-3 sm:py-0 flex flex-col sm:flex-row sm:justify-end gap-y-2 sm:gap-y-0 sm:gap-x-6"),children:[e.jsx(a,{text:"Overview",href:"#"}),e.jsx(a,{text:"Resources",href:"#"}),e.jsx(a,{text:"Profile",href:"/profile"}),e.jsx(a,{text:"Logout",href:"/logout"})]})})]})})};export{k as default};
diff --git a/docs/_astro/LoginForm.CNAD0pXe.js b/docs/_astro/LoginForm.qq_vkexC.js
similarity index 99%
rename from docs/_astro/LoginForm.CNAD0pXe.js
rename to docs/_astro/LoginForm.qq_vkexC.js
index 262aae07b6..68c3828305 100644
--- a/docs/_astro/LoginForm.CNAD0pXe.js
+++ b/docs/_astro/LoginForm.qq_vkexC.js
@@ -1 +1 @@
-import{S as Ne,i as Fe,s as Re,e as Se,a as D,b as o,t as he,h as Ke,d as c,c as T,f as n,g,j as Y,k as me,l as a,m as se,n as je,o as l,p as G,q as ue,r as we,u as We,v as pe,w as fe,x as Ye,y as Ge,z as Je,A as Qe}from"./index.BL2D2LL-.js";import{g as Xe}from"./globals.D0QH3NT1.js";import{C as Ze,r as $e}from"./loader.glmVqvBr.js";import{K as Pe,k as le}from"./npchandler.CsnXuAhR.js";import"./jsx-runtime.CzgMDNMm.js";import"./index.DQ2WTIsS.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const{document:ye}=Xe;function Be(d){let e,t;return{c(){e=o("script"),this.h()},l(s){e=n(s,"SCRIPT",{src:!0});var u=g(e);u.forEach(c),this.h()},h(){je(e.src,t=d[5])||a(e,"src",t),e.async=!0,e.defer=!0},m(s,u){G(s,e,u)},p:fe,d(s){s&&c(e)}}}function He(d){let e,t='
';return{c(){e=o("div"),e.innerHTML=t,this.h()},l(s){e=n(s,"DIV",{class:!0,role:!0,tabindex:!0,"aria-labelledby":!0,"data-svelte-h":!0}),Y(e)!=="svelte-xpal3g"&&(e.innerHTML=t),this.h()},h(){a(e,"class","max-w-xs bg-white border border-gray-200 rounded-xl shadow-lg dark:bg-neutral-800 dark:border-neutral-700 z-100"),a(e,"role","alert"),a(e,"tabindex","-1"),a(e,"aria-labelledby","hs-toast-normal-example-label")},m(s,u){G(s,e,u)},d(s){s&&c(e)}}}function Oe(d){let e,t,s,u='',h,r,m,v=d[4].error_message+"",_;return{c(){e=o("div"),t=o("div"),s=o("div"),s.innerHTML=u,h=D(),r=o("div"),m=o("p"),_=he(v),this.h()},l(b){e=n(b,"DIV",{class:!0,role:!0,tabindex:!0,"aria-labelledby":!0});var C=g(e);t=n(C,"DIV",{class:!0});var V=g(t);s=n(V,"DIV",{class:!0,"data-svelte-h":!0}),Y(s)!=="svelte-mnfjrn"&&(s.innerHTML=u),h=T(V),r=n(V,"DIV",{class:!0});var U=g(r);m=n(U,"P",{id:!0,class:!0});var P=g(m);_=me(P,v),P.forEach(c),U.forEach(c),V.forEach(c),C.forEach(c),this.h()},h(){a(s,"class","shrink-0"),a(m,"id","hs-toast-error-example-label"),a(m,"class","text-sm text-gray-700 dark:text-neutral-400"),a(r,"class","ms-3"),a(t,"class","flex p-4"),a(e,"class","max-w-xs bg-white border border-gray-200 rounded-xl shadow-lg dark:bg-neutral-800 dark:border-neutral-700 z-100"),a(e,"role","alert"),a(e,"tabindex","-1"),a(e,"aria-labelledby","hs-toast-error-example-label")},m(b,C){G(b,e,C),l(e,t),l(t,s),l(t,h),l(t,r),l(r,m),l(m,_)},p(b,C){C&16&&v!==(v=b[4].error_message+"")&&pe(_,v)},d(b){b&&c(e)}}}function Ue(d){let e,t,s=d[4].successful_message+"",u;return{c(){e=o("div"),t=o("span"),u=he(s),this.h()},l(h){e=n(h,"DIV",{class:!0});var r=g(e);t=n(r,"SPAN",{class:!0});var m=g(t);u=me(m,s),m.forEach(c),r.forEach(c),this.h()},h(){a(t,"class","text-lg text-cyan-600 dark:text-cyan-300"),a(e,"class","flex")},m(h,r){G(h,e,r),l(e,t),l(t,u)},p(h,r){r&16&&s!==(s=h[4].successful_message+"")&&pe(u,s)},d(h){h&&c(e)}}}function et(d){let e,t=' Online';return{c(){e=o("div"),e.innerHTML=t,this.h()},l(s){e=n(s,"DIV",{class:!0,"data-svelte-h":!0}),Y(e)!=="svelte-hfgq2j"&&(e.innerHTML=t),this.h()},h(){a(e,"class","inline-flex items-center")},m(s,u){G(s,e,u)},p:fe,d(s){s&&c(e)}}}function tt(d){let e,t,s=' ',u,h,r;return{c(){e=o("div"),t=o("span"),t.innerHTML=s,u=D(),h=o("div"),r=he(d[3]),this.h()},l(m){e=n(m,"DIV",{class:!0});var v=g(e);t=n(v,"SPAN",{class:!0,"data-svelte-h":!0}),Y(t)!=="svelte-493u0u"&&(t.innerHTML=s),u=T(v),h=n(v,"DIV",{class:!0});var _=g(h);r=me(_,d[3]),_.forEach(c),v.forEach(c),this.h()},h(){a(t,"class","relative flex h-3 w-3"),a(h,"class","px-2 text-gray-600 dark:text-neutral-400 text-wrap w-1/2"),a(e,"class","inline-flex items-center")},m(m,v){G(m,e,v),l(e,t),l(e,u),l(e,h),l(h,r)},p(m,v){v&8&&pe(r,m[3])},d(m){m&&c(e)}}}function at(d){let e,t,s,u,h,r,m,v="Login!",_,b,C="KBVE Authentication Portal",V,U,P,R,M,w,B,A,p="Email Address",Z,J,x,$,q,i,H='',N,ee,z,ge,te,X,ve,F,ae=d[2]?"Loading...":"Login",re,be,K,Q,_e,j,ke,xe,Ee,y=d[1]&&!window?.hcaptcha&&Be(d),L=d[2]&&He(),k=d[4].error_message&&Oe(d),E=d[4].successful_message&&Ue(d);function Ce(f,I){return f[3]?tt:et}let ie=Ce(d),O=ie(d);return{c(){y&&y.c(),e=Se(),t=D(),s=o("div"),u=o("div"),h=o("div"),r=o("div"),m=o("h3"),m.textContent=v,_=D(),b=o("h1"),b.textContent=C,V=D(),L&&L.c(),U=D(),k&&k.c(),P=D(),E&&E.c(),R=D(),M=o("form"),w=o("div"),B=o("div"),A=o("label"),A.textContent=p,Z=D(),J=o("div"),x=o("input"),$=D(),q=o("div"),i=o("div"),i.innerHTML=H,N=D(),ee=o("div"),z=o("input"),ge=D(),te=o("div"),X=o("div"),ve=D(),F=o("button"),re=he(ae),be=D(),K=o("div"),Q=o("div"),O.c(),_e=D(),j=o("dotlottie-player"),this.h()},l(f){const I=Ke("svelte-1fvsnp3",ye.head);y&&y.l(I),e=Se(),I.forEach(c),t=T(f),s=n(f,"DIV",{class:!0});var Le=g(s);u=n(Le,"DIV",{class:!0,id:!0});var Ie=g(u);h=n(Ie,"DIV",{class:!0});var oe=g(h);r=n(oe,"DIV",{class:!0});var S=g(r);m=n(S,"H3",{class:!0,"data-svelte-h":!0}),Y(m)!=="svelte-19a6ky5"&&(m.textContent=v),_=T(S),b=n(S,"H1",{class:!0,"data-svelte-h":!0}),Y(b)!=="svelte-4x0q1u"&&(b.textContent=C),V=T(S),L&&L.l(S),U=T(S),k&&k.l(S),P=T(S),E&&E.l(S),R=T(S),M=n(S,"FORM",{id:!0,class:!0,action:!0});var De=g(M);w=n(De,"DIV",{class:!0});var W=g(w);B=n(W,"DIV",{});var ne=g(B);A=n(ne,"LABEL",{for:!0,class:!0,"data-svelte-h":!0}),Y(A)!=="svelte-1botxoa"&&(A.textContent=p),Z=T(ne),J=n(ne,"DIV",{});var Te=g(J);x=n(Te,"INPUT",{type:!0,id:!0,name:!0,autocomplete:!0,class:!0,"aria-describedby":!0}),Te.forEach(c),ne.forEach(c),$=T(W),q=n(W,"DIV",{});var ce=g(q);i=n(ce,"DIV",{class:!0,"data-svelte-h":!0}),Y(i)!=="svelte-1d795g4"&&(i.innerHTML=H),N=T(ce),ee=n(ce,"DIV",{});var Ve=g(ee);z=n(Ve,"INPUT",{type:!0,id:!0,name:!0,class:!0,"aria-describedby":!0}),Ve.forEach(c),ce.forEach(c),ge=T(W),te=n(W,"DIV",{});var Me=g(te);X=n(Me,"DIV",{id:!0,class:!0}),g(X).forEach(c),Me.forEach(c),ve=T(W),F=n(W,"BUTTON",{type:!0,class:!0});var ze=g(F);re=me(ze,ae),ze.forEach(c),W.forEach(c),De.forEach(c),S.forEach(c),be=T(oe),K=n(oe,"DIV",{class:!0});var de=g(K);Q=n(de,"DIV",{class:!0});var Ae=g(Q);O.l(Ae),Ae.forEach(c),_e=T(de),j=n(de,"DOTLOTTIE-PLAYER",{autoplay:!0,loop:!0,class:!0,mode:!0,src:!0});var qe=g(j);qe.forEach(c),de.forEach(c),oe.forEach(c),Ie.forEach(c),Le.forEach(c),this.h()},h(){a(m,"class","text-blue-400 mb-1"),a(b,"class","page-title text-white font-bold text-3xl mb-5 lg:text-3xl xl:text-4xl 2xl:text-5xl"),a(A,"for","login-email"),a(A,"class","mb-1 block text-xs text-left md:text-sm md:mb-2 text-neutral-800 dark:text-neutral-200"),a(x,"type","email"),a(x,"id","login-email"),a(x,"name","email"),a(x,"autocomplete","email"),a(x,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),x.required=!0,a(x,"aria-describedby","login-email"),a(i,"class","flex items-center justify-between"),a(z,"type","password"),a(z,"id","login-password"),a(z,"name","password"),a(z,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),z.required=!0,a(z,"aria-describedby","login-password"),a(X,"id","h-captcha-"+d[6]),a(X,"class","flex justify-center scale-75 md:scale-100"),a(F,"type","submit"),a(F,"class",`${lt} ${rt} ${it} ${ot} ${nt} ${ct} ${dt}`),F.disabled=d[2],a(w,"class","grid gap-y-2 md:gap-y-4"),a(M,"id","loginForm"),a(M,"class","opacity-0 transition-opacity duration-500"),a(M,"action","#"),a(r,"class","relative"),a(Q,"class",""),se(j,"autoplay",""),se(j,"loop",""),se(j,"class","hidden md:block md:w-full"),se(j,"mode","normal"),je(j.src,ke="/assets/lottie/"+st)||se(j,"src",ke),a(K,"class","flex flex-col w-1/2"),a(h,"class","px-16 flex flex-row justify-center items-center lg:justify-between"),a(u,"class","py-16 opacity-0 transition-opacity duration-500"),a(u,"id","formulation_form"),a(s,"class","")},m(f,I){y&&y.m(ye.head,null),l(ye.head,e),G(f,t,I),G(f,s,I),l(s,u),l(u,h),l(h,r),l(r,m),l(r,_),l(r,b),l(r,V),L&&L.m(r,null),l(r,U),k&&k.m(r,null),l(r,P),E&&E.m(r,null),l(r,R),l(r,M),l(M,w),l(w,B),l(B,A),l(B,Z),l(B,J),l(J,x),ue(x,d[4].email),l(w,$),l(w,q),l(q,i),l(q,N),l(q,ee),l(ee,z),ue(z,d[4].password),l(w,ge),l(w,te),l(te,X),l(w,ve),l(w,F),l(F,re),l(h,be),l(h,K),l(K,Q),O.m(Q,null),l(K,_e),l(K,j),xe||(Ee=[we(x,"input",d[16]),we(z,"input",d[17]),we(M,"submit",We(d[0]))],xe=!0)},p(f,[I]){f[1]&&!window?.hcaptcha?y?y.p(f,I):(y=Be(f),y.c(),y.m(e.parentNode,e)):y&&(y.d(1),y=null),f[2]?L||(L=He(),L.c(),L.m(r,U)):L&&(L.d(1),L=null),f[4].error_message?k?k.p(f,I):(k=Oe(f),k.c(),k.m(r,P)):k&&(k.d(1),k=null),f[4].successful_message?E?E.p(f,I):(E=Ue(f),E.c(),E.m(r,R)):E&&(E.d(1),E=null),I&16&&x.value!==f[4].email&&ue(x,f[4].email),I&16&&z.value!==f[4].password&&ue(z,f[4].password),I&4&&ae!==(ae=f[2]?"Loading...":"Login")&&pe(re,ae),I&4&&(F.disabled=f[2]),ie===(ie=Ce(f))&&O?O.p(f,I):(O.d(1),O=ie(f),O&&(O.c(),O.m(Q,null)))},i:fe,o:fe,d(f){f&&(c(t),c(s)),y&&y.d(f),c(e),L&&L.d(),k&&k.d(),E&&E.d(),O.d(),xe=!1,Ye(Ee)}}}let st="/holydance.lottie";const lt="inline-flex w-full items-center justify-center gap-x-2 rounded-lg px-4 py-1 text-sm font-normal text-blue-400 focus-visible:ring outline-none transition duration-300 py-3",rt="border border-transparent",it="bg-blue-100 dark:focus:outline-none",ot="hover:bg-blue-400 hover:text-white",nt="2xl:text-base",ct="disabled:pointer-events-none disabled:opacity-50 disabled:animate-pulse",dt="ring-zinc-500 dark:ring-zinc-200";function ut(d,e,t){const s=Ge(),u=()=>{t(2,b=!1),t(4,p.successful_message="",p),v&&_&&C&&hcaptcha.reset(C)},h=i=>{if(v&&_&&C)return hcaptcha.execute(C,i)},r=async()=>{if(t(2,b=!0),V=await le.createActionULID("loginUser"),!V){t(4,p.error_message="Failed to create action!",p),u();return}try{const i=await le.loginUser(p.email,p.password,V,p.captchaToken);if(i){t(4,p.successful_message=`Welcome, ${i.username||i.email}! Login successful. Redirecting in 1 second`,p),console.log("User logined and profile saved:",i);const H=await le.getSupabaseClient()?.auth.getSession();H?(console.log("User is already logged in after registration:",H),setTimeout(()=>{window.location.href="/dashboard"},1e3)):setTimeout(()=>{window.location.href="/login#offline"},1e3);return}await m(V)}catch(i){console.error("Login failed:",i),await m(V),u()}finally{t(2,b=!1),u()}},m=async i=>{const H=await le.getErrorByActionId(i);H?t(4,p.error_message=H,p):t(4,p.error_message="An unexpected error occurred. Please try again.",p);const N=await le.getDetailedErrorByActionId(i);N?t(3,U=N):t(4,p.error_message="An unexpected error occurred. Please try again.",p)};let v=!1,_=!1,b=!1,C,V,U,{hl:P=""}=e,{sitekey:R=Pe.get().hcaptcha}=e,{apihost:M=Pe.get().hcaptcha_api}=e,{reCaptchaCompat:w=!0}=e,{theme:B=Ze.DARK}=e,{size:A="compact"}=e,p={email:"",password:"",captchaToken:"",actionId:"",error_message:"",successful_message:""};const Z=new URLSearchParams({recaptchacompat:w?"on":"off",onload:"hcaptchaOnLoad",render:"explicit"}),J=`${M}?${Z.toString()}`,x=Math.floor(Math.random()*100);Je(()=>{$e({elementIdOrName:"skeleton_login_loader",duration:500}),document.getElementById("astro_error_message")&&document.getElementById("astro_error_message");const i=document.getElementById("formulation_form");i&&setTimeout(()=>{i.classList.replace("opacity-0","opacity-100")},200);const H=document.getElementById("loginForm");H&&setTimeout(()=>{H.classList.replace("opacity-0","opacity-100")},500),window.hcaptchaOnLoad=()=>{s("load"),t(15,_=!0)},window.onSuccess=N=>{s("success",{token:N}),t(4,p.captchaToken=N,p)},window.onError=()=>{s("error")},window.onClose=()=>{s("close")},window.onExpired=()=>{s("expired"),u()},s("mount"),t(1,v=!0)}),Qe(()=>{window.hcaptchaOnLoad=null,window.onSuccess=null,_&&(hcaptcha=null)});function $(){p.email=this.value,t(4,p)}function q(){p.password=this.value,t(4,p)}return d.$$set=i=>{"hl"in i&&t(9,P=i.hl),"sitekey"in i&&t(10,R=i.sitekey),"apihost"in i&&t(11,M=i.apihost),"reCaptchaCompat"in i&&t(12,w=i.reCaptchaCompat),"theme"in i&&t(13,B=i.theme),"size"in i&&t(14,A=i.size)},d.$$.update=()=>{d.$$.dirty&58882&&v&&_&&(C=hcaptcha.render(`h-captcha-${x}`,{sitekey:R,hl:P,theme:B,callback:"onSuccess","error-callback":"onError","close-callback":"onClose","expired-callback":"onExpired",size:A}))},[r,v,b,U,p,J,x,u,h,P,R,M,w,B,A,_,$,q]}class wt extends Ne{constructor(e){super(),Fe(this,e,ut,at,Re,{reset:7,execute:8,handleLogin:0,hl:9,sitekey:10,apihost:11,reCaptchaCompat:12,theme:13,size:14})}get reset(){return this.$$.ctx[7]}get execute(){return this.$$.ctx[8]}get handleLogin(){return this.$$.ctx[0]}}export{wt as default};
+import{S as Ne,i as Fe,s as Re,e as Se,a as D,b as o,t as he,h as Ke,d as c,c as T,f as n,g,j as Y,k as me,l as a,m as se,n as je,o as l,p as G,q as ue,r as we,u as We,v as pe,w as fe,x as Ye,y as Ge,z as Je,A as Qe}from"./index.BL2D2LL-.js";import{g as Xe}from"./globals.D0QH3NT1.js";import{C as Ze,r as $e}from"./loader.Cx4kMRI2.js";import{K as Pe,k as le}from"./npchandler.6lM6j_9q.js";import"./jsx-runtime.CzgMDNMm.js";import"./index.DQ2WTIsS.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const{document:ye}=Xe;function Be(d){let e,t;return{c(){e=o("script"),this.h()},l(s){e=n(s,"SCRIPT",{src:!0});var u=g(e);u.forEach(c),this.h()},h(){je(e.src,t=d[5])||a(e,"src",t),e.async=!0,e.defer=!0},m(s,u){G(s,e,u)},p:fe,d(s){s&&c(e)}}}function He(d){let e,t='';return{c(){e=o("div"),e.innerHTML=t,this.h()},l(s){e=n(s,"DIV",{class:!0,role:!0,tabindex:!0,"aria-labelledby":!0,"data-svelte-h":!0}),Y(e)!=="svelte-xpal3g"&&(e.innerHTML=t),this.h()},h(){a(e,"class","max-w-xs bg-white border border-gray-200 rounded-xl shadow-lg dark:bg-neutral-800 dark:border-neutral-700 z-100"),a(e,"role","alert"),a(e,"tabindex","-1"),a(e,"aria-labelledby","hs-toast-normal-example-label")},m(s,u){G(s,e,u)},d(s){s&&c(e)}}}function Oe(d){let e,t,s,u='',h,r,m,v=d[4].error_message+"",_;return{c(){e=o("div"),t=o("div"),s=o("div"),s.innerHTML=u,h=D(),r=o("div"),m=o("p"),_=he(v),this.h()},l(b){e=n(b,"DIV",{class:!0,role:!0,tabindex:!0,"aria-labelledby":!0});var C=g(e);t=n(C,"DIV",{class:!0});var V=g(t);s=n(V,"DIV",{class:!0,"data-svelte-h":!0}),Y(s)!=="svelte-mnfjrn"&&(s.innerHTML=u),h=T(V),r=n(V,"DIV",{class:!0});var U=g(r);m=n(U,"P",{id:!0,class:!0});var P=g(m);_=me(P,v),P.forEach(c),U.forEach(c),V.forEach(c),C.forEach(c),this.h()},h(){a(s,"class","shrink-0"),a(m,"id","hs-toast-error-example-label"),a(m,"class","text-sm text-gray-700 dark:text-neutral-400"),a(r,"class","ms-3"),a(t,"class","flex p-4"),a(e,"class","max-w-xs bg-white border border-gray-200 rounded-xl shadow-lg dark:bg-neutral-800 dark:border-neutral-700 z-100"),a(e,"role","alert"),a(e,"tabindex","-1"),a(e,"aria-labelledby","hs-toast-error-example-label")},m(b,C){G(b,e,C),l(e,t),l(t,s),l(t,h),l(t,r),l(r,m),l(m,_)},p(b,C){C&16&&v!==(v=b[4].error_message+"")&&pe(_,v)},d(b){b&&c(e)}}}function Ue(d){let e,t,s=d[4].successful_message+"",u;return{c(){e=o("div"),t=o("span"),u=he(s),this.h()},l(h){e=n(h,"DIV",{class:!0});var r=g(e);t=n(r,"SPAN",{class:!0});var m=g(t);u=me(m,s),m.forEach(c),r.forEach(c),this.h()},h(){a(t,"class","text-lg text-cyan-600 dark:text-cyan-300"),a(e,"class","flex")},m(h,r){G(h,e,r),l(e,t),l(t,u)},p(h,r){r&16&&s!==(s=h[4].successful_message+"")&&pe(u,s)},d(h){h&&c(e)}}}function et(d){let e,t=' Online';return{c(){e=o("div"),e.innerHTML=t,this.h()},l(s){e=n(s,"DIV",{class:!0,"data-svelte-h":!0}),Y(e)!=="svelte-hfgq2j"&&(e.innerHTML=t),this.h()},h(){a(e,"class","inline-flex items-center")},m(s,u){G(s,e,u)},p:fe,d(s){s&&c(e)}}}function tt(d){let e,t,s=' ',u,h,r;return{c(){e=o("div"),t=o("span"),t.innerHTML=s,u=D(),h=o("div"),r=he(d[3]),this.h()},l(m){e=n(m,"DIV",{class:!0});var v=g(e);t=n(v,"SPAN",{class:!0,"data-svelte-h":!0}),Y(t)!=="svelte-493u0u"&&(t.innerHTML=s),u=T(v),h=n(v,"DIV",{class:!0});var _=g(h);r=me(_,d[3]),_.forEach(c),v.forEach(c),this.h()},h(){a(t,"class","relative flex h-3 w-3"),a(h,"class","px-2 text-gray-600 dark:text-neutral-400 text-wrap w-1/2"),a(e,"class","inline-flex items-center")},m(m,v){G(m,e,v),l(e,t),l(e,u),l(e,h),l(h,r)},p(m,v){v&8&&pe(r,m[3])},d(m){m&&c(e)}}}function at(d){let e,t,s,u,h,r,m,v="Login!",_,b,C="KBVE Authentication Portal",V,U,P,R,M,w,B,A,p="Email Address",Z,J,x,$,q,i,H='',N,ee,z,ge,te,X,ve,F,ae=d[2]?"Loading...":"Login",re,be,K,Q,_e,j,ke,xe,Ee,y=d[1]&&!window?.hcaptcha&&Be(d),L=d[2]&&He(),k=d[4].error_message&&Oe(d),E=d[4].successful_message&&Ue(d);function Ce(f,I){return f[3]?tt:et}let ie=Ce(d),O=ie(d);return{c(){y&&y.c(),e=Se(),t=D(),s=o("div"),u=o("div"),h=o("div"),r=o("div"),m=o("h3"),m.textContent=v,_=D(),b=o("h1"),b.textContent=C,V=D(),L&&L.c(),U=D(),k&&k.c(),P=D(),E&&E.c(),R=D(),M=o("form"),w=o("div"),B=o("div"),A=o("label"),A.textContent=p,Z=D(),J=o("div"),x=o("input"),$=D(),q=o("div"),i=o("div"),i.innerHTML=H,N=D(),ee=o("div"),z=o("input"),ge=D(),te=o("div"),X=o("div"),ve=D(),F=o("button"),re=he(ae),be=D(),K=o("div"),Q=o("div"),O.c(),_e=D(),j=o("dotlottie-player"),this.h()},l(f){const I=Ke("svelte-1fvsnp3",ye.head);y&&y.l(I),e=Se(),I.forEach(c),t=T(f),s=n(f,"DIV",{class:!0});var Le=g(s);u=n(Le,"DIV",{class:!0,id:!0});var Ie=g(u);h=n(Ie,"DIV",{class:!0});var oe=g(h);r=n(oe,"DIV",{class:!0});var S=g(r);m=n(S,"H3",{class:!0,"data-svelte-h":!0}),Y(m)!=="svelte-19a6ky5"&&(m.textContent=v),_=T(S),b=n(S,"H1",{class:!0,"data-svelte-h":!0}),Y(b)!=="svelte-4x0q1u"&&(b.textContent=C),V=T(S),L&&L.l(S),U=T(S),k&&k.l(S),P=T(S),E&&E.l(S),R=T(S),M=n(S,"FORM",{id:!0,class:!0,action:!0});var De=g(M);w=n(De,"DIV",{class:!0});var W=g(w);B=n(W,"DIV",{});var ne=g(B);A=n(ne,"LABEL",{for:!0,class:!0,"data-svelte-h":!0}),Y(A)!=="svelte-1botxoa"&&(A.textContent=p),Z=T(ne),J=n(ne,"DIV",{});var Te=g(J);x=n(Te,"INPUT",{type:!0,id:!0,name:!0,autocomplete:!0,class:!0,"aria-describedby":!0}),Te.forEach(c),ne.forEach(c),$=T(W),q=n(W,"DIV",{});var ce=g(q);i=n(ce,"DIV",{class:!0,"data-svelte-h":!0}),Y(i)!=="svelte-1d795g4"&&(i.innerHTML=H),N=T(ce),ee=n(ce,"DIV",{});var Ve=g(ee);z=n(Ve,"INPUT",{type:!0,id:!0,name:!0,class:!0,"aria-describedby":!0}),Ve.forEach(c),ce.forEach(c),ge=T(W),te=n(W,"DIV",{});var Me=g(te);X=n(Me,"DIV",{id:!0,class:!0}),g(X).forEach(c),Me.forEach(c),ve=T(W),F=n(W,"BUTTON",{type:!0,class:!0});var ze=g(F);re=me(ze,ae),ze.forEach(c),W.forEach(c),De.forEach(c),S.forEach(c),be=T(oe),K=n(oe,"DIV",{class:!0});var de=g(K);Q=n(de,"DIV",{class:!0});var Ae=g(Q);O.l(Ae),Ae.forEach(c),_e=T(de),j=n(de,"DOTLOTTIE-PLAYER",{autoplay:!0,loop:!0,class:!0,mode:!0,src:!0});var qe=g(j);qe.forEach(c),de.forEach(c),oe.forEach(c),Ie.forEach(c),Le.forEach(c),this.h()},h(){a(m,"class","text-blue-400 mb-1"),a(b,"class","page-title text-white font-bold text-3xl mb-5 lg:text-3xl xl:text-4xl 2xl:text-5xl"),a(A,"for","login-email"),a(A,"class","mb-1 block text-xs text-left md:text-sm md:mb-2 text-neutral-800 dark:text-neutral-200"),a(x,"type","email"),a(x,"id","login-email"),a(x,"name","email"),a(x,"autocomplete","email"),a(x,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),x.required=!0,a(x,"aria-describedby","login-email"),a(i,"class","flex items-center justify-between"),a(z,"type","password"),a(z,"id","login-password"),a(z,"name","password"),a(z,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),z.required=!0,a(z,"aria-describedby","login-password"),a(X,"id","h-captcha-"+d[6]),a(X,"class","flex justify-center scale-75 md:scale-100"),a(F,"type","submit"),a(F,"class",`${lt} ${rt} ${it} ${ot} ${nt} ${ct} ${dt}`),F.disabled=d[2],a(w,"class","grid gap-y-2 md:gap-y-4"),a(M,"id","loginForm"),a(M,"class","opacity-0 transition-opacity duration-500"),a(M,"action","#"),a(r,"class","relative"),a(Q,"class",""),se(j,"autoplay",""),se(j,"loop",""),se(j,"class","hidden md:block md:w-full"),se(j,"mode","normal"),je(j.src,ke="/assets/lottie/"+st)||se(j,"src",ke),a(K,"class","flex flex-col w-1/2"),a(h,"class","px-16 flex flex-row justify-center items-center lg:justify-between"),a(u,"class","py-16 opacity-0 transition-opacity duration-500"),a(u,"id","formulation_form"),a(s,"class","")},m(f,I){y&&y.m(ye.head,null),l(ye.head,e),G(f,t,I),G(f,s,I),l(s,u),l(u,h),l(h,r),l(r,m),l(r,_),l(r,b),l(r,V),L&&L.m(r,null),l(r,U),k&&k.m(r,null),l(r,P),E&&E.m(r,null),l(r,R),l(r,M),l(M,w),l(w,B),l(B,A),l(B,Z),l(B,J),l(J,x),ue(x,d[4].email),l(w,$),l(w,q),l(q,i),l(q,N),l(q,ee),l(ee,z),ue(z,d[4].password),l(w,ge),l(w,te),l(te,X),l(w,ve),l(w,F),l(F,re),l(h,be),l(h,K),l(K,Q),O.m(Q,null),l(K,_e),l(K,j),xe||(Ee=[we(x,"input",d[16]),we(z,"input",d[17]),we(M,"submit",We(d[0]))],xe=!0)},p(f,[I]){f[1]&&!window?.hcaptcha?y?y.p(f,I):(y=Be(f),y.c(),y.m(e.parentNode,e)):y&&(y.d(1),y=null),f[2]?L||(L=He(),L.c(),L.m(r,U)):L&&(L.d(1),L=null),f[4].error_message?k?k.p(f,I):(k=Oe(f),k.c(),k.m(r,P)):k&&(k.d(1),k=null),f[4].successful_message?E?E.p(f,I):(E=Ue(f),E.c(),E.m(r,R)):E&&(E.d(1),E=null),I&16&&x.value!==f[4].email&&ue(x,f[4].email),I&16&&z.value!==f[4].password&&ue(z,f[4].password),I&4&&ae!==(ae=f[2]?"Loading...":"Login")&&pe(re,ae),I&4&&(F.disabled=f[2]),ie===(ie=Ce(f))&&O?O.p(f,I):(O.d(1),O=ie(f),O&&(O.c(),O.m(Q,null)))},i:fe,o:fe,d(f){f&&(c(t),c(s)),y&&y.d(f),c(e),L&&L.d(),k&&k.d(),E&&E.d(),O.d(),xe=!1,Ye(Ee)}}}let st="/holydance.lottie";const lt="inline-flex w-full items-center justify-center gap-x-2 rounded-lg px-4 py-1 text-sm font-normal text-blue-400 focus-visible:ring outline-none transition duration-300 py-3",rt="border border-transparent",it="bg-blue-100 dark:focus:outline-none",ot="hover:bg-blue-400 hover:text-white",nt="2xl:text-base",ct="disabled:pointer-events-none disabled:opacity-50 disabled:animate-pulse",dt="ring-zinc-500 dark:ring-zinc-200";function ut(d,e,t){const s=Ge(),u=()=>{t(2,b=!1),t(4,p.successful_message="",p),v&&_&&C&&hcaptcha.reset(C)},h=i=>{if(v&&_&&C)return hcaptcha.execute(C,i)},r=async()=>{if(t(2,b=!0),V=await le.createActionULID("loginUser"),!V){t(4,p.error_message="Failed to create action!",p),u();return}try{const i=await le.loginUser(p.email,p.password,V,p.captchaToken);if(i){t(4,p.successful_message=`Welcome, ${i.username||i.email}! Login successful. Redirecting in 1 second`,p),console.log("User logined and profile saved:",i);const H=await le.getSupabaseClient()?.auth.getSession();H?(console.log("User is already logged in after registration:",H),setTimeout(()=>{window.location.href="/dashboard"},1e3)):setTimeout(()=>{window.location.href="/login#offline"},1e3);return}await m(V)}catch(i){console.error("Login failed:",i),await m(V),u()}finally{t(2,b=!1),u()}},m=async i=>{const H=await le.getErrorByActionId(i);H?t(4,p.error_message=H,p):t(4,p.error_message="An unexpected error occurred. Please try again.",p);const N=await le.getDetailedErrorByActionId(i);N?t(3,U=N):t(4,p.error_message="An unexpected error occurred. Please try again.",p)};let v=!1,_=!1,b=!1,C,V,U,{hl:P=""}=e,{sitekey:R=Pe.get().hcaptcha}=e,{apihost:M=Pe.get().hcaptcha_api}=e,{reCaptchaCompat:w=!0}=e,{theme:B=Ze.DARK}=e,{size:A="compact"}=e,p={email:"",password:"",captchaToken:"",actionId:"",error_message:"",successful_message:""};const Z=new URLSearchParams({recaptchacompat:w?"on":"off",onload:"hcaptchaOnLoad",render:"explicit"}),J=`${M}?${Z.toString()}`,x=Math.floor(Math.random()*100);Je(()=>{$e({elementIdOrName:"skeleton_login_loader",duration:500}),document.getElementById("astro_error_message")&&document.getElementById("astro_error_message");const i=document.getElementById("formulation_form");i&&setTimeout(()=>{i.classList.replace("opacity-0","opacity-100")},200);const H=document.getElementById("loginForm");H&&setTimeout(()=>{H.classList.replace("opacity-0","opacity-100")},500),window.hcaptchaOnLoad=()=>{s("load"),t(15,_=!0)},window.onSuccess=N=>{s("success",{token:N}),t(4,p.captchaToken=N,p)},window.onError=()=>{s("error")},window.onClose=()=>{s("close")},window.onExpired=()=>{s("expired"),u()},s("mount"),t(1,v=!0)}),Qe(()=>{window.hcaptchaOnLoad=null,window.onSuccess=null,_&&(hcaptcha=null)});function $(){p.email=this.value,t(4,p)}function q(){p.password=this.value,t(4,p)}return d.$$set=i=>{"hl"in i&&t(9,P=i.hl),"sitekey"in i&&t(10,R=i.sitekey),"apihost"in i&&t(11,M=i.apihost),"reCaptchaCompat"in i&&t(12,w=i.reCaptchaCompat),"theme"in i&&t(13,B=i.theme),"size"in i&&t(14,A=i.size)},d.$$.update=()=>{d.$$.dirty&58882&&v&&_&&(C=hcaptcha.render(`h-captcha-${x}`,{sitekey:R,hl:P,theme:B,callback:"onSuccess","error-callback":"onError","close-callback":"onClose","expired-callback":"onExpired",size:A}))},[r,v,b,U,p,J,x,u,h,P,R,M,w,B,A,_,$,q]}class wt extends Ne{constructor(e){super(),Fe(this,e,ut,at,Re,{reset:7,execute:8,handleLogin:0,hl:9,sitekey:10,apihost:11,reCaptchaCompat:12,theme:13,size:14})}get reset(){return this.$$.ctx[7]}get execute(){return this.$$.ctx[8]}get handleLogin(){return this.$$.ctx[0]}}export{wt as default};
diff --git a/docs/_astro/ReachProfile.CP-1S8gJ.js b/docs/_astro/ReachProfile.CP-1S8gJ.js
deleted file mode 100644
index 8226021025..0000000000
--- a/docs/_astro/ReachProfile.CP-1S8gJ.js
+++ /dev/null
@@ -1 +0,0 @@
-import{j as e}from"./jsx-runtime.CzgMDNMm.js";import{r as n}from"./index.DQ2WTIsS.js";import{e as u,$ as _,k as c}from"./npchandler.CsnXuAhR.js";import{u as E}from"./index.9YVhM4q0.js";import{t as v}from"./bundle-mjs.moIDn3jv.js";import{c as F}from"./clsx.B-dksMZM.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const z=()=>{const a=E(_),[h,o]=n.useState(!0),[m,s]=n.useState(null),[g,x]=n.useState(!1),[l,f]=n.useState({bio:a.bio||"",avatar_url:a.avatar_url||""});n.useEffect(()=>{f({bio:a.bio||"",avatar_url:a.avatar_url||""})},[a]);const j=/^[a-zA-Z0-9.!? ]*$/,N=/^(https?:\/\/)?([\da-z.-]+)\.([a-z.]{2,6})([/\w .-]*)*\/?$/,y=[{label:"Full Name:",value:a.fullName||"N/A"},{label:"Username:",value:a.username||"N/A"},{label:"Email:",value:a.email||"N/A"},{label:"User ID:",value:a.id||"N/A"},{label:"Last Updated:",value:a.updatedAt?a.updatedAt.toLocaleString():"N/A"},{label:"Bio:",value:a.bio||"No bio available"},{label:"Avatar URL:",value:a.avatar_url||"No avatar URL"}];n.useEffect(()=>{(async()=>{try{o(!0),await c.loadProfileFromSupabase()}catch(r){console.error("Failed to load profile:",r),s("Failed to load profile. Please try again later.")}finally{o(!1)}})()},[]),n.useEffect(()=>{const t=()=>{x(!0)};return u.on("openModal",t),()=>{u.off("openModal",t)}},[]);const k=()=>{u.emit("openModal",{message:"Edit Profile"})},b=()=>{x(!1)},p=t=>{const{name:r,value:i}=t.target;f(d=>({...d,[r]:i}))},w=()=>j.test(l.bio)?l.avatar_url&&!N.test(l.avatar_url)?(s("Invalid Avatar URL. Please enter a valid URL."),!1):(s(null),!0):(s("Bio contains invalid characters. Only letters, numbers, spaces, periods, !, and ? are allowed."),!1),U=async t=>{if(t.preventDefault(),o(!0),!w()){o(!1);return}try{const r=c.getSupabaseClient();if(!r){s("Failed to get a valid Supabase client instance.");return}const{data:i,error:d}=await r.from("user_profiles").update(l).eq("id",a.id).select();if(d||!i){s("Failed to update profile."),console.error("Error updating profile:",d);return}const P={actionId:await c.createActionULID("updateUserProfile"),updatedFields:{bio:l.bio,avatar_url:l.avatar_url},timestamp:new Date};await c.loadProfileFromSupabase(),console.log(`Profile updated successfully: ${JSON.stringify(i)}`)}catch(r){console.error("Failed to update profile:",r),s("Failed to update profile. Please try again later.")}finally{o(!1),b()}};return h?e.jsx("div",{className:"flex items-center justify-center h-screen",children:e.jsx("p",{className:"text-lg text-neutral-600 dark:text-neutral-200",children:"Loading profile..."})}):m?e.jsx("div",{className:"flex items-center justify-center h-screen",children:e.jsx("p",{className:"text-lg text-red-500 dark:text-red-400",children:m})}):e.jsxs("div",{className:"flex flex-col items-center justify-center min-h-screen bg-yellow-50/60 dark:bg-neutral-800 p-5",children:[e.jsxs("div",{className:v("bg-yellow-50 dark:bg-neutral-900 rounded-lg shadow-lg p-8 max-w-md w-full"),children:[e.jsx("div",{className:"flex items-center justify-center mb-6",children:a.avatar_url?e.jsx("img",{src:a.avatar_url,alt:"User Avatar",className:v("w-24 h-24 rounded-full shadow-lg",F({"border-2 border-cyan-500":a.avatar_url}))}):e.jsx("div",{className:"w-24 h-24 bg-gray-200 dark:bg-neutral-700 rounded-full flex items-center justify-center",children:e.jsx("span",{className:"text-2xl font-bold text-neutral-600 dark:text-neutral-200",children:"U"})})}),e.jsxs("div",{className:"text-center mb-6",children:[e.jsx("h1",{className:"text-2xl font-semibold text-neutral-700 dark:text-neutral-100 mb-2",children:a.username||"Unknown User"}),e.jsx("p",{className:"text-neutral-600 dark:text-neutral-300 mb-4",children:a.email||"No email available"})]}),e.jsx("div",{className:"text-center",children:y.map((t,r)=>e.jsxs("div",{className:"mb-4",children:[e.jsx("span",{className:"font-bold text-neutral-600 dark:text-neutral-200",children:t.label})," ",e.jsx("span",{className:"text-neutral-800 dark:text-neutral-300",children:t.value})]},r))}),e.jsx("div",{className:"flex justify-center mt-6",children:e.jsx("button",{className:"px-4 py-2 bg-cyan-500 text-white rounded hover:bg-cyan-600 focus:outline-none",onClick:k,children:"Edit Profile"})})]}),g&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black bg-opacity-50",children:e.jsxs("div",{className:"bg-white dark:bg-neutral-900 rounded-lg shadow-lg p-6 max-w-lg w-full relative",children:[e.jsx("button",{className:"absolute top-4 right-4 text-gray-500 dark:text-neutral-300 hover:text-gray-800 dark:hover:text-neutral-100",onClick:b,children:"×"}),e.jsxs("div",{className:"text-center",children:[e.jsx("h3",{className:"text-2xl font-bold text-neutral-800 dark:text-neutral-200",children:"Edit Profile"}),e.jsx("p",{className:"mt-2 text-sm text-neutral-600 dark:text-neutral-400",children:"Update your profile details below."})]}),e.jsx("div",{className:"mt-5",children:e.jsxs("form",{onSubmit:U,children:[e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{htmlFor:"bio",className:"block text-sm font-medium text-neutral-600 dark:text-neutral-300",children:"Bio"}),e.jsx("textarea",{id:"bio",name:"bio",className:"mt-1 block w-full rounded-md border-gray-300 dark:border-neutral-700 shadow-sm focus:border-cyan-500 focus:ring-cyan-500 sm:text-sm dark:bg-neutral-900 dark:text-neutral-400",placeholder:"Tell us about yourself...",value:l.bio,onChange:p})]}),e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{htmlFor:"avatar_url",className:"block text-sm font-medium text-neutral-600 dark:text-neutral-300",children:"Avatar URL"}),e.jsx("input",{id:"avatar_url",name:"avatar_url",type:"text",className:"mt-1 block w-full rounded-md border-gray-300 dark:border-neutral-700 shadow-sm focus:border-cyan-500 focus:ring-cyan-500 sm:text-sm dark:bg-neutral-900 dark:text-neutral-400",placeholder:"Enter a valid avatar URL",value:l.avatar_url,onChange:p})]}),e.jsx("div",{className:"flex justify-center",children:e.jsx("button",{type:"submit",className:"w-full py-2 px-4 bg-cyan-500 text-white rounded hover:bg-cyan-600 focus:outline-none",children:"Save Changes"})})]})})]})})]})};export{z as default};
diff --git a/docs/_astro/ReachProfile.D3EalY9w.js b/docs/_astro/ReachProfile.D3EalY9w.js
new file mode 100644
index 0000000000..428e9505ce
--- /dev/null
+++ b/docs/_astro/ReachProfile.D3EalY9w.js
@@ -0,0 +1 @@
+import{j as e}from"./jsx-runtime.CzgMDNMm.js";import{r}from"./index.DQ2WTIsS.js";import{e as o,$ as j,k as i}from"./npchandler.6lM6j_9q.js";import{u as v}from"./index.9YVhM4q0.js";import{t as N}from"./bundle-mjs.moIDn3jv.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const U=()=>{const a=v(j),[x,s]=r.useState(!0),[d,n]=r.useState(null),[f,c]=r.useState(!1),b=[{label:"Full Name:",value:a.fullName||"N/A"},{label:"Username:",value:a.username||"N/A"},{label:"Email:",value:a.email||"N/A"},{label:"User ID:",value:a.id||"N/A"},{label:"Last Updated:",value:a.updatedAt?a.updatedAt.toLocaleString():"N/A"}];r.useEffect(()=>{(async()=>{try{s(!0),await i.loadProfileFromSupabase()}catch(l){console.error("Failed to load profile:",l),n("Failed to load profile. Please try again later.")}finally{s(!1)}})()},[]),r.useEffect(()=>{const t=()=>{c(!0)};return o.on("openModal",t),()=>{o.off("openModal",t)}},[]);const h=()=>{o.emit("openModal",{message:"Edit Profile"})},u=()=>{c(!1)},m=t=>{t.target},p=()=>(n(null),!0),g=async t=>{t.preventDefault(),s(!0),p();try{if(!i.getSupabaseClient()){n("Failed to get a valid Supabase client instance.");return}await i.loadProfileFromSupabase()}catch(l){console.error("Failed to update profile:",l),n("Failed to update profile. Please try again later.")}finally{s(!1),u()}};return x?e.jsx("div",{className:"flex items-center justify-center h-screen",children:e.jsx("p",{className:"text-lg text-neutral-600 dark:text-neutral-200",children:"Loading profile..."})}):d?e.jsx("div",{className:"flex items-center justify-center h-screen",children:e.jsx("p",{className:"text-lg text-red-500 dark:text-red-400",children:d})}):e.jsxs("div",{className:"flex flex-col items-center justify-center min-h-screen bg-yellow-50/60 dark:bg-neutral-800 p-5",children:[e.jsxs("div",{className:N("bg-yellow-50 dark:bg-neutral-900 rounded-lg shadow-lg p-8 max-w-md w-full"),children:[e.jsx("div",{className:"flex items-center justify-center mb-6",children:e.jsx("div",{className:"w-24 h-24 bg-gray-200 dark:bg-neutral-700 rounded-full flex items-center justify-center",children:e.jsx("span",{className:"text-2xl font-bold text-neutral-600 dark:text-neutral-200",children:a.username?.substring(0,2).toUpperCase()||"U"})})}),e.jsxs("div",{className:"text-center mb-6",children:[e.jsx("h1",{className:"text-2xl font-semibold text-neutral-700 dark:text-neutral-100 mb-2",children:a.username||"Unknown User"}),e.jsx("p",{className:"text-neutral-600 dark:text-neutral-300 mb-4",children:a.email||"No email available"})]}),e.jsx("div",{className:"text-center",children:b.map((t,l)=>e.jsxs("div",{className:"mb-4",children:[e.jsx("span",{className:"font-bold text-neutral-600 dark:text-neutral-200",children:t.label})," ",e.jsx("span",{className:"text-neutral-800 dark:text-neutral-300",children:t.value})]},l))}),e.jsx("div",{className:"flex justify-center mt-6",children:e.jsx("button",{className:"px-4 py-2 bg-cyan-500 text-white rounded hover:bg-cyan-600 focus:outline-none",onClick:h,children:"Edit Profile"})})]}),f&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black bg-opacity-50",children:e.jsxs("div",{className:"bg-white dark:bg-neutral-900 rounded-lg shadow-lg p-6 max-w-lg w-full relative",children:[e.jsx("button",{className:"absolute top-4 right-4 text-gray-500 dark:text-neutral-300 hover:text-gray-800 dark:hover:text-neutral-100",onClick:u,children:"×"}),e.jsxs("div",{className:"text-center",children:[e.jsx("h3",{className:"text-2xl font-bold text-neutral-800 dark:text-neutral-200",children:"Edit Profile"}),e.jsx("p",{className:"mt-2 text-sm text-neutral-600 dark:text-neutral-400",children:"Update your profile details below."})]}),e.jsx("div",{className:"mt-5",children:e.jsxs("form",{onSubmit:g,children:[e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{htmlFor:"bio",className:"block text-sm font-medium text-neutral-600 dark:text-neutral-300",children:"Bio"}),e.jsx("textarea",{id:"bio",name:"bio",className:"mt-1 block w-full rounded-md border-gray-300 dark:border-neutral-700 shadow-sm focus:border-cyan-500 focus:ring-cyan-500 sm:text-sm dark:bg-neutral-900 dark:text-neutral-400",placeholder:"Tell us about yourself...",onChange:m})]}),e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{htmlFor:"avatar_url",className:"block text-sm font-medium text-neutral-600 dark:text-neutral-300",children:"Avatar URL"}),e.jsx("input",{id:"avatar_url",name:"avatar_url",type:"text",className:"mt-1 block w-full rounded-md border-gray-300 dark:border-neutral-700 shadow-sm focus:border-cyan-500 focus:ring-cyan-500 sm:text-sm dark:bg-neutral-900 dark:text-neutral-400",placeholder:"Enter a valid avatar URL",onChange:m})]}),e.jsx("div",{className:"flex justify-center",children:e.jsx("button",{type:"submit",className:"w-full py-2 px-4 bg-cyan-500 text-white rounded hover:bg-cyan-600 focus:outline-none",children:"Save Changes"})})]})})]})})]})};export{U as default};
diff --git a/docs/_astro/ReactDashboard.tn1wHPIg.js b/docs/_astro/ReactDashboard.DDmjQLuD.js
similarity index 99%
rename from docs/_astro/ReactDashboard.tn1wHPIg.js
rename to docs/_astro/ReactDashboard.DDmjQLuD.js
index 6833f75ee0..afbe978bbe 100644
--- a/docs/_astro/ReactDashboard.tn1wHPIg.js
+++ b/docs/_astro/ReactDashboard.DDmjQLuD.js
@@ -1,4 +1,4 @@
-import{j as C}from"./jsx-runtime.CzgMDNMm.js";import{r as a,R as O}from"./index.DQ2WTIsS.js";import{r as ue}from"./index.DMzVAWus.js";import{a as Rn,e as Ze,$ as Mn}from"./npchandler.CsnXuAhR.js";import{b as Nn}from"./index.CFX5TIQh.js";import{c as lt}from"./clsx.B-dksMZM.js";import{u as On}from"./index.9YVhM4q0.js";import{t as G}from"./bundle-mjs.moIDn3jv.js";import"./preload-helper.ygWHROA3.js";import"./index.BH1EYZ08.js";const An=({styleClass:e,size:t=24,color:n="#000",onClick:r,...o})=>C.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",width:t,height:t,className:e,onClick:r,...o,children:C.jsx("path",{stroke:n,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M4 8.5V4m0 0h4.5M4 4l5.5 5.5m10.5-1V4m0 0h-4.5M20 4l-5.5 5.5M4 15.5V20m0 0h4.5M4 20l5.5-5.5m10.5 1V20m0 0h-4.5m4.5 0l-5.5-5.5"})}),Ue=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function he(e){const t=Object.prototype.toString.call(e);return t==="[object Window]"||t==="[object global]"}function ct(e){return"nodeType"in e}function j(e){var t,n;return e?he(e)?e:ct(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function ut(e){const{Document:t}=j(e);return e instanceof t}function Me(e){return he(e)?!1:e instanceof j(e).HTMLElement}function Ht(e){return e instanceof j(e).SVGElement}function ge(e){return e?he(e)?e.document:ct(e)?ut(e)?e:Me(e)||Ht(e)?e.ownerDocument:document:document:document}const V=Ue?a.useLayoutEffect:a.useEffect;function We(e){const t=a.useRef(e);return V(()=>{t.current=e}),a.useCallback(function(){for(var n=arguments.length,r=new Array(n),o=0;o{e.current=setInterval(r,o)},[]),n=a.useCallback(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function Ee(e,t){t===void 0&&(t=[e]);const n=a.useRef(e);return V(()=>{n.current!==e&&(n.current=e)},t),n}function Ne(e,t){const n=a.useRef();return a.useMemo(()=>{const r=e(n.current);return n.current=r,r},[...t])}function Be(e){const t=We(e),n=a.useRef(null),r=a.useCallback(o=>{o!==n.current&&t?.(o,n.current),n.current=o},[]);return[n,r]}function Fe(e){const t=a.useRef();return a.useEffect(()=>{t.current=e},[e]),t.current}let et={};function Ve(e,t){return a.useMemo(()=>{if(t)return t;const n=et[e]==null?0:et[e]+1;return et[e]=n,e+"-"+n},[e,t])}function Jt(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o{const l=Object.entries(i);for(const[c,u]of l){const f=s[c];f!=null&&(s[c]=f+e*u)}return s},{...t})}}const de=Jt(1),$e=Jt(-1);function In(e){return"clientX"in e&&"clientY"in e}function dt(e){if(!e)return!1;const{KeyboardEvent:t}=j(e.target);return t&&e instanceof t}function kn(e){if(!e)return!1;const{TouchEvent:t}=j(e.target);return t&&e instanceof t}function Xe(e){if(kn(e)){if(e.touches&&e.touches.length){const{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){const{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return In(e)?{x:e.clientX,y:e.clientY}:null}const fe=Object.freeze({Translate:{toString(e){if(!e)return;const{x:t,y:n}=e;return"translate3d("+(t?Math.round(t):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;const{scaleX:t,scaleY:n}=e;return"scaleX("+t+") scaleY("+n+")"}},Transform:{toString(e){if(e)return[fe.Translate.toString(e),fe.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+" "+n+"ms "+r}}}),jt="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function Ln(e){return e.matches(jt)?e:e.querySelector(jt)}const jn={display:"none"};function Pn(e){let{id:t,value:n}=e;return O.createElement("div",{id:t,style:jn},n)}function zn(e){let{id:t,announcement:n,ariaLiveType:r="assertive"}=e;const o={position:"fixed",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"};return O.createElement("div",{id:t,style:o,role:"status","aria-live":r,"aria-atomic":!0},n)}function Bn(){const[e,t]=a.useState("");return{announce:a.useCallback(r=>{r!=null&&t(r)},[]),announcement:e}}const qt=a.createContext(null);function Fn(e){const t=a.useContext(qt);a.useEffect(()=>{if(!t)throw new Error("useDndMonitor must be used within a children of ");return t(e)},[e,t])}function $n(){const[e]=a.useState(()=>new Set),t=a.useCallback(r=>(e.add(r),()=>e.delete(r)),[e]);return[a.useCallback(r=>{let{type:o,event:s}=r;e.forEach(i=>{var l;return(l=i[o])==null?void 0:l.call(i,s)})},[e]),t]}const Xn={draggable:`
+import{j as C}from"./jsx-runtime.CzgMDNMm.js";import{r as a,R as O}from"./index.DQ2WTIsS.js";import{r as ue}from"./index.DMzVAWus.js";import{a as Rn,e as Ze,$ as Mn}from"./npchandler.6lM6j_9q.js";import{b as Nn}from"./index.CFX5TIQh.js";import{c as lt}from"./clsx.B-dksMZM.js";import{u as On}from"./index.9YVhM4q0.js";import{t as G}from"./bundle-mjs.moIDn3jv.js";import"./preload-helper.ygWHROA3.js";import"./index.BH1EYZ08.js";const An=({styleClass:e,size:t=24,color:n="#000",onClick:r,...o})=>C.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",width:t,height:t,className:e,onClick:r,...o,children:C.jsx("path",{stroke:n,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M4 8.5V4m0 0h4.5M4 4l5.5 5.5m10.5-1V4m0 0h-4.5M20 4l-5.5 5.5M4 15.5V20m0 0h4.5M4 20l5.5-5.5m10.5 1V20m0 0h-4.5m4.5 0l-5.5-5.5"})}),Ue=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function he(e){const t=Object.prototype.toString.call(e);return t==="[object Window]"||t==="[object global]"}function ct(e){return"nodeType"in e}function j(e){var t,n;return e?he(e)?e:ct(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function ut(e){const{Document:t}=j(e);return e instanceof t}function Me(e){return he(e)?!1:e instanceof j(e).HTMLElement}function Ht(e){return e instanceof j(e).SVGElement}function ge(e){return e?he(e)?e.document:ct(e)?ut(e)?e:Me(e)||Ht(e)?e.ownerDocument:document:document:document}const V=Ue?a.useLayoutEffect:a.useEffect;function We(e){const t=a.useRef(e);return V(()=>{t.current=e}),a.useCallback(function(){for(var n=arguments.length,r=new Array(n),o=0;o{e.current=setInterval(r,o)},[]),n=a.useCallback(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function Ee(e,t){t===void 0&&(t=[e]);const n=a.useRef(e);return V(()=>{n.current!==e&&(n.current=e)},t),n}function Ne(e,t){const n=a.useRef();return a.useMemo(()=>{const r=e(n.current);return n.current=r,r},[...t])}function Be(e){const t=We(e),n=a.useRef(null),r=a.useCallback(o=>{o!==n.current&&t?.(o,n.current),n.current=o},[]);return[n,r]}function Fe(e){const t=a.useRef();return a.useEffect(()=>{t.current=e},[e]),t.current}let et={};function Ve(e,t){return a.useMemo(()=>{if(t)return t;const n=et[e]==null?0:et[e]+1;return et[e]=n,e+"-"+n},[e,t])}function Jt(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o{const l=Object.entries(i);for(const[c,u]of l){const f=s[c];f!=null&&(s[c]=f+e*u)}return s},{...t})}}const de=Jt(1),$e=Jt(-1);function In(e){return"clientX"in e&&"clientY"in e}function dt(e){if(!e)return!1;const{KeyboardEvent:t}=j(e.target);return t&&e instanceof t}function kn(e){if(!e)return!1;const{TouchEvent:t}=j(e.target);return t&&e instanceof t}function Xe(e){if(kn(e)){if(e.touches&&e.touches.length){const{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){const{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return In(e)?{x:e.clientX,y:e.clientY}:null}const fe=Object.freeze({Translate:{toString(e){if(!e)return;const{x:t,y:n}=e;return"translate3d("+(t?Math.round(t):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;const{scaleX:t,scaleY:n}=e;return"scaleX("+t+") scaleY("+n+")"}},Transform:{toString(e){if(e)return[fe.Translate.toString(e),fe.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+" "+n+"ms "+r}}}),jt="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function Ln(e){return e.matches(jt)?e:e.querySelector(jt)}const jn={display:"none"};function Pn(e){let{id:t,value:n}=e;return O.createElement("div",{id:t,style:jn},n)}function zn(e){let{id:t,announcement:n,ariaLiveType:r="assertive"}=e;const o={position:"fixed",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"};return O.createElement("div",{id:t,style:o,role:"status","aria-live":r,"aria-atomic":!0},n)}function Bn(){const[e,t]=a.useState("");return{announce:a.useCallback(r=>{r!=null&&t(r)},[]),announcement:e}}const qt=a.createContext(null);function Fn(e){const t=a.useContext(qt);a.useEffect(()=>{if(!t)throw new Error("useDndMonitor must be used within a children of ");return t(e)},[e,t])}function $n(){const[e]=a.useState(()=>new Set),t=a.useCallback(r=>(e.add(r),()=>e.delete(r)),[e]);return[a.useCallback(r=>{let{type:o,event:s}=r;e.forEach(i=>{var l;return(l=i[o])==null?void 0:l.call(i,s)})},[e]),t]}const Xn={draggable:`
To pick up a draggable item, press the space bar.
While dragging, use the arrow keys to move the item.
Press space again to drop the item in its new position, or press escape to cancel.
diff --git a/docs/_astro/ReactLogout.CbOYse6M.js b/docs/_astro/ReactLogout.BRRiRumA.js
similarity index 84%
rename from docs/_astro/ReactLogout.CbOYse6M.js
rename to docs/_astro/ReactLogout.BRRiRumA.js
index 92a6ff38c4..b2caf7a970 100644
--- a/docs/_astro/ReactLogout.CbOYse6M.js
+++ b/docs/_astro/ReactLogout.BRRiRumA.js
@@ -1 +1 @@
-import{j as e}from"./jsx-runtime.CzgMDNMm.js";import{r as t}from"./index.DQ2WTIsS.js";import{k as c,e as n}from"./npchandler.CsnXuAhR.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const x=()=>{const[s,r]=t.useState(!1),[o,a]=t.useState(null),i=async()=>{r(!0);try{await c.removeProfile(),n.emit("redirectUser",{location:"/login",replace:!0})}catch(l){console.error("Failed to log out:",l),a("An error occurred during logout. Please try again.")}finally{r(!1)}};return t.useEffect(()=>{i()},[]),e.jsx("div",{className:"flex flex-col items-center justify-center h-screen",children:s?e.jsx("p",{className:"text-lg",children:"Logging out..."}):o?e.jsx("p",{className:"text-red-500",children:o}):e.jsx("p",{className:"text-lg",children:"Redirecting..."})})};export{x as default};
+import{j as e}from"./jsx-runtime.CzgMDNMm.js";import{r as t}from"./index.DQ2WTIsS.js";import{k as c,e as n}from"./npchandler.6lM6j_9q.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const x=()=>{const[s,r]=t.useState(!1),[o,a]=t.useState(null),i=async()=>{r(!0);try{await c.removeProfile(),n.emit("redirectUser",{location:"/login",replace:!0})}catch(l){console.error("Failed to log out:",l),a("An error occurred during logout. Please try again.")}finally{r(!1)}};return t.useEffect(()=>{i()},[]),e.jsx("div",{className:"flex flex-col items-center justify-center h-screen",children:s?e.jsx("p",{className:"text-lg",children:"Logging out..."}):o?e.jsx("p",{className:"text-red-500",children:o}):e.jsx("p",{className:"text-lg",children:"Redirecting..."})})};export{x as default};
diff --git a/docs/_astro/ReactUnity.DJ825b4V.js b/docs/_astro/ReactUnity.DJ825b4V.js
new file mode 100644
index 0000000000..5d953aef62
--- /dev/null
+++ b/docs/_astro/ReactUnity.DJ825b4V.js
@@ -0,0 +1 @@
+import{j as s}from"./jsx-runtime.CzgMDNMm.js";import{r}from"./index.DQ2WTIsS.js";import{K as I,k as c}from"./npchandler.6lM6j_9q.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const V=()=>{const[b,u]=r.useState(!1),[p,n]=r.useState(null),[m,h]=r.useState(null),[i,S]=r.useState({email:"",password:""}),[v,l]=r.useState(!1),[f,E]=r.useState(!1),t=r.useRef(null),w=e=>{const{name:o,value:a}=e.target;S(d=>({...d,[o]:a}))};r.useEffect(()=>{const e=document.createElement("script");return e.src="https://hcaptcha.com/1/api.js?onload=hcaptchaOnLoad&render=explicit",e.async=!0,e.defer=!0,document.body.appendChild(e),window.hcaptchaOnLoad=()=>{E(!0)},window.onSuccess=o=>{h(o)},window.onError=()=>{n("Captcha Error: Please try again."),t.current!==null&&window.hcaptcha.reset(t.current)},window.onExpired=()=>{h(null),n("Captcha expired: Please complete the captcha again."),t.current!==null&&window.hcaptcha.reset(t.current)},()=>{window.hcaptchaOnLoad=void 0,window.onSuccess=void 0,window.onError=void 0,window.onExpired=void 0,document.body.removeChild(e),t.current=null}},[]),r.useEffect(()=>{if(f&&window.hcaptcha){const e=window.hcaptcha.render("h-captcha",{sitekey:I.get().hcaptcha,callback:"onSuccess","expired-callback":"onExpired","error-callback":"onError"});t.current=e}},[f]),r.useEffect(()=>{const e=document.getElementById("skeleton");e?(e.style.transition="opacity 0.5s ease-out",e.style.opacity="0",setTimeout(()=>{e.remove(),l(!0)},500)):l(!0)},[]);const N=async()=>{if(n(null),!m){n("Please complete the captcha."),t.current!==null&&window.hcaptcha.reset(t.current);return}const e=await c.createActionULID("loginUser");try{if(await c.loginUser(i.email,i.password,e,m))if(u(!0),window.vuplex)try{const a=await c.getSupabaseClient();if(!a){console.error("Supabase client is not initialized."),window.vuplex.postMessage(JSON.stringify({type:"error",message:"Error from Supabase client not initialized!"}));return}const{data:d,error:g}=await a.auth.refreshSession();if(g){console.error("Failed to refresh session:",g),window.vuplex.postMessage(JSON.stringify({type:"error",message:"Error from Supabase Refresh Session"}));return}const{session:x,user:y}=d;if(!x||!y){console.error("Session or user data is missing."),window.vuplex.postMessage(JSON.stringify({type:"error",message:"Error from Supabase User Data Missing"}));return}const k=JSON.stringify({type:"sessionUpdate",message:"User session updated successfully.",data:{session:x,user:y}});window.vuplex.postMessage(k),window.vuplex.postMessage(JSON.stringify({type:"confirm",message:"Hello from VuPlex"}))}catch(a){console.error("An error occurred while refreshing the session and sending data to Vuplex:",a),window.vuplex.postMessage(JSON.stringify({type:"error",message:"Error from KBVE Vuplex!"}))}else console.log("No Vuplex Found");else{const a=await c.getDetailedErrorByActionId(e);n(a||"Failed to log in. Please try again."),t.current!==null&&window.hcaptcha.reset(t.current)}}catch(o){console.error("Sign-in failed:",o),n("An error occurred during sign-in. Please try again."),t.current!==null&&window.hcaptcha.reset(t.current)}},j=e=>{e.preventDefault(),N()};return s.jsx("div",{className:"flex flex-col items-center justify-center h-screen p-4",children:b?s.jsxs("div",{className:"text-center",children:[s.jsx("p",{className:"text-lg",children:"You are signed in!"}),s.jsx("button",{className:"mt-4 px-4 py-2 bg-red-500 text-white rounded hover:bg-red-600 transition",onClick:()=>{u(!1),l(!0)},children:"Sign Out"})]}):s.jsxs("form",{className:`w-full max-w-sm transition-opacity duration-500 rounded-lg p-4 bg-yellow-50/60 dark:bg-neutral-500 ${v?"opacity-100":"opacity-0"}`,onSubmit:j,children:[s.jsx("h2",{className:"text-xl mb-4",children:"Sign In"}),s.jsxs("div",{className:"mb-4",children:[s.jsx("label",{className:"block text-gray-700 text-sm font-bold mb-2",htmlFor:"email",children:"Email"}),s.jsx("input",{type:"email",id:"email",name:"email",className:"w-full px-3 py-2 border rounded shadow-sm focus:outline-none focus:ring-2 focus:ring-cyan-500",value:i.email,onChange:w,required:!0})]}),s.jsxs("div",{className:"mb-4",children:[s.jsx("label",{className:"block text-gray-700 text-sm font-bold mb-2",htmlFor:"password",children:"Password"}),s.jsx("input",{type:"password",id:"password",name:"password",className:"w-full px-3 py-2 border rounded shadow-sm focus:outline-none focus:ring-2 focus:ring-cyan-500",value:i.password,onChange:w,required:!0})]}),s.jsx("div",{className:"mb-4",children:s.jsx("div",{id:"h-captcha",className:"my-4"})}),s.jsx("button",{type:"submit",className:"w-full bg-cyan-500 text-white py-2 rounded hover:bg-cyan-600 transition",children:"Sign In"}),p&&s.jsx("p",{className:"text-red-500 mt-4",children:p})]})})};export{V as default};
diff --git a/docs/_astro/SupabaseSvelteRegister.DnKGqVXK.js b/docs/_astro/SupabaseSvelteRegister.CH8CC_LR.js
similarity index 99%
rename from docs/_astro/SupabaseSvelteRegister.DnKGqVXK.js
rename to docs/_astro/SupabaseSvelteRegister.CH8CC_LR.js
index 0e4c5ad8c8..1c826f6962 100644
--- a/docs/_astro/SupabaseSvelteRegister.DnKGqVXK.js
+++ b/docs/_astro/SupabaseSvelteRegister.CH8CC_LR.js
@@ -1 +1 @@
-import{S as it,i as nt,s as ot,e as Ze,a as w,b as l,t as Ee,h as dt,d as o,c as y,f as i,g as v,j as K,k as Ce,l as t,m as ue,n as at,o as r,p as X,q as Q,r as fe,u as ct,v as Ie,w as ke,x as ut,y as ft,z as mt,A as ht}from"./index.BL2D2LL-.js";import{g as pt}from"./globals.D0QH3NT1.js";import{C as vt,r as bt}from"./loader.glmVqvBr.js";import{K as $e,k as me}from"./npchandler.CsnXuAhR.js";import"./jsx-runtime.CzgMDNMm.js";import"./index.DQ2WTIsS.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const{document:Re}=pt;function et(d){let e,s;return{c(){e=l("script"),this.h()},l(a){e=i(a,"SCRIPT",{src:!0});var u=v(e);u.forEach(o),this.h()},h(){at(e.src,s=d[5])||t(e,"src",s),e.async=!0,e.defer=!0},m(a,u){X(a,e,u)},p:ke,d(a){a&&o(e)}}}function tt(d){let e,s='';return{c(){e=l("div"),e.innerHTML=s,this.h()},l(a){e=i(a,"DIV",{class:!0,role:!0,tabindex:!0,"aria-labelledby":!0,"data-svelte-h":!0}),K(e)!=="svelte-xpal3g"&&(e.innerHTML=s),this.h()},h(){t(e,"class","max-w-xs bg-white border border-gray-200 rounded-xl shadow-lg dark:bg-neutral-800 dark:border-neutral-700 z-100"),t(e,"role","alert"),t(e,"tabindex","-1"),t(e,"aria-labelledby","hs-toast-normal-example-label")},m(a,u){X(a,e,u)},d(a){a&&o(e)}}}function st(d){let e,s,a,u='',h,n,p,b=d[4].svelte_internal_message+"",k;return{c(){e=l("div"),s=l("div"),a=l("div"),a.innerHTML=u,h=w(),n=l("div"),p=l("p"),k=Ee(b),this.h()},l(g){e=i(g,"DIV",{class:!0,role:!0,tabindex:!0,"aria-labelledby":!0});var T=v(e);s=i(T,"DIV",{class:!0});var M=v(s);a=i(M,"DIV",{class:!0,"data-svelte-h":!0}),K(a)!=="svelte-mnfjrn"&&(a.innerHTML=u),h=y(M),n=i(M,"DIV",{class:!0});var N=v(n);p=i(N,"P",{id:!0,class:!0});var U=v(p);k=Ce(U,b),U.forEach(o),N.forEach(o),M.forEach(o),T.forEach(o),this.h()},h(){t(a,"class","shrink-0"),t(p,"id","hs-toast-error-example-label"),t(p,"class","text-sm text-gray-700 dark:text-neutral-400"),t(n,"class","ms-3"),t(s,"class","flex p-4"),t(e,"class","max-w-xs bg-white border border-gray-200 rounded-xl shadow-lg dark:bg-neutral-800 dark:border-neutral-700 z-100"),t(e,"role","alert"),t(e,"tabindex","-1"),t(e,"aria-labelledby","hs-toast-error-example-label")},m(g,T){X(g,e,T),r(e,s),r(s,a),r(s,h),r(s,n),r(n,p),r(p,k)},p(g,T){T&16&&b!==(b=g[4].svelte_internal_message+"")&&Ie(k,b)},d(g){g&&o(e)}}}function rt(d){let e,s,a=d[4].successful_message+"",u;return{c(){e=l("div"),s=l("span"),u=Ee(a),this.h()},l(h){e=i(h,"DIV",{class:!0});var n=v(e);s=i(n,"SPAN",{class:!0});var p=v(s);u=Ce(p,a),p.forEach(o),n.forEach(o),this.h()},h(){t(s,"class","text-lg text-cyan-600 dark:text-cyan-300"),t(e,"class","flex")},m(h,n){X(h,e,n),r(e,s),r(s,u)},p(h,n){n&16&&a!==(a=h[4].successful_message+"")&&Ie(u,a)},d(h){h&&o(e)}}}function gt(d){let e,s=' Online';return{c(){e=l("div"),e.innerHTML=s,this.h()},l(a){e=i(a,"DIV",{class:!0,"data-svelte-h":!0}),K(e)!=="svelte-hfgq2j"&&(e.innerHTML=s),this.h()},h(){t(e,"class","inline-flex items-center")},m(a,u){X(a,e,u)},p:ke,d(a){a&&o(e)}}}function _t(d){let e,s,a=' ',u,h,n;return{c(){e=l("div"),s=l("span"),s.innerHTML=a,u=w(),h=l("div"),n=Ee(d[3]),this.h()},l(p){e=i(p,"DIV",{class:!0});var b=v(e);s=i(b,"SPAN",{class:!0,"data-svelte-h":!0}),K(s)!=="svelte-493u0u"&&(s.innerHTML=a),u=y(b),h=i(b,"DIV",{class:!0});var k=v(h);n=Ce(k,d[3]),k.forEach(o),b.forEach(o),this.h()},h(){t(s,"class","relative flex h-3 w-3"),t(h,"class","px-2 text-gray-600 dark:text-neutral-400 text-wrap w-1/2"),t(e,"class","inline-flex items-center")},m(p,b){X(p,e,b),r(e,s),r(e,u),r(e,h),r(h,n)},p(p,b){b&8&&Ie(n,p[3])},d(p){p&&o(e)}}}function xt(d){let e,s,a,u,h,n,p,b="Sign up",k,g,T="KBVE Authentication Portal",M,N,U,G,z,_,q,R,f="Username",le,Z,E,ie,W,O,he="Email Address",m,S,x,De,$,ee,He='',Le,ne,A,Te,te,se,Be='',Ve,oe,P,Me,de,ae,Se,Y,ce=d[2]?"Loading...":"Register",pe,ze,J,re,Ae,F,Ue,Pe,qe,I=d[1]&&!window?.hcaptcha&&et(d),V=d[2]&&tt(),D=d[4].svelte_internal_message&&st(d),L=d[4].successful_message&&rt(d);function je(c,C){return c[3]?_t:gt}let ve=je(d),j=ve(d);return{c(){I&&I.c(),e=Ze(),s=w(),a=l("div"),u=l("div"),h=l("div"),n=l("div"),p=l("h3"),p.textContent=b,k=w(),g=l("h1"),g.textContent=T,M=w(),V&&V.c(),N=w(),D&&D.c(),U=w(),L&&L.c(),G=w(),z=l("form"),_=l("div"),q=l("div"),R=l("label"),R.textContent=f,le=w(),Z=l("div"),E=l("input"),ie=w(),W=l("div"),O=l("label"),O.textContent=he,m=w(),S=l("div"),x=l("input"),De=w(),$=l("div"),ee=l("div"),ee.innerHTML=He,Le=w(),ne=l("div"),A=l("input"),Te=w(),te=l("div"),se=l("div"),se.innerHTML=Be,Ve=w(),oe=l("div"),P=l("input"),Me=w(),de=l("div"),ae=l("div"),Se=w(),Y=l("button"),pe=Ee(ce),ze=w(),J=l("div"),re=l("div"),j.c(),Ae=w(),F=l("dotlottie-player"),this.h()},l(c){const C=dt("svelte-1fvsnp3",Re.head);I&&I.l(C),e=Ze(),C.forEach(o),s=y(c),a=i(c,"DIV",{class:!0});var Ne=v(a);u=i(Ne,"DIV",{class:!0,id:!0});var Oe=v(u);h=i(Oe,"DIV",{class:!0});var be=v(h);n=i(be,"DIV",{class:!0});var H=v(n);p=i(H,"H3",{class:!0,"data-svelte-h":!0}),K(p)!=="svelte-12p1rd1"&&(p.textContent=b),k=y(H),g=i(H,"H1",{class:!0,"data-svelte-h":!0}),K(g)!=="svelte-4x0q1u"&&(g.textContent=T),M=y(H),V&&V.l(H),N=y(H),D&&D.l(H),U=y(H),L&&L.l(H),G=y(H),z=i(H,"FORM",{id:!0,class:!0,action:!0});var Fe=v(z);_=i(Fe,"DIV",{class:!0});var B=v(_);q=i(B,"DIV",{});var ge=v(q);R=i(ge,"LABEL",{for:!0,class:!0,"data-svelte-h":!0}),K(R)!=="svelte-1w0boxg"&&(R.textContent=f),le=y(ge),Z=i(ge,"DIV",{});var Ke=v(Z);E=i(Ke,"INPUT",{type:!0,id:!0,name:!0,autocomplete:!0,class:!0,"aria-describedby":!0}),Ke.forEach(o),ge.forEach(o),ie=y(B),W=i(B,"DIV",{});var _e=v(W);O=i(_e,"LABEL",{for:!0,class:!0,"data-svelte-h":!0}),K(O)!=="svelte-54c5ua"&&(O.textContent=he),m=y(_e),S=i(_e,"DIV",{});var We=v(S);x=i(We,"INPUT",{type:!0,id:!0,name:!0,autocomplete:!0,class:!0,"aria-describedby":!0}),We.forEach(o),_e.forEach(o),De=y(B),$=i(B,"DIV",{});var xe=v($);ee=i(xe,"DIV",{class:!0,"data-svelte-h":!0}),K(ee)!=="svelte-ghqbo6"&&(ee.innerHTML=He),Le=y(xe),ne=i(xe,"DIV",{});var Ye=v(ne);A=i(Ye,"INPUT",{type:!0,id:!0,name:!0,class:!0,"aria-describedby":!0}),Ye.forEach(o),xe.forEach(o),Te=y(B),te=i(B,"DIV",{});var we=v(te);se=i(we,"DIV",{class:!0,"data-svelte-h":!0}),K(se)!=="svelte-18n8n7b"&&(se.innerHTML=Be),Ve=y(we),oe=i(we,"DIV",{});var Ge=v(oe);P=i(Ge,"INPUT",{type:!0,id:!0,name:!0,class:!0,"aria-describedby":!0}),Ge.forEach(o),we.forEach(o),Me=y(B),de=i(B,"DIV",{});var Je=v(de);ae=i(Je,"DIV",{id:!0,class:!0}),v(ae).forEach(o),Je.forEach(o),Se=y(B),Y=i(B,"BUTTON",{type:!0,class:!0});var Qe=v(Y);pe=Ce(Qe,ce),Qe.forEach(o),B.forEach(o),Fe.forEach(o),H.forEach(o),ze=y(be),J=i(be,"DIV",{class:!0});var ye=v(J);re=i(ye,"DIV",{class:!0});var Xe=v(re);j.l(Xe),Xe.forEach(o),Ae=y(ye),F=i(ye,"DOTLOTTIE-PLAYER",{autoplay:!0,loop:!0,class:!0,mode:!0,src:!0});var lt=v(F);lt.forEach(o),ye.forEach(o),be.forEach(o),Oe.forEach(o),Ne.forEach(o),this.h()},h(){t(p,"class","text-blue-400 mb-1"),t(g,"class","page-title text-white font-bold text-3xl mb-5 lg:text-3xl xl:text-4xl 2xl:text-5xl"),t(R,"for","login-username"),t(R,"class","mb-1 block text-xs text-left md:text-sm md:mb-2 text-neutral-800 dark:text-neutral-200"),t(E,"type","text"),t(E,"id","register-username"),t(E,"name","username"),t(E,"autocomplete","username"),t(E,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),E.required=!0,t(E,"aria-describedby","register-username"),t(O,"for","register-email"),t(O,"class","mb-1 block text-xs text-left md:text-sm md:mb-2 text-neutral-800 dark:text-neutral-200"),t(x,"type","email"),t(x,"id","register-email"),t(x,"name","email"),t(x,"autocomplete","email"),t(x,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),x.required=!0,t(x,"aria-describedby","register-email"),t(ee,"class","flex items-center justify-between"),t(A,"type","password"),t(A,"id","register-password"),t(A,"name","password"),t(A,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),A.required=!0,t(A,"aria-describedby","register-password"),t(se,"class","flex items-center justify-between"),t(P,"type","password"),t(P,"id","confirm-register-password"),t(P,"name","password"),t(P,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),P.required=!0,t(P,"aria-describedby","confirm-register-password"),t(ae,"id","h-captcha-"+d[6]),t(ae,"class","flex justify-center scale-75 md:scale-100"),t(Y,"type","submit"),t(Y,"class",`${yt} ${kt} ${Et} ${Ct} ${It} ${Dt} ${Lt}`),Y.disabled=d[2],t(_,"class","grid gap-y-2 md:gap-y-4"),t(z,"id","registerForm"),t(z,"class","opacity-0 transition-opacity duration-500"),t(z,"action","#"),t(n,"class","relative"),t(re,"class",""),ue(F,"autoplay",""),ue(F,"loop",""),ue(F,"class","hidden md:block md:w-full"),ue(F,"mode","normal"),at(F.src,Ue="/assets/lottie/"+wt)||ue(F,"src",Ue),t(J,"class","flex flex-col w-1/2"),t(h,"class","px-16 flex flex-row justify-center items-center lg:justify-between"),t(u,"class","py-16 opacity-0 transition-opacity duration-500"),t(u,"id","formulation_form"),t(a,"class","")},m(c,C){I&&I.m(Re.head,null),r(Re.head,e),X(c,s,C),X(c,a,C),r(a,u),r(u,h),r(h,n),r(n,p),r(n,k),r(n,g),r(n,M),V&&V.m(n,null),r(n,N),D&&D.m(n,null),r(n,U),L&&L.m(n,null),r(n,G),r(n,z),r(z,_),r(_,q),r(q,R),r(q,le),r(q,Z),r(Z,E),Q(E,d[4].username),r(_,ie),r(_,W),r(W,O),r(W,m),r(W,S),r(S,x),Q(x,d[4].email),r(_,De),r(_,$),r($,ee),r($,Le),r($,ne),r(ne,A),Q(A,d[4].password),r(_,Te),r(_,te),r(te,se),r(te,Ve),r(te,oe),r(oe,P),Q(P,d[4].confirm),r(_,Me),r(_,de),r(de,ae),r(_,Se),r(_,Y),r(Y,pe),r(h,ze),r(h,J),r(J,re),j.m(re,null),r(J,Ae),r(J,F),Pe||(qe=[fe(E,"input",d[16]),fe(x,"input",d[17]),fe(A,"input",d[18]),fe(P,"input",d[19]),fe(z,"submit",ct(d[0]))],Pe=!0)},p(c,[C]){c[1]&&!window?.hcaptcha?I?I.p(c,C):(I=et(c),I.c(),I.m(e.parentNode,e)):I&&(I.d(1),I=null),c[2]?V||(V=tt(),V.c(),V.m(n,N)):V&&(V.d(1),V=null),c[4].svelte_internal_message?D?D.p(c,C):(D=st(c),D.c(),D.m(n,U)):D&&(D.d(1),D=null),c[4].successful_message?L?L.p(c,C):(L=rt(c),L.c(),L.m(n,G)):L&&(L.d(1),L=null),C&16&&E.value!==c[4].username&&Q(E,c[4].username),C&16&&x.value!==c[4].email&&Q(x,c[4].email),C&16&&A.value!==c[4].password&&Q(A,c[4].password),C&16&&P.value!==c[4].confirm&&Q(P,c[4].confirm),C&4&&ce!==(ce=c[2]?"Loading...":"Register")&&Ie(pe,ce),C&4&&(Y.disabled=c[2]),ve===(ve=je(c))&&j?j.p(c,C):(j.d(1),j=ve(c),j&&(j.c(),j.m(re,null)))},i:ke,o:ke,d(c){c&&(o(s),o(a)),I&&I.d(c),o(e),V&&V.d(),D&&D.d(),L&&L.d(),j.d(),Pe=!1,ut(qe)}}}let wt="/robot.lottie";const yt="inline-flex w-full items-center justify-center gap-x-2 rounded-lg px-4 py-1 text-sm font-normal text-blue-400 focus-visible:ring outline-none transition duration-300 py-3",kt="border border-transparent",Et="bg-blue-100 dark:focus:outline-none",Ct="hover:bg-blue-400 hover:text-white",It="2xl:text-base",Dt="disabled:pointer-events-none disabled:opacity-50 disabled:animate-pulse",Lt="ring-zinc-500 dark:ring-zinc-200";function Tt(d,e,s){const a=ft(),u=()=>{s(2,g=!1),s(4,f.successful_message="",f),b&&k&&T&&hcaptcha.reset(T)},h=m=>{if(b&&k&&T)return hcaptcha.execute(T,m)},n=async()=>{if(s(2,g=!0),M=await me.createActionULID("registerUser"),!M){s(4,f.svelte_internal_message="Failed to create action!",f),u();return}try{const m=await me.registerUser(f.email,f.password,f.confirm,M,f.username,f.captchaToken);if(m){s(4,f.successful_message=`Welcome, ${m.username||m.email}! Registration successful. Redirecting in 2 Seconds`,f),console.log("User registered and profile saved:",m);const S=await me.getSession();S?(console.log("User is already logged in after registration:",S),setTimeout(()=>{window.location.href="/dashboard"},1500)):setTimeout(()=>{window.location.href="/login"},1500);return}await p(M)}catch(m){console.error("Registration failed:",m),await p(M)}finally{s(2,g=!1)}},p=async m=>{const S=await me.getErrorByActionId(m);S?s(4,f.svelte_internal_message=S,f):s(4,f.svelte_internal_message="An unexpected error occurred. Please try again.",f);const x=await me.getDetailedErrorByActionId(m);x?s(3,N=x):s(4,f.svelte_internal_message="An unexpected error occurred. Please try again.",f)};let b=!1,k=!1,g=!1,T,M,N,{hl:U=""}=e,{sitekey:G=$e.get().hcaptcha}=e,{apihost:z=$e.get().hcaptcha_api}=e,{reCaptchaCompat:_=!0}=e,{theme:q=vt.DARK}=e,{size:R="compact"}=e,f={email:"",password:"",confirm:"",username:"",captchaToken:"",svelte_internal_message:"",successful_message:""};const le=new URLSearchParams({recaptchacompat:_?"on":"off",onload:"hcaptchaOnLoad",render:"explicit"}),Z=`${z}?${le.toString()}`,E=Math.floor(Math.random()*100);mt(()=>{bt({elementIdOrName:"skeleton_login_loader",duration:500}),document.getElementById("astro_error_message")&&document.getElementById("astro_error_message");const m=document.getElementById("formulation_form");m&&setTimeout(()=>{m.classList.replace("opacity-0","opacity-100")},200);const S=document.getElementById("registerForm");S&&setTimeout(()=>{S.classList.replace("opacity-0","opacity-100")},500),window.hcaptchaOnLoad=()=>{a("load"),s(15,k=!0)},window.onSuccess=x=>{a("success",{token:x}),s(4,f.captchaToken=x,f)},window.onError=()=>{a("error")},window.onClose=()=>{a("close")},window.onExpired=()=>{a("expired"),u()},a("mount"),s(1,b=!0)}),ht(()=>{window.hcaptchaOnLoad=null,window.onSuccess=null,k&&(hcaptcha=null)});function ie(){f.username=this.value,s(4,f)}function W(){f.email=this.value,s(4,f)}function O(){f.password=this.value,s(4,f)}function he(){f.confirm=this.value,s(4,f)}return d.$$set=m=>{"hl"in m&&s(9,U=m.hl),"sitekey"in m&&s(10,G=m.sitekey),"apihost"in m&&s(11,z=m.apihost),"reCaptchaCompat"in m&&s(12,_=m.reCaptchaCompat),"theme"in m&&s(13,q=m.theme),"size"in m&&s(14,R=m.size)},d.$$.update=()=>{d.$$.dirty&58882&&b&&k&&(T=hcaptcha.render(`h-captcha-${E}`,{sitekey:G,hl:U,theme:q,callback:"onSuccess","error-callback":"onError","close-callback":"onClose","expired-callback":"onExpired",size:R}))},[n,b,g,N,f,Z,E,u,h,U,G,z,_,q,R,k,ie,W,O,he]}class Ut extends it{constructor(e){super(),nt(this,e,Tt,xt,ot,{reset:7,execute:8,handleRegister:0,hl:9,sitekey:10,apihost:11,reCaptchaCompat:12,theme:13,size:14})}get reset(){return this.$$.ctx[7]}get execute(){return this.$$.ctx[8]}get handleRegister(){return this.$$.ctx[0]}}export{Ut as default};
+import{S as it,i as nt,s as ot,e as Ze,a as w,b as l,t as Ee,h as dt,d as o,c as y,f as i,g as v,j as K,k as Ce,l as t,m as ue,n as at,o as r,p as X,q as Q,r as fe,u as ct,v as Ie,w as ke,x as ut,y as ft,z as mt,A as ht}from"./index.BL2D2LL-.js";import{g as pt}from"./globals.D0QH3NT1.js";import{C as vt,r as bt}from"./loader.Cx4kMRI2.js";import{K as $e,k as me}from"./npchandler.6lM6j_9q.js";import"./jsx-runtime.CzgMDNMm.js";import"./index.DQ2WTIsS.js";import"./preload-helper.ygWHROA3.js";import"./index.CFX5TIQh.js";import"./index.BH1EYZ08.js";const{document:Re}=pt;function et(d){let e,s;return{c(){e=l("script"),this.h()},l(a){e=i(a,"SCRIPT",{src:!0});var u=v(e);u.forEach(o),this.h()},h(){at(e.src,s=d[5])||t(e,"src",s),e.async=!0,e.defer=!0},m(a,u){X(a,e,u)},p:ke,d(a){a&&o(e)}}}function tt(d){let e,s='';return{c(){e=l("div"),e.innerHTML=s,this.h()},l(a){e=i(a,"DIV",{class:!0,role:!0,tabindex:!0,"aria-labelledby":!0,"data-svelte-h":!0}),K(e)!=="svelte-xpal3g"&&(e.innerHTML=s),this.h()},h(){t(e,"class","max-w-xs bg-white border border-gray-200 rounded-xl shadow-lg dark:bg-neutral-800 dark:border-neutral-700 z-100"),t(e,"role","alert"),t(e,"tabindex","-1"),t(e,"aria-labelledby","hs-toast-normal-example-label")},m(a,u){X(a,e,u)},d(a){a&&o(e)}}}function st(d){let e,s,a,u='',h,n,p,b=d[4].svelte_internal_message+"",k;return{c(){e=l("div"),s=l("div"),a=l("div"),a.innerHTML=u,h=w(),n=l("div"),p=l("p"),k=Ee(b),this.h()},l(g){e=i(g,"DIV",{class:!0,role:!0,tabindex:!0,"aria-labelledby":!0});var T=v(e);s=i(T,"DIV",{class:!0});var M=v(s);a=i(M,"DIV",{class:!0,"data-svelte-h":!0}),K(a)!=="svelte-mnfjrn"&&(a.innerHTML=u),h=y(M),n=i(M,"DIV",{class:!0});var N=v(n);p=i(N,"P",{id:!0,class:!0});var U=v(p);k=Ce(U,b),U.forEach(o),N.forEach(o),M.forEach(o),T.forEach(o),this.h()},h(){t(a,"class","shrink-0"),t(p,"id","hs-toast-error-example-label"),t(p,"class","text-sm text-gray-700 dark:text-neutral-400"),t(n,"class","ms-3"),t(s,"class","flex p-4"),t(e,"class","max-w-xs bg-white border border-gray-200 rounded-xl shadow-lg dark:bg-neutral-800 dark:border-neutral-700 z-100"),t(e,"role","alert"),t(e,"tabindex","-1"),t(e,"aria-labelledby","hs-toast-error-example-label")},m(g,T){X(g,e,T),r(e,s),r(s,a),r(s,h),r(s,n),r(n,p),r(p,k)},p(g,T){T&16&&b!==(b=g[4].svelte_internal_message+"")&&Ie(k,b)},d(g){g&&o(e)}}}function rt(d){let e,s,a=d[4].successful_message+"",u;return{c(){e=l("div"),s=l("span"),u=Ee(a),this.h()},l(h){e=i(h,"DIV",{class:!0});var n=v(e);s=i(n,"SPAN",{class:!0});var p=v(s);u=Ce(p,a),p.forEach(o),n.forEach(o),this.h()},h(){t(s,"class","text-lg text-cyan-600 dark:text-cyan-300"),t(e,"class","flex")},m(h,n){X(h,e,n),r(e,s),r(s,u)},p(h,n){n&16&&a!==(a=h[4].successful_message+"")&&Ie(u,a)},d(h){h&&o(e)}}}function gt(d){let e,s=' Online';return{c(){e=l("div"),e.innerHTML=s,this.h()},l(a){e=i(a,"DIV",{class:!0,"data-svelte-h":!0}),K(e)!=="svelte-hfgq2j"&&(e.innerHTML=s),this.h()},h(){t(e,"class","inline-flex items-center")},m(a,u){X(a,e,u)},p:ke,d(a){a&&o(e)}}}function _t(d){let e,s,a=' ',u,h,n;return{c(){e=l("div"),s=l("span"),s.innerHTML=a,u=w(),h=l("div"),n=Ee(d[3]),this.h()},l(p){e=i(p,"DIV",{class:!0});var b=v(e);s=i(b,"SPAN",{class:!0,"data-svelte-h":!0}),K(s)!=="svelte-493u0u"&&(s.innerHTML=a),u=y(b),h=i(b,"DIV",{class:!0});var k=v(h);n=Ce(k,d[3]),k.forEach(o),b.forEach(o),this.h()},h(){t(s,"class","relative flex h-3 w-3"),t(h,"class","px-2 text-gray-600 dark:text-neutral-400 text-wrap w-1/2"),t(e,"class","inline-flex items-center")},m(p,b){X(p,e,b),r(e,s),r(e,u),r(e,h),r(h,n)},p(p,b){b&8&&Ie(n,p[3])},d(p){p&&o(e)}}}function xt(d){let e,s,a,u,h,n,p,b="Sign up",k,g,T="KBVE Authentication Portal",M,N,U,G,z,_,q,R,f="Username",le,Z,E,ie,W,O,he="Email Address",m,S,x,De,$,ee,He='',Le,ne,A,Te,te,se,Be='',Ve,oe,P,Me,de,ae,Se,Y,ce=d[2]?"Loading...":"Register",pe,ze,J,re,Ae,F,Ue,Pe,qe,I=d[1]&&!window?.hcaptcha&&et(d),V=d[2]&&tt(),D=d[4].svelte_internal_message&&st(d),L=d[4].successful_message&&rt(d);function je(c,C){return c[3]?_t:gt}let ve=je(d),j=ve(d);return{c(){I&&I.c(),e=Ze(),s=w(),a=l("div"),u=l("div"),h=l("div"),n=l("div"),p=l("h3"),p.textContent=b,k=w(),g=l("h1"),g.textContent=T,M=w(),V&&V.c(),N=w(),D&&D.c(),U=w(),L&&L.c(),G=w(),z=l("form"),_=l("div"),q=l("div"),R=l("label"),R.textContent=f,le=w(),Z=l("div"),E=l("input"),ie=w(),W=l("div"),O=l("label"),O.textContent=he,m=w(),S=l("div"),x=l("input"),De=w(),$=l("div"),ee=l("div"),ee.innerHTML=He,Le=w(),ne=l("div"),A=l("input"),Te=w(),te=l("div"),se=l("div"),se.innerHTML=Be,Ve=w(),oe=l("div"),P=l("input"),Me=w(),de=l("div"),ae=l("div"),Se=w(),Y=l("button"),pe=Ee(ce),ze=w(),J=l("div"),re=l("div"),j.c(),Ae=w(),F=l("dotlottie-player"),this.h()},l(c){const C=dt("svelte-1fvsnp3",Re.head);I&&I.l(C),e=Ze(),C.forEach(o),s=y(c),a=i(c,"DIV",{class:!0});var Ne=v(a);u=i(Ne,"DIV",{class:!0,id:!0});var Oe=v(u);h=i(Oe,"DIV",{class:!0});var be=v(h);n=i(be,"DIV",{class:!0});var H=v(n);p=i(H,"H3",{class:!0,"data-svelte-h":!0}),K(p)!=="svelte-12p1rd1"&&(p.textContent=b),k=y(H),g=i(H,"H1",{class:!0,"data-svelte-h":!0}),K(g)!=="svelte-4x0q1u"&&(g.textContent=T),M=y(H),V&&V.l(H),N=y(H),D&&D.l(H),U=y(H),L&&L.l(H),G=y(H),z=i(H,"FORM",{id:!0,class:!0,action:!0});var Fe=v(z);_=i(Fe,"DIV",{class:!0});var B=v(_);q=i(B,"DIV",{});var ge=v(q);R=i(ge,"LABEL",{for:!0,class:!0,"data-svelte-h":!0}),K(R)!=="svelte-1w0boxg"&&(R.textContent=f),le=y(ge),Z=i(ge,"DIV",{});var Ke=v(Z);E=i(Ke,"INPUT",{type:!0,id:!0,name:!0,autocomplete:!0,class:!0,"aria-describedby":!0}),Ke.forEach(o),ge.forEach(o),ie=y(B),W=i(B,"DIV",{});var _e=v(W);O=i(_e,"LABEL",{for:!0,class:!0,"data-svelte-h":!0}),K(O)!=="svelte-54c5ua"&&(O.textContent=he),m=y(_e),S=i(_e,"DIV",{});var We=v(S);x=i(We,"INPUT",{type:!0,id:!0,name:!0,autocomplete:!0,class:!0,"aria-describedby":!0}),We.forEach(o),_e.forEach(o),De=y(B),$=i(B,"DIV",{});var xe=v($);ee=i(xe,"DIV",{class:!0,"data-svelte-h":!0}),K(ee)!=="svelte-ghqbo6"&&(ee.innerHTML=He),Le=y(xe),ne=i(xe,"DIV",{});var Ye=v(ne);A=i(Ye,"INPUT",{type:!0,id:!0,name:!0,class:!0,"aria-describedby":!0}),Ye.forEach(o),xe.forEach(o),Te=y(B),te=i(B,"DIV",{});var we=v(te);se=i(we,"DIV",{class:!0,"data-svelte-h":!0}),K(se)!=="svelte-18n8n7b"&&(se.innerHTML=Be),Ve=y(we),oe=i(we,"DIV",{});var Ge=v(oe);P=i(Ge,"INPUT",{type:!0,id:!0,name:!0,class:!0,"aria-describedby":!0}),Ge.forEach(o),we.forEach(o),Me=y(B),de=i(B,"DIV",{});var Je=v(de);ae=i(Je,"DIV",{id:!0,class:!0}),v(ae).forEach(o),Je.forEach(o),Se=y(B),Y=i(B,"BUTTON",{type:!0,class:!0});var Qe=v(Y);pe=Ce(Qe,ce),Qe.forEach(o),B.forEach(o),Fe.forEach(o),H.forEach(o),ze=y(be),J=i(be,"DIV",{class:!0});var ye=v(J);re=i(ye,"DIV",{class:!0});var Xe=v(re);j.l(Xe),Xe.forEach(o),Ae=y(ye),F=i(ye,"DOTLOTTIE-PLAYER",{autoplay:!0,loop:!0,class:!0,mode:!0,src:!0});var lt=v(F);lt.forEach(o),ye.forEach(o),be.forEach(o),Oe.forEach(o),Ne.forEach(o),this.h()},h(){t(p,"class","text-blue-400 mb-1"),t(g,"class","page-title text-white font-bold text-3xl mb-5 lg:text-3xl xl:text-4xl 2xl:text-5xl"),t(R,"for","login-username"),t(R,"class","mb-1 block text-xs text-left md:text-sm md:mb-2 text-neutral-800 dark:text-neutral-200"),t(E,"type","text"),t(E,"id","register-username"),t(E,"name","username"),t(E,"autocomplete","username"),t(E,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),E.required=!0,t(E,"aria-describedby","register-username"),t(O,"for","register-email"),t(O,"class","mb-1 block text-xs text-left md:text-sm md:mb-2 text-neutral-800 dark:text-neutral-200"),t(x,"type","email"),t(x,"id","register-email"),t(x,"name","email"),t(x,"autocomplete","email"),t(x,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),x.required=!0,t(x,"aria-describedby","register-email"),t(ee,"class","flex items-center justify-between"),t(A,"type","password"),t(A,"id","register-password"),t(A,"name","password"),t(A,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),A.required=!0,t(A,"aria-describedby","register-password"),t(se,"class","flex items-center justify-between"),t(P,"type","password"),t(P,"id","confirm-register-password"),t(P,"name","password"),t(P,"class","block w-full h-4 md:h-12 rounded-lg border border-neutral-200 bg-neutral-50 px-4 py-3 text-sm text-neutral-700 focus:border-neutral-200 focus:outline-none focus:ring focus:ring-neutral-400 disabled:pointer-events-none disabled:opacity-50 dark:border-neutral-600 dark:bg-neutral-700/30 dark:text-neutral-300 dark:focus:ring-1"),P.required=!0,t(P,"aria-describedby","confirm-register-password"),t(ae,"id","h-captcha-"+d[6]),t(ae,"class","flex justify-center scale-75 md:scale-100"),t(Y,"type","submit"),t(Y,"class",`${yt} ${kt} ${Et} ${Ct} ${It} ${Dt} ${Lt}`),Y.disabled=d[2],t(_,"class","grid gap-y-2 md:gap-y-4"),t(z,"id","registerForm"),t(z,"class","opacity-0 transition-opacity duration-500"),t(z,"action","#"),t(n,"class","relative"),t(re,"class",""),ue(F,"autoplay",""),ue(F,"loop",""),ue(F,"class","hidden md:block md:w-full"),ue(F,"mode","normal"),at(F.src,Ue="/assets/lottie/"+wt)||ue(F,"src",Ue),t(J,"class","flex flex-col w-1/2"),t(h,"class","px-16 flex flex-row justify-center items-center lg:justify-between"),t(u,"class","py-16 opacity-0 transition-opacity duration-500"),t(u,"id","formulation_form"),t(a,"class","")},m(c,C){I&&I.m(Re.head,null),r(Re.head,e),X(c,s,C),X(c,a,C),r(a,u),r(u,h),r(h,n),r(n,p),r(n,k),r(n,g),r(n,M),V&&V.m(n,null),r(n,N),D&&D.m(n,null),r(n,U),L&&L.m(n,null),r(n,G),r(n,z),r(z,_),r(_,q),r(q,R),r(q,le),r(q,Z),r(Z,E),Q(E,d[4].username),r(_,ie),r(_,W),r(W,O),r(W,m),r(W,S),r(S,x),Q(x,d[4].email),r(_,De),r(_,$),r($,ee),r($,Le),r($,ne),r(ne,A),Q(A,d[4].password),r(_,Te),r(_,te),r(te,se),r(te,Ve),r(te,oe),r(oe,P),Q(P,d[4].confirm),r(_,Me),r(_,de),r(de,ae),r(_,Se),r(_,Y),r(Y,pe),r(h,ze),r(h,J),r(J,re),j.m(re,null),r(J,Ae),r(J,F),Pe||(qe=[fe(E,"input",d[16]),fe(x,"input",d[17]),fe(A,"input",d[18]),fe(P,"input",d[19]),fe(z,"submit",ct(d[0]))],Pe=!0)},p(c,[C]){c[1]&&!window?.hcaptcha?I?I.p(c,C):(I=et(c),I.c(),I.m(e.parentNode,e)):I&&(I.d(1),I=null),c[2]?V||(V=tt(),V.c(),V.m(n,N)):V&&(V.d(1),V=null),c[4].svelte_internal_message?D?D.p(c,C):(D=st(c),D.c(),D.m(n,U)):D&&(D.d(1),D=null),c[4].successful_message?L?L.p(c,C):(L=rt(c),L.c(),L.m(n,G)):L&&(L.d(1),L=null),C&16&&E.value!==c[4].username&&Q(E,c[4].username),C&16&&x.value!==c[4].email&&Q(x,c[4].email),C&16&&A.value!==c[4].password&&Q(A,c[4].password),C&16&&P.value!==c[4].confirm&&Q(P,c[4].confirm),C&4&&ce!==(ce=c[2]?"Loading...":"Register")&&Ie(pe,ce),C&4&&(Y.disabled=c[2]),ve===(ve=je(c))&&j?j.p(c,C):(j.d(1),j=ve(c),j&&(j.c(),j.m(re,null)))},i:ke,o:ke,d(c){c&&(o(s),o(a)),I&&I.d(c),o(e),V&&V.d(),D&&D.d(),L&&L.d(),j.d(),Pe=!1,ut(qe)}}}let wt="/robot.lottie";const yt="inline-flex w-full items-center justify-center gap-x-2 rounded-lg px-4 py-1 text-sm font-normal text-blue-400 focus-visible:ring outline-none transition duration-300 py-3",kt="border border-transparent",Et="bg-blue-100 dark:focus:outline-none",Ct="hover:bg-blue-400 hover:text-white",It="2xl:text-base",Dt="disabled:pointer-events-none disabled:opacity-50 disabled:animate-pulse",Lt="ring-zinc-500 dark:ring-zinc-200";function Tt(d,e,s){const a=ft(),u=()=>{s(2,g=!1),s(4,f.successful_message="",f),b&&k&&T&&hcaptcha.reset(T)},h=m=>{if(b&&k&&T)return hcaptcha.execute(T,m)},n=async()=>{if(s(2,g=!0),M=await me.createActionULID("registerUser"),!M){s(4,f.svelte_internal_message="Failed to create action!",f),u();return}try{const m=await me.registerUser(f.email,f.password,f.confirm,M,f.username,f.captchaToken);if(m){s(4,f.successful_message=`Welcome, ${m.username||m.email}! Registration successful. Redirecting in 2 Seconds`,f),console.log("User registered and profile saved:",m);const S=await me.getSession();S?(console.log("User is already logged in after registration:",S),setTimeout(()=>{window.location.href="/dashboard"},1500)):setTimeout(()=>{window.location.href="/login"},1500);return}await p(M)}catch(m){console.error("Registration failed:",m),await p(M)}finally{s(2,g=!1)}},p=async m=>{const S=await me.getErrorByActionId(m);S?s(4,f.svelte_internal_message=S,f):s(4,f.svelte_internal_message="An unexpected error occurred. Please try again.",f);const x=await me.getDetailedErrorByActionId(m);x?s(3,N=x):s(4,f.svelte_internal_message="An unexpected error occurred. Please try again.",f)};let b=!1,k=!1,g=!1,T,M,N,{hl:U=""}=e,{sitekey:G=$e.get().hcaptcha}=e,{apihost:z=$e.get().hcaptcha_api}=e,{reCaptchaCompat:_=!0}=e,{theme:q=vt.DARK}=e,{size:R="compact"}=e,f={email:"",password:"",confirm:"",username:"",captchaToken:"",svelte_internal_message:"",successful_message:""};const le=new URLSearchParams({recaptchacompat:_?"on":"off",onload:"hcaptchaOnLoad",render:"explicit"}),Z=`${z}?${le.toString()}`,E=Math.floor(Math.random()*100);mt(()=>{bt({elementIdOrName:"skeleton_login_loader",duration:500}),document.getElementById("astro_error_message")&&document.getElementById("astro_error_message");const m=document.getElementById("formulation_form");m&&setTimeout(()=>{m.classList.replace("opacity-0","opacity-100")},200);const S=document.getElementById("registerForm");S&&setTimeout(()=>{S.classList.replace("opacity-0","opacity-100")},500),window.hcaptchaOnLoad=()=>{a("load"),s(15,k=!0)},window.onSuccess=x=>{a("success",{token:x}),s(4,f.captchaToken=x,f)},window.onError=()=>{a("error")},window.onClose=()=>{a("close")},window.onExpired=()=>{a("expired"),u()},a("mount"),s(1,b=!0)}),ht(()=>{window.hcaptchaOnLoad=null,window.onSuccess=null,k&&(hcaptcha=null)});function ie(){f.username=this.value,s(4,f)}function W(){f.email=this.value,s(4,f)}function O(){f.password=this.value,s(4,f)}function he(){f.confirm=this.value,s(4,f)}return d.$$set=m=>{"hl"in m&&s(9,U=m.hl),"sitekey"in m&&s(10,G=m.sitekey),"apihost"in m&&s(11,z=m.apihost),"reCaptchaCompat"in m&&s(12,_=m.reCaptchaCompat),"theme"in m&&s(13,q=m.theme),"size"in m&&s(14,R=m.size)},d.$$.update=()=>{d.$$.dirty&58882&&b&&k&&(T=hcaptcha.render(`h-captcha-${E}`,{sitekey:G,hl:U,theme:q,callback:"onSuccess","error-callback":"onError","close-callback":"onClose","expired-callback":"onExpired",size:R}))},[n,b,g,N,f,Z,E,u,h,U,G,z,_,q,R,k,ie,W,O,he]}class Ut extends it{constructor(e){super(),nt(this,e,Tt,xt,ot,{reset:7,execute:8,handleRegister:0,hl:9,sitekey:10,apihost:11,reCaptchaCompat:12,theme:13,size:14})}get reset(){return this.$$.ctx[7]}get execute(){return this.$$.ctx[8]}get handleRegister(){return this.$$.ctx[0]}}export{Ut as default};
diff --git a/docs/_astro/about.Dfn5Se09.css b/docs/_astro/about.CQ9CBOwc.css
similarity index 55%
rename from docs/_astro/about.Dfn5Se09.css
rename to docs/_astro/about.CQ9CBOwc.css
index f7f84a5f7b..82b32208ab 100644
--- a/docs/_astro/about.Dfn5Se09.css
+++ b/docs/_astro/about.CQ9CBOwc.css
@@ -1 +1 @@
-*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}[type=text],input:where(:not([type])),[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}[type=text]:focus,input:where(:not([type])):focus,[type=email]:focus,[type=url]:focus,[type=password]:focus,[type=number]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=week]:focus,[multiple]:focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:hover,[type=checkbox]:checked:focus,[type=radio]:checked:hover,[type=radio]:checked:focus{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}@media (forced-colors: active){[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:hover,[type=checkbox]:indeterminate:focus{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;text-align:start;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>*:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>*:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>*:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>*:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-6{inset:1.5rem}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.\!left-\[20\%\]{left:20%!important}.\!top-\[78\%\]{top:78%!important}.\!top-\[98\%\]{top:98%!important}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-\[5\%\]{bottom:5%}.bottom-\[60px\]{bottom:60px}.bottom-full{bottom:100%}.end-0{inset-inline-end:0px}.end-2{inset-inline-end:.5rem}.end-2\.5{inset-inline-end:.625rem}.left-0{left:0}.left-1\/2{left:50%}.left-12{left:3rem}.left-4{left:1rem}.left-5{left:1.25rem}.left-\[60\%\]{left:60%}.left-\[85\%\]{left:85%}.right-0{right:0}.right-12{right:3rem}.right-4{right:1rem}.right-5{right:1.25rem}.start-0{inset-inline-start:0px}.start-1\/2{inset-inline-start:50%}.top-0{top:0}.top-1\/2{top:50%}.top-12{top:3rem}.top-2{top:.5rem}.top-2\.5{top:.625rem}.top-3{top:.75rem}.top-4{top:1rem}.top-\[55\%\]{top:55%}.top-full{top:100%}.isolate{isolation:isolate}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1000\]{z-index:1000}.order-first{order:-9999}.col-span-1{grid-column:span 1 / span 1}.col-span-2{grid-column:span 2 / span 2}.col-span-3{grid-column:span 3 / span 3}.col-span-full{grid-column:1 / -1}.row-span-1{grid-row:span 1 / span 1}.float-right{float:right}.-m-0{margin:-0px}.-m-0\.5{margin:-.125rem}.-m-1{margin:-.25rem}.-m-1\.5{margin:-.375rem}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:.75rem}.m-4{margin:1rem}.m-5{margin:1.25rem}.m-6{margin:1.5rem}.m-8{margin:2rem}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.-mx-1\.5{margin-left:-.375rem;margin-right:-.375rem}.-my-1{margin-top:-.25rem;margin-bottom:-.25rem}.-my-1\.5{margin-top:-.375rem;margin-bottom:-.375rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.-mb-1{margin-bottom:-.25rem}.-mb-8{margin-bottom:-2rem}.-ml-10{margin-left:-2.5rem}.-ml-12{margin-left:-3rem}.-ml-2{margin-left:-.5rem}.-ml-3{margin-left:-.75rem}.-mr-1{margin-right:-.25rem}.-mr-10{margin-right:-2.5rem}.-mr-3{margin-right:-.75rem}.-mr-5{margin-right:-1.25rem}.-mt-1{margin-top:-.25rem}.-mt-10{margin-top:-2.5rem}.-mt-12{margin-top:-3rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-20{margin-bottom:5rem}.mb-3{margin-bottom:.75rem}.mb-32{margin-bottom:8rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-9{margin-bottom:2.25rem}.me-2{margin-inline-end:.5rem}.me-2\.5{margin-inline-end:.625rem}.ml-0{margin-left:0}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-5{margin-left:1.25rem}.ml-9{margin-left:2.25rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-5{margin-right:1.25rem}.ms-1{margin-inline-start:.25rem}.ms-2{margin-inline-start:.5rem}.ms-2\.5{margin-inline-start:.625rem}.ms-3{margin-inline-start:.75rem}.ms-4{margin-inline-start:1rem}.ms-6{margin-inline-start:1.5rem}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-32{margin-top:8rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-9{margin-top:2.25rem}.box-border{box-sizing:border-box}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-\[3\/2\]{aspect-ratio:3/2}.aspect-\[5\/4\]{aspect-ratio:5/4}.aspect-video{aspect-ratio:16 / 9}.size-10{width:2.5rem;height:2.5rem}.size-20{width:5rem;height:5rem}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-\[46px\]{width:46px;height:46px}.size-full{width:100%;height:100%}.h-0{height:0px}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\/3{height:33.333333%}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-5\/6{height:83.333333%}.h-6{height:1.5rem}.h-60{height:15rem}.h-64{height:16rem}.h-72{height:18rem}.h-8{height:2rem}.h-80{height:20rem}.h-96{height:24rem}.h-\[1\.25rem\]{height:1.25rem}.h-\[20rem\]{height:20rem}.h-\[260vh\]{height:260vh}.h-\[32px\]{height:32px}.h-\[350px\]{height:350px}.h-\[48px\]{height:48px}.h-\[60\%\]{height:60%}.h-\[75vh\]{height:75vh}.h-\[calc\(100\%-1rem\)\]{height:calc(100% - 1rem)}.h-auto{height:auto}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.h-svh{height:100svh}.max-h-\[48px\]{max-height:48px}.max-h-full{max-height:100%}.min-h-\[150px\]{min-height:150px}.min-h-\[200px\]{min-height:200px}.min-h-\[6rem\]{min-height:6rem}.min-h-fit{min-height:-moz-fit-content;min-height:fit-content}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-0\.5{width:.125rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/5{width:40%}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-4\/12{width:33.333333%}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[1\.25rem\]{width:1.25rem}.w-\[15rem\]{width:15rem}.w-\[48px\]{width:48px}.w-\[600px\]{width:600px}.w-\[90\%\]{width:90%}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.\!min-w-full{min-width:100%!important}.min-w-0{min-width:0px}.min-w-60{min-width:15rem}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[300px\]{max-width:300px}.max-w-\[48px\]{max-width:48px}.max-w-\[85rem\]{max-width:85rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-prose{max-width:65ch}.max-w-screen-2xl{max-width:1536px}.max-w-screen-lg{max-width:1024px}.max-w-screen-md{max-width:768px}.max-w-screen-sm{max-width:640px}.max-w-screen-xl{max-width:1280px}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.basis-full{flex-basis:100%}.origin-bottom-left{transform-origin:bottom left}.origin-center{transform-origin:center}.origin-top-left{transform-origin:top left}.origin-top-right{transform-origin:top right}.-translate-x-1{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-12{--tw-translate-x: -3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-2{--tw-translate-x: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-20{--tw-translate-x: -5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-24{--tw-translate-x: -6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-56{--tw-translate-x: -14rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-6{--tw-translate-x: -1.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-8{--tw-translate-x: -2rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-12{--tw-translate-y: -3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-2{--tw-translate-y: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-24{--tw-translate-y: -6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-6{--tw-translate-y: -1.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-8{--tw-translate-y: -2rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\/2{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-10{--tw-translate-x: 2.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-12{--tw-translate-x: 3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-24{--tw-translate-x: 6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-10{--tw-translate-y: 2.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-12{--tw-translate-y: 3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-8{--tw-translate-y: 2rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-12{--tw-rotate: -12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-45{--tw-rotate: -45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-12{--tw-rotate: 12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-\[-40deg\]{--tw-rotate: -40deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-skew-x-12{--tw-skew-x: -12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.skew-x-12{--tw-skew-x: 12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-75{--tw-scale-x: .75;--tw-scale-y: .75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-90{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\[\.6\]{--tw-scale-x: .6;--tw-scale-y: .6;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\!transform-none{transform:none!important}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.resize{resize:both}.scroll-pt-16{scroll-padding-top:4rem}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.place-content-center{place-content:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-items-center{justify-items:center}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-0{-moz-column-gap:0px;column-gap:0px}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-16{-moz-column-gap:4rem;column-gap:4rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-3\.5{-moz-column-gap:.875rem;column-gap:.875rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-x-7{-moz-column-gap:1.75rem;column-gap:1.75rem}.gap-y-0{row-gap:0px}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-4{row-gap:1rem}.gap-y-5{row-gap:1.25rem}.gap-y-px{row-gap:1px}.-space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.25rem * var(--tw-space-x-reverse));margin-left:calc(-.25rem * calc(1 - var(--tw-space-x-reverse)))}.-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.75rem * var(--tw-space-x-reverse));margin-left:calc(-.75rem * calc(1 - var(--tw-space-x-reverse)))}.-space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(-.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(-.25rem * var(--tw-space-y-reverse))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-10>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2.5rem * var(--tw-space-x-reverse));margin-left:calc(2.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-20>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(5rem * var(--tw-space-x-reverse));margin-left:calc(5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(3rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.space-x-reverse>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 1}.divide-x-2>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(2px * var(--tw-divide-x-reverse));border-left-width:calc(2px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-y-2>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(2px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(2px * var(--tw-divide-y-reverse))}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(243 244 246 / var(--tw-divide-opacity))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))}.divide-neutral-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 229 229 / var(--tw-divide-opacity))}.divide-neutral-300>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(212 212 212 / var(--tw-divide-opacity))}.divide-zinc-600>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(82 82 91 / var(--tw-divide-opacity))}.self-auto{align-self:auto}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.overflow-clip{overflow:clip}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.overflow-y-scroll{overflow-y:scroll}.overscroll-contain{overscroll-behavior:contain}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.text-wrap{text-wrap:wrap}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[36px\]{border-radius:36px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-xl{border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-e-lg{border-start-end-radius:.5rem;border-end-end-radius:.5rem}.rounded-s-lg{border-start-start-radius:.5rem;border-end-start-radius:.5rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.rounded-tl{border-top-left-radius:.25rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[3px\]{border-width:3px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-e{border-inline-end-width:1px}.border-l-2{border-left-width:2px}.border-s{border-inline-start-width:1px}.border-s-2{border-inline-start-width:2px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity))}.border-black\/\[0\.1\]{border-color:#0000001a}.border-current{border-color:currentColor}.border-cyan-200{--tw-border-opacity: 1;border-color:rgb(165 243 252 / var(--tw-border-opacity))}.border-cyan-300{--tw-border-opacity: 1;border-color:rgb(103 232 249 / var(--tw-border-opacity))}.border-cyan-500{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity))}.border-cyan-600{--tw-border-opacity: 1;border-color:rgb(8 145 178 / var(--tw-border-opacity))}.border-cyan-700{--tw-border-opacity: 1;border-color:rgb(14 116 144 / var(--tw-border-opacity))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity))}.border-neutral-200{--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity))}.border-neutral-400{--tw-border-opacity: 1;border-color:rgb(163 163 163 / var(--tw-border-opacity))}.border-neutral-50{--tw-border-opacity: 1;border-color:rgb(250 250 250 / var(--tw-border-opacity))}.border-orange-300{--tw-border-opacity: 1;border-color:rgb(251 113 59 / var(--tw-border-opacity))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.border-yellow-100\/40{border-color:#fef9c366}.border-zinc-900{--tw-border-opacity: 1;border-color:rgb(24 24 27 / var(--tw-border-opacity))}.border-s-cyan-300{--tw-border-opacity: 1;border-inline-start-color:rgb(103 232 249 / var(--tw-border-opacity))}.border-t-transparent{border-top-color:transparent}.border-opacity-30{--tw-border-opacity: .3}.bg-\[var\(--sl-color-black\)\]{background-color:var(--sl-color-black)}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(31 66 72 / var(--tw-bg-opacity))}.bg-cyan-100{--tw-bg-opacity: 1;background-color:rgb(207 250 254 / var(--tw-bg-opacity))}.bg-cyan-100\/\[\.35\]{background-color:#cffafe59}.bg-cyan-200{--tw-bg-opacity: 1;background-color:rgb(165 243 252 / var(--tw-bg-opacity))}.bg-cyan-300{--tw-bg-opacity: 1;background-color:rgb(103 232 249 / var(--tw-bg-opacity))}.bg-cyan-400{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.bg-cyan-400\/\[\.25\]{background-color:#22d3ee40}.bg-cyan-50{--tw-bg-opacity: 1;background-color:rgb(236 254 255 / var(--tw-bg-opacity))}.bg-cyan-500{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.bg-cyan-500\/\[\.30\]{background-color:#06b6d44d}.bg-cyan-600{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.bg-cyan-700{--tw-bg-opacity: 1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))}.bg-default{background-color:var(--color-background)}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.bg-gray-500\/30{background-color:#6b72804d}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.bg-gray-900\/\[\.45\]{background-color:#11182773}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(99 102 241 / var(--tw-bg-opacity))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity))}.bg-kbve-menu-bg{--tw-bg-opacity: 1;background-color:rgb(9 9 11 / var(--tw-bg-opacity))}.bg-kbve-menu-primary{--tw-bg-opacity: 1;background-color:rgb(39 39 42 / var(--tw-bg-opacity))}.bg-kbve-svg-primary{--tw-bg-opacity: 1;background-color:rgb(145 255 255 / var(--tw-bg-opacity))}.bg-neutral-100{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity))}.bg-neutral-200{--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity))}.bg-neutral-300{--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity))}.bg-neutral-300\/30{background-color:#d4d4d44d}.bg-neutral-400\/30{background-color:#a3a3a34d}.bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity))}.bg-neutral-800{--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.bg-offset{--tw-bg-opacity: 1;background-color:rgb(35 38 45 / var(--tw-bg-opacity))}.bg-offset\/\[\.75\]{background-color:#23262dbf}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity))}.bg-orange-200{--tw-bg-opacity: 1;background-color:rgb(254 215 170 / var(--tw-bg-opacity))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(225 77 11 / var(--tw-bg-opacity))}.bg-orange-600{--tw-bg-opacity: 1;background-color:rgb(234 88 12 / var(--tw-bg-opacity))}.bg-red-200{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-red-700{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-yellow-400{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity))}.bg-yellow-50\/60{background-color:#fefce899}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity))}.bg-zinc-800{--tw-bg-opacity: 1;background-color:rgb(39 39 42 / var(--tw-bg-opacity))}.bg-zinc-900{--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity))}.bg-zinc-900\/\[\.20\]{background-color:#18181b33}.bg-zinc-950{--tw-bg-opacity: 1;background-color:rgb(9 9 11 / var(--tw-bg-opacity))}.bg-opacity-10{--tw-bg-opacity: .1}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-75{--tw-bg-opacity: .75}.bg-opacity-80{--tw-bg-opacity: .8}.bg-\[radial-gradient\(ellipse_at_top_left\,_var\(--tw-gradient-stops\)\)\]{background-image:radial-gradient(ellipse at top left,var(--tw-gradient-stops))}.bg-\[url\(\'\/banner-pattern\.svg\'\)\]{background-image:url(/banner-pattern.svg)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-l{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.bg-gradient-to-tl{background-image:linear-gradient(to top left,var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.from-\[\#ff8a05\]{--tw-gradient-from: #ff8a05 var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 138 5 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-200{--tw-gradient-from: #a5f3fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(165 243 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-300{--tw-gradient-from: #67e8f9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(103 232 249 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-400{--tw-gradient-from: #22d3ee var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 211 238 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-50{--tw-gradient-from: #ecfeff var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 254 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-600{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-700{--tw-gradient-from: #0e7490 var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 116 144 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-neutral-200{--tw-gradient-from: #e5e5e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(229 229 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-neutral-400{--tw-gradient-from: #a3a3a3 var(--tw-gradient-from-position);--tw-gradient-to: rgb(163 163 163 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-neutral-800{--tw-gradient-from: #262626 var(--tw-gradient-from-position);--tw-gradient-to: rgb(38 38 38 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-400\/30{--tw-gradient-from: rgb(250 90 21 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(250 90 21 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-600{--tw-gradient-from: #dc2626 var(--tw-gradient-from-position);--tw-gradient-to: rgb(220 38 38 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white{--tw-gradient-from: #ffffff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from: #eab308 var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-\[\#ff5478\]{--tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-200{--tw-gradient-to: rgb(199 210 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #c7d2fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-500{--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #6366f1 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-red-500{--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #ef4444 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-transparent{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-\[\#ff00c6\]{--tw-gradient-to: #ff00c6 var(--tw-gradient-to-position)}.to-cyan-200{--tw-gradient-to: #a5f3fc var(--tw-gradient-to-position)}.to-cyan-400{--tw-gradient-to: #22d3ee var(--tw-gradient-to-position)}.to-cyan-500{--tw-gradient-to: #06b6d4 var(--tw-gradient-to-position)}.to-cyan-600{--tw-gradient-to: #0891b2 var(--tw-gradient-to-position)}.to-cyan-700{--tw-gradient-to: #0e7490 var(--tw-gradient-to-position)}.to-gray-50{--tw-gradient-to: #f9fafb var(--tw-gradient-to-position)}.to-gray-700{--tw-gradient-to: #374151 var(--tw-gradient-to-position)}.to-neutral-100{--tw-gradient-to: #f5f5f5 var(--tw-gradient-to-position)}.to-neutral-200{--tw-gradient-to: #e5e5e5 var(--tw-gradient-to-position)}.to-orange-400{--tw-gradient-to: #fa5a15 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-yellow-400{--tw-gradient-to: #facc15 var(--tw-gradient-to-position)}.to-yellow-50{--tw-gradient-to: #fefce8 var(--tw-gradient-to-position)}.to-yellow-500{--tw-gradient-to: #eab308 var(--tw-gradient-to-position)}.bg-cover{background-size:cover}.bg-fixed{background-attachment:fixed}.bg-clip-border{background-clip:border-box}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-center{background-position:center}.bg-no-repeat{background-repeat:no-repeat}.fill-black{fill:#000}.fill-current{fill:currentColor}.fill-cyan-400{fill:#22d3ee}.fill-neutral-700{fill:#404040}.fill-none{fill:none}.fill-red-500{fill:#ef4444}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.object-left-top{-o-object-position:left top;object-position:left top}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-20{padding:5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[300px\]{padding:300px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-12{padding-left:3rem;padding-right:3rem}.px-16{padding-left:4rem;padding-right:4rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-36{padding-top:9rem;padding-bottom:9rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0{padding-bottom:0}.pb-0\.5{padding-bottom:.125rem}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-24{padding-bottom:6rem}.pb-3{padding-bottom:.75rem}.pb-5{padding-bottom:1.25rem}.pe-3{padding-inline-end:.75rem}.pe-6{padding-inline-end:1.5rem}.pl-0{padding-left:0}.pl-11{padding-left:2.75rem}.pl-2{padding-left:.5rem}.pl-2\.5{padding-left:.625rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pr-12{padding-right:3rem}.pr-4{padding-right:1rem}.pr-5{padding-right:1.25rem}.ps-2{padding-inline-start:.5rem}.pt-10{padding-top:2.5rem}.pt-16{padding-top:4rem}.pt-2{padding-top:.5rem}.pt-24{padding-top:6rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-\[50\%\]{padding-top:50%}.text-left{text-align:left}.text-center{text-align:center}.text-start{text-align:start}.text-end{text-align:end}.indent-10{text-indent:2.5rem}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-7xl{font-size:4.5rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.not-italic{font-style:normal}.leading-10{line-height:2.5rem}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.tracking-wider{letter-spacing:.05em}.\!text-white{--tw-text-opacity: 1 !important;color:rgb(255 255 255 / var(--tw-text-opacity))!important}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity))}.text-cyan-100{--tw-text-opacity: 1;color:rgb(207 250 254 / var(--tw-text-opacity))}.text-cyan-200{--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.text-cyan-500{--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity))}.text-cyan-700{--tw-text-opacity: 1;color:rgb(14 116 144 / var(--tw-text-opacity))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.text-indigo-200{--tw-text-opacity: 1;color:rgb(199 210 254 / var(--tw-text-opacity))}.text-indigo-300{--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity))}.text-kbve-primary-light{--tw-text-opacity: 1;color:rgb(72 187 120 / var(--tw-text-opacity))}.text-kbve-svg-primary,.text-kbve-text-primary{--tw-text-opacity: 1;color:rgb(145 255 255 / var(--tw-text-opacity))}.text-kbve-text-secondary{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-neutral-100{--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity))}.text-neutral-200{--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}.text-neutral-300{--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.text-neutral-400{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.text-neutral-50{--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity))}.text-neutral-50\/\[\.8\]{color:#fafafacc}.text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}.text-neutral-700{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.text-neutral-800{--tw-text-opacity: 1;color:rgb(38 38 38 / var(--tw-text-opacity))}.text-orange-400{--tw-text-opacity: 1;color:rgb(250 90 21 / var(--tw-text-opacity))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.text-zinc-200{--tw-text-opacity: 1;color:rgb(228 228 231 / var(--tw-text-opacity))}.text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity))}.text-zinc-600{--tw-text-opacity: 1;color:rgb(82 82 91 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.decoration-2{text-decoration-thickness:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-5{opacity:.05}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-\[3\%\]{opacity:3%}.bg-blend-multiply{background-blend-mode:multiply}.bg-blend-overlay{background-blend-mode:overlay}.bg-blend-darken{background-blend-mode:darken}.mix-blend-screen{mix-blend-mode:screen}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/10{--tw-shadow-color: rgb(0 0 0 / .1);--tw-shadow: var(--tw-shadow-colored)}.shadow-neutral-200{--tw-shadow-color: #e5e5e5;--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-cyan-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(103 232 249 / var(--tw-ring-opacity))}.ring-indigo-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(165 180 252 / var(--tw-ring-opacity))}.ring-neutral-50{--tw-ring-opacity: 1;--tw-ring-color: rgb(250 250 250 / var(--tw-ring-opacity))}.ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity))}.ring-zinc-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(113 113 122 / var(--tw-ring-opacity))}.ring-offset-2{--tw-ring-offset-width: 2px}.ring-offset-indigo-200{--tw-ring-offset-color: #c7d2fe}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-md{--tw-blur: blur(12px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-sm{--tw-blur: blur(4px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-xl{--tw-blur: blur(24px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-lg{--tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / .04)) drop-shadow(0 4px 3px rgb(0 0 0 / .1));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-brightness-75{--tw-backdrop-brightness: brightness(.75);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[height\]{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[opacity\,margin\]{transition-property:opacity,margin;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.delay-100{transition-delay:.1s}.delay-200{transition-delay:.2s}.delay-300{transition-delay:.3s}.duration-100{transition-duration:.1s}.duration-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.duration-75{transition-duration:75ms}.duration-\[600ms\]{transition-duration:.6s}.ease-\[cubic-bezier\(0\.45\,0\,0\.55\,1\)\]{transition-timing-function:cubic-bezier(.45,0,.55,1)}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.comic{display:grid;grid-template-columns:1fr 6fr 4fr 9fr 6fr repeat(2,1fr);grid-template-rows:16px 2.35fr 1fr .5fr .3fr 1fr 1fr .35fr .45fr 1.25fr;margin:0 auto}.\[--auto-close\:inside\]{--auto-close: inside}.\[--placement\:bottom\]{--placement: bottom}.\[--placement\:top-left\]{--placement: top-left}.\[--trigger\:hover\]{--trigger: hover}.\[astro\:content-imports\]{astro:content-imports}.\[perspective\:1000px\]{perspective:1000px}.\[transform-style\:preserve-3d\]{transform-style:preserve-3d}.selection\:bg-cyan-400 *::-moz-selection{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.selection\:bg-cyan-400 *::selection{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.selection\:text-neutral-700 *::-moz-selection{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.selection\:text-neutral-700 *::selection{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.selection\:bg-cyan-400::-moz-selection{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.selection\:bg-cyan-400::selection{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.selection\:text-neutral-700::-moz-selection{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.selection\:text-neutral-700::selection{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.placeholder\:text-neutral-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.placeholder\:text-neutral-500::placeholder{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-x-0:before{content:var(--tw-content);left:0;right:0}.before\:-top-4:before{content:var(--tw-content);top:-1rem}.before\:end-2:before{content:var(--tw-content);inset-inline-end:.5rem}.before\:start-0:before{content:var(--tw-content);inset-inline-start:0px}.before\:start-1\/2:before{content:var(--tw-content);inset-inline-start:50%}.before\:top-0:before{content:var(--tw-content);top:0}.before\:top-1\/2:before{content:var(--tw-content);top:50%}.before\:-z-\[1\]:before{content:var(--tw-content);z-index:-1}.before\:z-\[1\]:before{content:var(--tw-content);z-index:1}.before\:me-6:before{content:var(--tw-content);margin-inline-end:1.5rem}.before\:size-1:before{content:var(--tw-content);width:.25rem;height:.25rem}.before\:size-full:before{content:var(--tw-content);width:100%;height:100%}.before\:h-4:before{content:var(--tw-content);height:1rem}.before\:w-full:before{content:var(--tw-content);width:100%}.before\:flex-\[1_1_0\%\]:before{content:var(--tw-content);flex:1 1 0%}.before\:-translate-x-1\/2:before{content:var(--tw-content);--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.before\:-translate-y-1\/2:before{content:var(--tw-content);--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.before\:transform:before{content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.before\:rounded-full:before{content:var(--tw-content);border-radius:9999px}.before\:border-t:before{content:var(--tw-content);border-top-width:1px}.before\:border-neutral-200:before{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity))}.before\:bg-neutral-300:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity))}.before\:bg-\[url\(\'https\:\/\/preline\.co\/assets\/svg\/examples\/squared-bg-element\.svg\'\)\]:before{content:var(--tw-content);background-image:url(https://preline.co/assets/svg/examples/squared-bg-element.svg)}.before\:bg-gradient-to-t:before{content:var(--tw-content);background-image:linear-gradient(to top,var(--tw-gradient-stops))}.before\:from-neutral-900\/\[\.7\]:before{content:var(--tw-content);--tw-gradient-from: rgb(23 23 23 / .7) var(--tw-gradient-from-position);--tw-gradient-to: rgb(23 23 23 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.before\:bg-top:before{content:var(--tw-content);background-position:top}.before\:bg-no-repeat:before{content:var(--tw-content);background-repeat:no-repeat}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:0}.after\:inset-2:after{content:var(--tw-content);inset:.5rem}.after\:inset-2\.5:after{content:var(--tw-content);inset:.625rem}.after\:-bottom-4:after{content:var(--tw-content);bottom:-1rem}.after\:start-0:after{content:var(--tw-content);inset-inline-start:0px}.after\:start-\[2px\]:after{content:var(--tw-content);inset-inline-start:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:ms-6:after{content:var(--tw-content);margin-inline-start:1.5rem}.after\:h-4:after{content:var(--tw-content);height:1rem}.after\:w-4:after{content:var(--tw-content);width:1rem}.after\:w-full:after{content:var(--tw-content);width:100%}.after\:flex-\[1_1_0\%\]:after{content:var(--tw-content);flex:1 1 0%}.after\:transform-gpu:after{content:var(--tw-content);transform:translate3d(var(--tw-translate-x),var(--tw-translate-y),0) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:rounded-xl:after{content:var(--tw-content);border-radius:.75rem}.after\:border:after{content:var(--tw-content);border-width:1px}.after\:border-t:after{content:var(--tw-content);border-top-width:1px}.after\:border-gray-300:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.after\:border-neutral-200:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity))}.after\:bg-cyan-600:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.after\:bg-white:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.after\:bg-gradient-to-b:after{content:var(--tw-content);background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.after\:from-neutral-100:after{content:var(--tw-content);--tw-gradient-from: #f5f5f5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 245 245 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.after\:to-neutral-50:after{content:var(--tw-content);--tw-gradient-to: #fafafa var(--tw-gradient-to-position)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:mix-blend-color:after{content:var(--tw-content);mix-blend-mode:color}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:content-\[\'\'\]:after{--tw-content: "";content:var(--tw-content)}.first\:pt-0:first-child{padding-top:0}.last\:pb-0:last-child{padding-bottom:0}.last\:pe-0:last-child{padding-inline-end:0px}.last-of-type\:before\:hidden:last-of-type:before{content:var(--tw-content);display:none}.hover\:rotate-12:hover{--tw-rotate: 12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-2:hover{--tw-rotate: 2deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[3\]:hover{--tw-scale-x: 3;--tw-scale-y: 3;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-double:hover{border-style:double}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.hover\:border-neutral-100\/70:hover{border-color:#f5f5f5b3}.hover\:border-transparent:hover{border-color:transparent}.hover\:border-yellow-500:hover{--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity))}.hover\:border-opacity-100:hover{--tw-border-opacity: 1}.hover\:bg-blue-400:hover{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.hover\:bg-cyan-200:hover{--tw-bg-opacity: 1;background-color:rgb(165 243 252 / var(--tw-bg-opacity))}.hover\:bg-cyan-300:hover{--tw-bg-opacity: 1;background-color:rgb(103 232 249 / var(--tw-bg-opacity))}.hover\:bg-cyan-400:hover{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.hover\:bg-cyan-500:hover{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.hover\:bg-cyan-600:hover{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.hover\:bg-cyan-700:hover{--tw-bg-opacity: 1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))}.hover\:bg-cyan-800:hover{--tw-bg-opacity: 1;background-color:rgb(21 94 117 / var(--tw-bg-opacity))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.hover\:bg-indigo-600:hover{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity))}.hover\:bg-neutral-100:hover{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity))}.hover\:bg-neutral-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity))}.hover\:bg-neutral-400\/30:hover{background-color:#a3a3a34d}.hover\:bg-neutral-400\/50:hover{background-color:#a3a3a380}.hover\:bg-neutral-500\/10:hover{background-color:#7373731a}.hover\:bg-offset:hover{--tw-bg-opacity: 1;background-color:rgb(35 38 45 / var(--tw-bg-opacity))}.hover\:bg-transparent:hover{background-color:transparent}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.hover\:bg-yellow-500:hover{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity))}.hover\:bg-zinc-600:hover{--tw-bg-opacity: 1;background-color:rgb(82 82 91 / var(--tw-bg-opacity))}.hover\:bg-zinc-900:hover{--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity))}.hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.hover\:bg-opacity-30:hover{--tw-bg-opacity: .3}.hover\:bg-opacity-50:hover{--tw-bg-opacity: .5}.hover\:bg-gradient-to-r:hover{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.hover\:from-cyan-500:hover{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-gray-50:hover{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-yellow-50:hover{--tw-gradient-from: #fefce8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(254 252 232 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:via-indigo-300:hover{--tw-gradient-to: rgb(165 180 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #a5b4fc var(--tw-gradient-via-position), var(--tw-gradient-to)}.hover\:to-cyan-400:hover{--tw-gradient-to: #22d3ee var(--tw-gradient-to-position)}.hover\:to-cyan-50:hover{--tw-gradient-to: #ecfeff var(--tw-gradient-to-position)}.hover\:to-white:hover{--tw-gradient-to: #ffffff var(--tw-gradient-to-position)}.hover\:pl-10:hover{padding-left:2.5rem}.hover\:pr-6:hover{padding-right:1.5rem}.hover\:text-cyan-200:hover{--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.hover\:text-cyan-400:hover{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.hover\:text-cyan-500:hover{--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.hover\:text-neutral-50\/70:hover{color:#fafafab3}.hover\:text-neutral-500:hover{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.hover\:text-neutral-600:hover{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}.hover\:text-neutral-700:hover{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.hover\:text-zinc-800:hover{--tw-text-opacity: 1;color:rgb(39 39 42 / var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:no-underline:hover{text-decoration-line:none}.hover\:shadow-2xl:hover{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-yellow-500:hover{--tw-shadow-color: #eab308;--tw-shadow: var(--tw-shadow-colored)}.hover\:ring-1:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:ring-2:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:ring-cyan-400:hover{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 211 238 / var(--tw-ring-opacity))}.hover\:ring-cyan-500:hover{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity))}.hover\:ring-offset-2:hover{--tw-ring-offset-width: 2px}.hover\:ring-offset-indigo-500:hover{--tw-ring-offset-color: #6366f1}.hover\:backdrop-brightness-125:hover{--tw-backdrop-brightness: brightness(1.25);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.focus\:z-10:focus{z-index:10}.focus\:border-cyan-400:focus{--tw-border-opacity: 1;border-color:rgb(34 211 238 / var(--tw-border-opacity))}.focus\:border-cyan-500:focus{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity))}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity))}.focus\:border-neutral-200:focus{--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity))}.focus\:bg-gray-100:focus{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.focus\:bg-neutral-100:focus{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity))}.focus\:ring-cyan-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(207 250 254 / var(--tw-ring-opacity))}.focus\:ring-cyan-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(103 232 249 / var(--tw-ring-opacity))}.focus\:ring-cyan-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 211 238 / var(--tw-ring-opacity))}.focus\:ring-cyan-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity))}.focus\:ring-cyan-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(8 145 178 / var(--tw-ring-opacity))}.focus\:ring-gray-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(243 244 246 / var(--tw-ring-opacity))}.focus\:ring-indigo-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity))}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity))}.focus\:ring-kbve:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(140 82 255 / var(--tw-ring-opacity))}.focus\:ring-neutral-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(163 163 163 / var(--tw-ring-opacity))}.focus\:ring-yellow-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(250 204 21 / var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus\:ring-offset-white:focus{--tw-ring-offset-color: #ffffff}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-zinc-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(113 113 122 / var(--tw-ring-opacity))}.active\:border-cyan-600:active{--tw-border-opacity: 1;border-color:rgb(8 145 178 / var(--tw-border-opacity))}.active\:bg-cyan-400:active{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.active\:bg-cyan-500:active{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.active\:to-white:active{--tw-gradient-to: #ffffff var(--tw-gradient-to-position)}.active\:text-gray-300:active{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.active\:text-neutral-700:active{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.active\:shadow-none:active{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.disabled\:pointer-events-none:disabled{pointer-events:none}@keyframes pulse{50%{opacity:.5}}.disabled\:animate-pulse:disabled{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:top-0{top:0}.group:hover .group-hover\:-mr-4{margin-right:-1rem}.group:hover .group-hover\:-mt-4{margin-top:-1rem}.group:hover .group-hover\:mb-0{margin-bottom:0}.group:hover .group-hover\:mb-12{margin-bottom:3rem}.group:hover .group-hover\:mb-32{margin-bottom:8rem}.group:hover .group-hover\:ml-0{margin-left:0}.group:hover .group-hover\:mr-0{margin-right:0}.group:hover .group-hover\:mt-0{margin-top:0}.group:hover .group-hover\:h-32{height:8rem}.group:hover .group-hover\:h-56{height:14rem}.group:hover .group-hover\:h-64{height:16rem}.group:hover .group-hover\:h-full{height:100%}.group:hover .group-hover\:w-32{width:8rem}.group:hover .group-hover\:w-56{width:14rem}.group:hover .group-hover\:w-full{width:100%}.group\/bento:hover .group-hover\/bento\:translate-x-2{--tw-translate-x: .5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-x-0{--tw-translate-x: -0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-x-40{--tw-translate-x: -10rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-x-8{--tw-translate-x: -2rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-x-96{--tw-translate-x: -24rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-0{--tw-translate-y: -0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-32{--tw-translate-y: -8rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-12{--tw-translate-x: 3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-y-1{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-rotate-180{--tw-rotate: -180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:rotate-6{--tw-rotate: 6deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-skew-x-12{--tw-skew-x: -12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:skew-x-12{--tw-skew-x: 12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-scale-y-150{--tw-scale-y: -1.5;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-\[25px\]{border-width:25px}.group:hover .group-hover\:bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-cyan-500{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-cyan-600{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-cyan-700{--tw-bg-opacity: 1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-opacity-0{--tw-bg-opacity: 0}.group:hover .group-hover\:bg-opacity-50{--tw-bg-opacity: .5}.group:hover .group-hover\:from-\[\#ff00c6\]{--tw-gradient-from: #ff00c6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 0 198 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:via-\[\#ff5478\]{--tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to)}.group:hover .group-hover\:to-\[\#ff8a05\]{--tw-gradient-to: #ff8a05 var(--tw-gradient-to-position)}.group:hover .group-hover\:text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.group:hover .group-hover\:text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity))}.group:hover .group-hover\:text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.group:hover .group-hover\:text-kbve-primary-light{--tw-text-opacity: 1;color:rgb(72 187 120 / var(--tw-text-opacity))}.group:hover .group-hover\:text-neutral-50\/\[\.8\]{color:#fafafacc}.group:hover .group-hover\:text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.group:hover .group-hover\:text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}.group:hover .group-hover\:text-neutral-700{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.group:hover .group-hover\:text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}.group:hover .group-hover\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.group:hover .group-hover\:underline{text-decoration-line:underline}.group\/product:hover .group-hover\/product\:opacity-100{opacity:1}.group\/product:hover .group-hover\/product\:opacity-80{opacity:.8}.group:hover .group-hover\:opacity-10{opacity:.1}.group:hover .group-hover\:opacity-100{opacity:1}.group\/card:hover .group-hover\/card\:shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group\/product:hover .group-hover\/product\:shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group:hover .group-hover\:blur-none{--tw-blur: blur(0);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.group:hover .group-hover\:blur-sm{--tw-blur: blur(4px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.group:focus-visible .group-focus-visible\:-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:focus-visible .group-focus-visible\:translate-y-1{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:active .group-active\:bg-transparent{background-color:transparent}.group:active .group-active\:opacity-0{opacity:0}.peer:checked~.peer-checked\:bg-cyan-600{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.peer:checked~.peer-checked\:from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.peer:checked~.peer-checked\:to-cyan-100{--tw-gradient-to: #cffafe var(--tw-gradient-to-position)}.peer:checked~.peer-checked\:drop-shadow-sm{--tw-drop-shadow: drop-shadow(0 1px 1px rgb(0 0 0 / .05));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.peer:checked~.peer-checked\:after\:inset-1:after{content:var(--tw-content);inset:.25rem}.peer:checked~.peer-checked\:after\:translate-x-full:after{content:var(--tw-content);--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:after\:border-white:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.peer:checked~.peer-checked\:after\:from-neutral-200:after{content:var(--tw-content);--tw-gradient-from: #e5e5e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(229 229 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.peer:checked~.peer-checked\:after\:to-neutral-100:after{content:var(--tw-content);--tw-gradient-to: #f5f5f5 var(--tw-gradient-to-position)}.peer:checked~.peer-checked\:after\:opacity-100:after{content:var(--tw-content);opacity:1}.peer:focus~.peer-focus\:outline-none{outline:2px solid transparent;outline-offset:2px}.peer:focus~.peer-focus\:ring-4{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.peer:focus~.peer-focus\:ring-cyan-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(103 232 249 / var(--tw-ring-opacity))}.prose-headings\:text-cyan-200 :is(:where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.prose-p\:text-yellow-500 :is(:where(p):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.prose-a\:text-cyan-200 :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.prose-code\:text-cyan-200 :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.prose-code\:before\:content-none :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))):before{--tw-content: none;content:var(--tw-content)}.prose-code\:after\:content-none :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))):after{--tw-content: none;content:var(--tw-content)}.prose-ul\:text-yellow-500 :is(:where(ul):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.prose-li\:text-yellow-500 :is(:where(li):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.prose-tr\:border-b-indigo-500\/10 :is(:where(tr):not(:where([class~=not-prose],[class~=not-prose] *))){border-bottom-color:#6366f11a}.prose-tr\:text-cyan-200 :is(:where(tr):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.prose-td\:text-yellow-500 :is(:where(td):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.hs-dropdown.open>.hs-dropdown-open\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hs-dropdown.open>.hs-dropdown-open\:opacity-100{opacity:1}.hs-dropdown.open>.hs-dropdown-toggle .hs-dropdown-open\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hs-dropdown.open>.hs-dropdown-toggle .hs-dropdown-open\:opacity-100{opacity:1}.hs-dropdown.open>.hs-dropdown-menu>.hs-dropdown-open\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hs-dropdown.open>.hs-dropdown-menu>.hs-dropdown-open\:opacity-100{opacity:1}.hs-accordion.active.hs-accordion-active\:block{display:block}.hs-accordion.active.hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-toggle .hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-toggle .hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-heading>.hs-accordion-toggle .hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-heading>.hs-accordion-toggle .hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-toggle.hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-toggle.hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-heading>.hs-accordion-toggle.hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-heading>.hs-accordion-toggle.hs-accordion-active\:hidden{display:none}.hs-collapse.open .hs-collapse-open\:block{display:block}.hs-collapse.open .hs-collapse-open\:hidden{display:none}.hs-collapse.open.hs-collapse-open\:block{display:block}.hs-collapse.open.hs-collapse-open\:hidden{display:none}.hs-collapse-toggle.open .hs-collapse-open\:block{display:block}.hs-collapse-toggle.open .hs-collapse-open\:hidden{display:none}.hs-collapse-toggle.open.hs-collapse-open\:block{display:block}.hs-collapse-toggle.open.hs-collapse-open\:hidden{display:none}[data-hs-tab].active.hs-tab-active\:bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity))}[data-hs-tab].active.hs-tab-active\:fill-cyan-400{fill:#22d3ee}[data-hs-tab].active.hs-tab-active\:text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}[data-hs-tab].active.hs-tab-active\:text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}[data-hs-tab].active.hs-tab-active\:shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}[data-hs-tab].active.hs-tab-active\:hover\:border-transparent:hover{border-color:transparent}[data-hs-tab].active .hs-tab-active\:bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity))}[data-hs-tab].active .hs-tab-active\:fill-cyan-400{fill:#22d3ee}[data-hs-tab].active .hs-tab-active\:text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}[data-hs-tab].active .hs-tab-active\:text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}[data-hs-tab].active .hs-tab-active\:shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}[data-hs-tab].active .hs-tab-active\:hover\:border-transparent:hover{border-color:transparent}.open.hs-overlay-open\:mt-7{margin-top:1.75rem}.open.hs-overlay-open\:opacity-100{opacity:1}.open.hs-overlay-open\:duration-500{transition-duration:.5s}.open .hs-overlay-open\:mt-7{margin-top:1.75rem}.open .hs-overlay-open\:opacity-100{opacity:1}.open .hs-overlay-open\:duration-500{transition-duration:.5s}.hs-overlay-backdrop.hs-overlay-backdrop-open\:bg-neutral-900\/90,.hs-overlay-backdrop .hs-overlay-backdrop-open\:bg-neutral-900\/90{background-color:#171717e6}.selected .hs-combo-box-selected\:block,.selected.hs-combo-box-selected\:block{display:block}.dark .hs-dark-mode-active\:flex{display:flex}.dark .hs-dark-mode-active\:hidden{display:none}.dark\:divide-neutral-700:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(64 64 64 / var(--tw-divide-opacity))}.dark\:border:is(.dark *){border-width:1px}.dark\:border-cyan-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(34 211 238 / var(--tw-border-opacity))}.dark\:border-gray-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.dark\:border-gray-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.dark\:border-neutral-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(115 115 115 / var(--tw-border-opacity))}.dark\:border-neutral-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity))}.dark\:border-neutral-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(64 64 64 / var(--tw-border-opacity))}.dark\:border-neutral-700\/40:is(.dark *){border-color:#40404066}.dark\:border-transparent:is(.dark *){border-color:transparent}.dark\:border-white\/\[0\.2\]:is(.dark *){border-color:#fff3}.dark\:bg-black:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.dark\:bg-cyan-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.dark\:bg-gray-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.dark\:bg-gray-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:bg-gray-900\/\[\.80\]:is(.dark *){background-color:#111827cc}.dark\:bg-neutral-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity))}.dark\:bg-neutral-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity))}.dark\:bg-neutral-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.dark\:bg-neutral-700\/30:is(.dark *){background-color:#4040404d}.dark\:bg-neutral-700\/60:is(.dark *){background-color:#40404099}.dark\:bg-neutral-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.dark\:bg-neutral-800\/80:is(.dark *){background-color:#262626cc}.dark\:bg-neutral-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity))}.dark\:bg-neutral-900\/30:is(.dark *){background-color:#1717174d}.dark\:bg-orange-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(254 215 170 / var(--tw-bg-opacity))}.dark\:bg-white:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.dark\:bg-white\/\[\.05\]:is(.dark *){background-color:#ffffff0d}.dark\:bg-white\/\[\.075\]:is(.dark *){background-color:#ffffff13}.dark\:bg-zinc-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(63 63 70 / var(--tw-bg-opacity))}.dark\:bg-zinc-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity))}.dark\:bg-opacity-80:is(.dark *){--tw-bg-opacity: .8}.dark\:from-cyan-200:is(.dark *){--tw-gradient-from: #a5f3fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(165 243 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-cyan-900:is(.dark *){--tw-gradient-from: #164e63 var(--tw-gradient-from-position);--tw-gradient-to: rgb(22 78 99 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:via-indigo-200:is(.dark *){--tw-gradient-to: rgb(199 210 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #c7d2fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:to-cyan-700:is(.dark *){--tw-gradient-to: #0e7490 var(--tw-gradient-to-position)}.dark\:to-yellow-50:is(.dark *){--tw-gradient-to: #fefce8 var(--tw-gradient-to-position)}.dark\:fill-cyan-300:is(.dark *){fill:#67e8f9}.dark\:fill-neutral-200:is(.dark *){fill:#e5e5e5}.dark\:fill-neutral-300:is(.dark *){fill:#d4d4d4}.dark\:fill-red-500:is(.dark *){fill:#ef4444}.dark\:text-black:is(.dark *){--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity))}.dark\:text-cyan-300:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.dark\:text-cyan-400:is(.dark *){--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.dark\:text-gray-900:is(.dark *){--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.dark\:text-neutral-100:is(.dark *){--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity))}.dark\:text-neutral-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}.dark\:text-neutral-300:is(.dark *){--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.dark\:text-neutral-400:is(.dark *){--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.dark\:text-neutral-50:is(.dark *){--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity))}.dark\:text-neutral-500:is(.dark *){--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.dark\:text-neutral-600:is(.dark *){--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}.dark\:text-neutral-700:is(.dark *){--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity: 1;color:rgb(251 113 59 / var(--tw-text-opacity))}.dark\:text-red-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}.dark\:text-red-500:is(.dark *){--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity))}.dark\:text-zinc-400:is(.dark *){--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity))}.dark\:shadow-neutral-900\/\[\.2\]:is(.dark *){--tw-shadow-color: rgb(23 23 23 / .2);--tw-shadow: var(--tw-shadow-colored)}.dark\:ring-zinc-200:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(228 228 231 / var(--tw-ring-opacity))}.dark\:ring-zinc-800:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(39 39 42 / var(--tw-ring-opacity))}.dark\:backdrop-blur-md:is(.dark *){--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.dark\:backdrop-brightness-100:is(.dark *){--tw-backdrop-brightness: brightness(1);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.dark\:placeholder\:text-neutral-300:is(.dark *)::-moz-placeholder{--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.dark\:placeholder\:text-neutral-300:is(.dark *)::placeholder{--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.dark\:placeholder\:text-neutral-400:is(.dark *)::-moz-placeholder{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.dark\:placeholder\:text-neutral-400:is(.dark *)::placeholder{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.dark\:before\:border-neutral-600:is(.dark *):before{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity))}.dark\:before\:bg-neutral-600:is(.dark *):before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity))}.dark\:before\:bg-\[url\(\'https\:\/\/preline\.co\/assets\/svg\/examples-dark\/squared-bg-element\.svg\'\)\]:is(.dark *):before{content:var(--tw-content);background-image:url(https://preline.co/assets/svg/examples-dark/squared-bg-element.svg)}.dark\:after\:border-neutral-600:is(.dark *):after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity))}.dark\:checked\:border-yellow-400:checked:is(.dark *){--tw-border-opacity: 1;border-color:rgb(250 204 21 / var(--tw-border-opacity))}.dark\:checked\:bg-yellow-400:checked:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity))}.dark\:hover\:border-neutral-600:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity))}.dark\:hover\:border-neutral-700\/70:hover:is(.dark *){border-color:#404040b3}.dark\:hover\:border-yellow-500:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity))}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:hover\:bg-gray-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:hover\:bg-neutral-50\/10:hover:is(.dark *){background-color:#fafafa1a}.dark\:hover\:bg-neutral-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.dark\:hover\:bg-neutral-700\/60:hover:is(.dark *){background-color:#40404099}.dark\:hover\:bg-neutral-700\/80:hover:is(.dark *){background-color:#404040cc}.dark\:hover\:bg-neutral-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.dark\:hover\:bg-neutral-900:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity))}.dark\:hover\:bg-yellow-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity))}.dark\:hover\:bg-zinc-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(82 82 91 / var(--tw-bg-opacity))}.dark\:hover\:text-cyan-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-100:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-50:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-500:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-700:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-800\/70:hover:is(.dark *){color:#262626b3}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:hover\:text-zinc-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(228 228 231 / var(--tw-text-opacity))}.dark\:hover\:shadow-2xl:hover:is(.dark *){--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:focus\:bg-neutral-700:focus:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.dark\:focus\:bg-neutral-800:focus:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.dark\:focus\:outline-none:focus:is(.dark *){outline:2px solid transparent;outline-offset:2px}.dark\:focus\:ring-1:focus:is(.dark *){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.dark\:focus\:ring-gray-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-700:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(55 65 81 / var(--tw-ring-opacity))}.dark\:focus\:ring-neutral-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(82 82 82 / var(--tw-ring-opacity))}.dark\:focus\:ring-offset-gray-800:focus:is(.dark *){--tw-ring-offset-color: #1f2937}.dark\:focus\:ring-offset-neutral-800:focus:is(.dark *){--tw-ring-offset-color: #262626}.group:hover .dark\:group-hover\:text-neutral-400:is(.dark *){--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.group:hover .dark\:group-hover\:text-neutral-50:is(.dark *){--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity))}.group:hover .dark\:group-hover\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.group:hover .group-hover\:dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}[data-hs-tab].active.dark\:hs-tab-active\:bg-neutral-700\/60:is(.dark *){background-color:#40404099}[data-hs-tab].active.dark\:hs-tab-active\:fill-cyan-300:is(.dark *){fill:#67e8f9}[data-hs-tab].active.dark\:hs-tab-active\:text-cyan-300:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}[data-hs-tab].active.dark\:hs-tab-active\:text-neutral-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}[data-hs-tab].active .dark\:hs-tab-active\:bg-neutral-700\/60:is(.dark *){background-color:#40404099}[data-hs-tab].active .dark\:hs-tab-active\:fill-cyan-300:is(.dark *){fill:#67e8f9}[data-hs-tab].active .dark\:hs-tab-active\:text-cyan-300:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}[data-hs-tab].active .dark\:hs-tab-active\:text-neutral-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}@media (min-width: 640px){.sm\:order-1{order:1}.sm\:order-2{order:2}.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:mx-0{margin-left:0;margin-right:0}.sm\:mx-auto{margin-left:auto;margin-right:auto}.sm\:my-10{margin-top:2.5rem;margin-bottom:2.5rem}.sm\:mb-1{margin-bottom:.25rem}.sm\:mb-10{margin-bottom:2.5rem}.sm\:mb-8{margin-bottom:2rem}.sm\:ms-4{margin-inline-start:1rem}.sm\:mt-10{margin-top:2.5rem}.sm\:mt-12{margin-top:3rem}.sm\:mt-3{margin-top:.75rem}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:grid{display:grid}.sm\:hidden{display:none}.sm\:h-14{height:3.5rem}.sm\:h-3\/4{height:75%}.sm\:h-8{height:2rem}.sm\:h-\[2\.875rem\]{height:2.875rem}.sm\:w-1\/2{width:50%}.sm\:w-11\/12{width:91.666667%}.sm\:w-14{width:3.5rem}.sm\:w-3\/4{width:75%}.sm\:w-80{width:20rem}.sm\:w-\[100\%\]{width:100%}.sm\:w-\[2\.875rem\]{width:2.875rem}.sm\:w-\[30rem\]{width:30rem}.sm\:w-\[45\%\]{width:45%}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-4xl{max-width:56rem}.sm\:max-w-lg{max-width:32rem}.sm\:max-w-xl{max-width:36rem}.sm\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-start{justify-content:flex-start}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:gap-0{gap:0px}.sm\:gap-2{gap:.5rem}.sm\:gap-3{gap:.75rem}.sm\:gap-8{gap:2rem}.sm\:gap-x-12{-moz-column-gap:3rem;column-gap:3rem}.sm\:gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.sm\:gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.sm\:gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.sm\:gap-y-0{row-gap:0px}.sm\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.sm\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.sm\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.sm\:rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.sm\:border-s{border-inline-start-width:1px}.sm\:border-t-0{border-top-width:0px}.sm\:p-10{padding:2.5rem}.sm\:p-6{padding:1.5rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:px-10{padding-left:2.5rem;padding-right:2.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-0{padding-top:0;padding-bottom:0}.sm\:py-16{padding-top:4rem;padding-bottom:4rem}.sm\:py-8{padding-top:2rem;padding-bottom:2rem}.sm\:pb-0{padding-bottom:0}.sm\:pe-5{padding-inline-end:1.25rem}.sm\:ps-5{padding-inline-start:1.25rem}.sm\:pt-0{padding-top:0}.sm\:pt-\[100\%\]{padding-top:100%}.sm\:pt-\[70\%\]{padding-top:70%}.sm\:text-center{text-align:center}.sm\:text-start{text-align:start}.sm\:text-end{text-align:end}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}.sm\:backdrop-brightness-100{--tw-backdrop-brightness: brightness(1);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}}@media (min-width: 768px){.md\:inset-0{inset:0}.md\:\!left-\[70\%\]{left:70%!important}.md\:\!left-\[90\%\]{left:90%!important}.md\:\!top-\[80\%\]{top:80%!important}.md\:-bottom-10{bottom:-2.5rem}.md\:left-12{left:3rem}.md\:top-16{top:4rem}.md\:top-\[20\%\]{top:20%}.md\:order-2{order:2}.md\:col-span-2{grid-column:span 2 / span 2}.md\:col-span-3{grid-column:span 3 / span 3}.md\:my-10{margin-top:2.5rem;margin-bottom:2.5rem}.md\:my-6{margin-top:1.5rem;margin-bottom:1.5rem}.md\:-ml-12{margin-left:-3rem}.md\:mb-0{margin-bottom:0}.md\:mb-12{margin-bottom:3rem}.md\:mb-16{margin-bottom:4rem}.md\:mb-2{margin-bottom:.5rem}.md\:mb-28{margin-bottom:7rem}.md\:mb-6{margin-bottom:1.5rem}.md\:mb-8{margin-bottom:2rem}.md\:ml-5{margin-left:1.25rem}.md\:ml-auto{margin-left:auto}.md\:mr-0{margin-right:0}.md\:mt-0{margin-top:0}.md\:mt-10{margin-top:2.5rem}.md\:mt-12{margin-top:3rem}.md\:mt-16{margin-top:4rem}.md\:mt-4{margin-top:1rem}.md\:block{display:block}.md\:inline-block{display:inline-block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:h-12{height:3rem}.md\:h-4{height:1rem}.md\:h-7{height:1.75rem}.md\:h-80{height:20rem}.md\:h-96{height:24rem}.md\:h-\[300vh\]{height:300vh}.md\:h-\[40rem\]{height:40rem}.md\:h-\[90\%\]{height:90%}.md\:h-auto{height:auto}.md\:w-1\/2{width:50%}.md\:w-1\/4{width:25%}.md\:w-3\/4{width:75%}.md\:w-32{width:8rem}.md\:w-4{width:1rem}.md\:w-48{width:12rem}.md\:w-6\/12{width:50%}.md\:w-7{width:1.75rem}.md\:w-96{width:24rem}.md\:w-\[30\%\]{width:30%}.md\:w-\[30rem\]{width:30rem}.md\:w-auto{width:auto}.md\:w-full{width:100%}.md\:max-w-full{max-width:100%}.md\:-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:auto-rows-\[18rem\]{grid-auto-rows:18rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:flex-wrap{flex-wrap:wrap}.md\:flex-nowrap{flex-wrap:nowrap}.md\:items-center{align-items:center}.md\:justify-start{justify-content:flex-start}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:gap-12{gap:3rem}.md\:gap-6{gap:1.5rem}.md\:gap-8{gap:2rem}.md\:gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.md\:gap-y-0{row-gap:0px}.md\:gap-y-4{row-gap:1rem}.md\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.md\:space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.md\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.md\:border-s{border-inline-start-width:1px}.md\:border-neutral-300{--tw-border-opacity: 1;border-color:rgb(212 212 212 / var(--tw-border-opacity))}.md\:p-16{padding:4rem}.md\:p-5{padding:1.25rem}.md\:p-6{padding:1.5rem}.md\:p-\[400px\]{padding:400px}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:px-24{padding-left:6rem;padding-right:6rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:px-7{padding-left:1.75rem;padding-right:1.75rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-0{padding-top:0;padding-bottom:0}.md\:py-3{padding-top:.75rem;padding-bottom:.75rem}.md\:py-40{padding-top:10rem;padding-bottom:10rem}.md\:ps-6{padding-inline-start:1.5rem}.md\:ps-7{padding-inline-start:1.75rem}.md\:pt-8{padding-top:2rem}.md\:text-left{text-align:left}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:leading-tight{line-height:1.25}}@media (min-width: 1024px){.lg\:order-2{order:2}.lg\:order-none{order:0}.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-4{grid-column:span 4 / span 4}.lg\:col-span-5{grid-column:span 5 / span 5}.lg\:col-span-6{grid-column:span 6 / span 6}.lg\:col-span-7{grid-column:span 7 / span 7}.lg\:col-span-8{grid-column:span 8 / span 8}.lg\:col-start-1{grid-column-start:1}.lg\:col-start-6{grid-column-start:6}.lg\:col-start-8{grid-column-start:8}.lg\:col-end-13{grid-column-end:13}.lg\:mb-0{margin-bottom:0}.lg\:mb-14{margin-bottom:3.5rem}.lg\:ml-0{margin-left:0}.lg\:mt-0{margin-top:0}.lg\:mt-10{margin-top:2.5rem}.lg\:mt-16{margin-top:4rem}.lg\:grid{display:grid}.lg\:aspect-auto{aspect-ratio:auto}.lg\:h-full{height:100%}.lg\:w-1\/2{width:50%}.lg\:w-1\/3{width:33.333333%}.lg\:w-16{width:4rem}.lg\:w-3\/4{width:75%}.lg\:w-3\/5{width:60%}.lg\:w-4\/5{width:80%}.lg\:w-96{width:24rem}.lg\:max-w-5xl{max-width:64rem}.lg\:max-w-lg{max-width:32rem}.lg\:max-w-screen-xl{max-width:1280px}.lg\:translate-x-20{--tw-translate-x: 5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:gap-12{gap:3rem}.lg\:gap-16{gap:4rem}.lg\:gap-x-24{-moz-column-gap:6rem;column-gap:6rem}.lg\:gap-x-7{-moz-column-gap:1.75rem;column-gap:1.75rem}.lg\:space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.lg\:p-8{padding:2rem}.lg\:px-16{padding-left:4rem;padding-right:4rem}.lg\:px-6{padding-left:1.5rem;padding-right:1.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.lg\:py-12{padding-top:3rem;padding-bottom:3rem}.lg\:py-14{padding-top:3.5rem;padding-bottom:3.5rem}.lg\:py-16{padding-top:4rem;padding-bottom:4rem}.lg\:py-20{padding-top:5rem;padding-bottom:5rem}.lg\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.lg\:pb-14{padding-bottom:3.5rem}.lg\:pe-6{padding-inline-end:1.5rem}.lg\:pl-5{padding-left:1.25rem}.lg\:pt-10{padding-top:2.5rem}.lg\:pt-14{padding-top:3.5rem}.lg\:pt-20{padding-top:5rem}.lg\:text-right{text-align:right}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-7xl{font-size:4.5rem;line-height:1}.lg\:text-9xl{font-size:8rem;line-height:1}.lg\:leading-tight{line-height:1.25}.lg\:before\:absolute:before{content:var(--tw-content);position:absolute}.lg\:before\:-start-12:before{content:var(--tw-content);inset-inline-start:-3rem}.lg\:before\:top-0:before{content:var(--tw-content);top:0}.lg\:before\:h-full:before{content:var(--tw-content);height:100%}.lg\:before\:w-px:before{content:var(--tw-content);width:1px}.lg\:before\:bg-neutral-300:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity))}.lg\:before\:dark\:bg-neutral-700:is(.dark *):before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}}@media (min-width: 1280px){.xl\:bottom-\[15\%\]{bottom:15%}.xl\:left-\[10\%\]{left:10%}.xl\:left-\[35\%\]{left:35%}.xl\:top-\[25\%\]{top:25%}.xl\:col-span-2{grid-column:span 2 / span 2}.xl\:col-span-3{grid-column:span 3 / span 3}.xl\:mx-auto{margin-left:auto;margin-right:auto}.xl\:w-full{width:100%}.xl\:gap-16{gap:4rem}.xl\:gap-8{gap:2rem}.xl\:pe-12{padding-inline-end:3rem}.xl\:text-4xl{font-size:2.25rem;line-height:2.5rem}.xl\:text-5xl{font-size:3rem;line-height:1}.xl\:leading-tight{line-height:1.25}}@media (min-width: 1536px){.\32xl\:w-4\/5{width:80%}.\32xl\:max-w-full{max-width:100%}.\32xl\:max-w-screen-2xl{max-width:1536px}.\32xl\:text-5xl{font-size:3rem;line-height:1}.\32xl\:text-base{font-size:1rem;line-height:1.5rem}}.rtl\:rotate-180:where([dir=rtl],[dir=rtl] *){--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:text-right:where([dir=rtl],[dir=rtl] *){text-align:right}.peer:checked~.rtl\:peer-checked\:after\:translate-x-\[-100\%\]:where([dir=rtl],[dir=rtl] *):after{content:var(--tw-content);--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>\*\]\:\[transform-style\:preserve-3d\]>*{transform-style:preserve-3d}
+*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}[type=text],input:where(:not([type])),[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}[type=text]:focus,input:where(:not([type])):focus,[type=email]:focus,[type=url]:focus,[type=password]:focus,[type=number]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=week]:focus,[multiple]:focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:hover,[type=checkbox]:checked:focus,[type=radio]:checked:hover,[type=radio]:checked:focus{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}@media (forced-colors: active){[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:hover,[type=checkbox]:indeterminate:focus{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;text-align:start;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>*:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>*:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>*:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>*:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-6{inset:1.5rem}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.\!left-\[20\%\]{left:20%!important}.\!top-\[78\%\]{top:78%!important}.\!top-\[98\%\]{top:98%!important}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-\[5\%\]{bottom:5%}.bottom-\[60px\]{bottom:60px}.bottom-full{bottom:100%}.end-0{inset-inline-end:0px}.end-2{inset-inline-end:.5rem}.end-2\.5{inset-inline-end:.625rem}.left-0{left:0}.left-1\/2{left:50%}.left-12{left:3rem}.left-4{left:1rem}.left-5{left:1.25rem}.left-\[60\%\]{left:60%}.left-\[85\%\]{left:85%}.right-0{right:0}.right-12{right:3rem}.right-4{right:1rem}.right-5{right:1.25rem}.start-0{inset-inline-start:0px}.start-1\/2{inset-inline-start:50%}.top-0{top:0}.top-1\/2{top:50%}.top-12{top:3rem}.top-2{top:.5rem}.top-2\.5{top:.625rem}.top-3{top:.75rem}.top-4{top:1rem}.top-\[55\%\]{top:55%}.top-full{top:100%}.isolate{isolation:isolate}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1000\]{z-index:1000}.order-first{order:-9999}.col-span-1{grid-column:span 1 / span 1}.col-span-2{grid-column:span 2 / span 2}.col-span-3{grid-column:span 3 / span 3}.col-span-full{grid-column:1 / -1}.row-span-1{grid-row:span 1 / span 1}.float-right{float:right}.-m-0{margin:-0px}.-m-0\.5{margin:-.125rem}.-m-1{margin:-.25rem}.-m-1\.5{margin:-.375rem}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:.75rem}.m-4{margin:1rem}.m-5{margin:1.25rem}.m-6{margin:1.5rem}.m-8{margin:2rem}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.-mx-1\.5{margin-left:-.375rem;margin-right:-.375rem}.-my-1{margin-top:-.25rem;margin-bottom:-.25rem}.-my-1\.5{margin-top:-.375rem;margin-bottom:-.375rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.-mb-1{margin-bottom:-.25rem}.-mb-8{margin-bottom:-2rem}.-ml-10{margin-left:-2.5rem}.-ml-12{margin-left:-3rem}.-ml-2{margin-left:-.5rem}.-ml-3{margin-left:-.75rem}.-mr-1{margin-right:-.25rem}.-mr-10{margin-right:-2.5rem}.-mr-3{margin-right:-.75rem}.-mr-5{margin-right:-1.25rem}.-mt-1{margin-top:-.25rem}.-mt-10{margin-top:-2.5rem}.-mt-12{margin-top:-3rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-20{margin-bottom:5rem}.mb-3{margin-bottom:.75rem}.mb-32{margin-bottom:8rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-9{margin-bottom:2.25rem}.me-2{margin-inline-end:.5rem}.me-2\.5{margin-inline-end:.625rem}.ml-0{margin-left:0}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-5{margin-left:1.25rem}.ml-9{margin-left:2.25rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-5{margin-right:1.25rem}.ms-1{margin-inline-start:.25rem}.ms-2{margin-inline-start:.5rem}.ms-2\.5{margin-inline-start:.625rem}.ms-3{margin-inline-start:.75rem}.ms-4{margin-inline-start:1rem}.ms-6{margin-inline-start:1.5rem}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-32{margin-top:8rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-9{margin-top:2.25rem}.box-border{box-sizing:border-box}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-\[3\/2\]{aspect-ratio:3/2}.aspect-\[5\/4\]{aspect-ratio:5/4}.aspect-video{aspect-ratio:16 / 9}.size-10{width:2.5rem;height:2.5rem}.size-20{width:5rem;height:5rem}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-\[46px\]{width:46px;height:46px}.size-full{width:100%;height:100%}.h-0{height:0px}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\/3{height:33.333333%}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-5\/6{height:83.333333%}.h-6{height:1.5rem}.h-60{height:15rem}.h-64{height:16rem}.h-72{height:18rem}.h-8{height:2rem}.h-80{height:20rem}.h-96{height:24rem}.h-\[1\.25rem\]{height:1.25rem}.h-\[20rem\]{height:20rem}.h-\[260vh\]{height:260vh}.h-\[32px\]{height:32px}.h-\[350px\]{height:350px}.h-\[48px\]{height:48px}.h-\[60\%\]{height:60%}.h-\[75vh\]{height:75vh}.h-\[calc\(100\%-1rem\)\]{height:calc(100% - 1rem)}.h-auto{height:auto}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.h-svh{height:100svh}.max-h-\[48px\]{max-height:48px}.max-h-full{max-height:100%}.min-h-\[150px\]{min-height:150px}.min-h-\[200px\]{min-height:200px}.min-h-\[6rem\]{min-height:6rem}.min-h-fit{min-height:-moz-fit-content;min-height:fit-content}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-0\.5{width:.125rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/5{width:40%}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-4\/12{width:33.333333%}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[1\.25rem\]{width:1.25rem}.w-\[15rem\]{width:15rem}.w-\[48px\]{width:48px}.w-\[600px\]{width:600px}.w-\[90\%\]{width:90%}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.\!min-w-full{min-width:100%!important}.min-w-0{min-width:0px}.min-w-60{min-width:15rem}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[300px\]{max-width:300px}.max-w-\[48px\]{max-width:48px}.max-w-\[85rem\]{max-width:85rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-prose{max-width:65ch}.max-w-screen-2xl{max-width:1536px}.max-w-screen-lg{max-width:1024px}.max-w-screen-md{max-width:768px}.max-w-screen-sm{max-width:640px}.max-w-screen-xl{max-width:1280px}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.basis-full{flex-basis:100%}.origin-bottom-left{transform-origin:bottom left}.origin-center{transform-origin:center}.origin-top-left{transform-origin:top left}.origin-top-right{transform-origin:top right}.-translate-x-1{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-12{--tw-translate-x: -3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-2{--tw-translate-x: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-20{--tw-translate-x: -5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-24{--tw-translate-x: -6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-56{--tw-translate-x: -14rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-6{--tw-translate-x: -1.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-8{--tw-translate-x: -2rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-12{--tw-translate-y: -3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-2{--tw-translate-y: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-24{--tw-translate-y: -6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-6{--tw-translate-y: -1.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-8{--tw-translate-y: -2rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\/2{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-10{--tw-translate-x: 2.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-12{--tw-translate-x: 3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-24{--tw-translate-x: 6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-10{--tw-translate-y: 2.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-12{--tw-translate-y: 3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-8{--tw-translate-y: 2rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-12{--tw-rotate: -12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-45{--tw-rotate: -45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-12{--tw-rotate: 12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-\[-40deg\]{--tw-rotate: -40deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-skew-x-12{--tw-skew-x: -12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.skew-x-12{--tw-skew-x: 12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-75{--tw-scale-x: .75;--tw-scale-y: .75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-90{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\[\.6\]{--tw-scale-x: .6;--tw-scale-y: .6;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\!transform-none{transform:none!important}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.resize{resize:both}.scroll-pt-16{scroll-padding-top:4rem}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.place-content-center{place-content:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-items-center{justify-items:center}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-0{-moz-column-gap:0px;column-gap:0px}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-16{-moz-column-gap:4rem;column-gap:4rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-3\.5{-moz-column-gap:.875rem;column-gap:.875rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-x-7{-moz-column-gap:1.75rem;column-gap:1.75rem}.gap-y-0{row-gap:0px}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-4{row-gap:1rem}.gap-y-5{row-gap:1.25rem}.gap-y-px{row-gap:1px}.-space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.25rem * var(--tw-space-x-reverse));margin-left:calc(-.25rem * calc(1 - var(--tw-space-x-reverse)))}.-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.75rem * var(--tw-space-x-reverse));margin-left:calc(-.75rem * calc(1 - var(--tw-space-x-reverse)))}.-space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(-.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(-.25rem * var(--tw-space-y-reverse))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-10>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2.5rem * var(--tw-space-x-reverse));margin-left:calc(2.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-20>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(5rem * var(--tw-space-x-reverse));margin-left:calc(5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(3rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.space-x-reverse>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 1}.divide-x-2>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(2px * var(--tw-divide-x-reverse));border-left-width:calc(2px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-y-2>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(2px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(2px * var(--tw-divide-y-reverse))}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(243 244 246 / var(--tw-divide-opacity))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))}.divide-neutral-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 229 229 / var(--tw-divide-opacity))}.divide-neutral-300>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(212 212 212 / var(--tw-divide-opacity))}.divide-zinc-600>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(82 82 91 / var(--tw-divide-opacity))}.self-auto{align-self:auto}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.overflow-clip{overflow:clip}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.overflow-y-scroll{overflow-y:scroll}.overscroll-contain{overscroll-behavior:contain}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.text-wrap{text-wrap:wrap}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[36px\]{border-radius:36px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-xl{border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-e-lg{border-start-end-radius:.5rem;border-end-end-radius:.5rem}.rounded-s-lg{border-start-start-radius:.5rem;border-end-start-radius:.5rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.rounded-tl{border-top-left-radius:.25rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[3px\]{border-width:3px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-e{border-inline-end-width:1px}.border-l-2{border-left-width:2px}.border-s{border-inline-start-width:1px}.border-s-2{border-inline-start-width:2px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity))}.border-black\/\[0\.1\]{border-color:#0000001a}.border-current{border-color:currentColor}.border-cyan-200{--tw-border-opacity: 1;border-color:rgb(165 243 252 / var(--tw-border-opacity))}.border-cyan-300{--tw-border-opacity: 1;border-color:rgb(103 232 249 / var(--tw-border-opacity))}.border-cyan-500{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity))}.border-cyan-600{--tw-border-opacity: 1;border-color:rgb(8 145 178 / var(--tw-border-opacity))}.border-cyan-700{--tw-border-opacity: 1;border-color:rgb(14 116 144 / var(--tw-border-opacity))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity))}.border-neutral-200{--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity))}.border-neutral-400{--tw-border-opacity: 1;border-color:rgb(163 163 163 / var(--tw-border-opacity))}.border-neutral-50{--tw-border-opacity: 1;border-color:rgb(250 250 250 / var(--tw-border-opacity))}.border-orange-300{--tw-border-opacity: 1;border-color:rgb(251 113 59 / var(--tw-border-opacity))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.border-yellow-100\/40{border-color:#fef9c366}.border-zinc-900{--tw-border-opacity: 1;border-color:rgb(24 24 27 / var(--tw-border-opacity))}.border-s-cyan-300{--tw-border-opacity: 1;border-inline-start-color:rgb(103 232 249 / var(--tw-border-opacity))}.border-t-transparent{border-top-color:transparent}.border-opacity-30{--tw-border-opacity: .3}.bg-\[\#c0987d\]{--tw-bg-opacity: 1;background-color:rgb(192 152 125 / var(--tw-bg-opacity))}.bg-\[var\(--sl-color-black\)\]{background-color:var(--sl-color-black)}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(31 66 72 / var(--tw-bg-opacity))}.bg-cyan-100{--tw-bg-opacity: 1;background-color:rgb(207 250 254 / var(--tw-bg-opacity))}.bg-cyan-100\/\[\.35\]{background-color:#cffafe59}.bg-cyan-200{--tw-bg-opacity: 1;background-color:rgb(165 243 252 / var(--tw-bg-opacity))}.bg-cyan-300{--tw-bg-opacity: 1;background-color:rgb(103 232 249 / var(--tw-bg-opacity))}.bg-cyan-400{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.bg-cyan-400\/\[\.25\]{background-color:#22d3ee40}.bg-cyan-50{--tw-bg-opacity: 1;background-color:rgb(236 254 255 / var(--tw-bg-opacity))}.bg-cyan-500{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.bg-cyan-500\/\[\.30\]{background-color:#06b6d44d}.bg-cyan-600{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.bg-cyan-700{--tw-bg-opacity: 1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))}.bg-default{background-color:var(--color-background)}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.bg-gray-500\/30{background-color:#6b72804d}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.bg-gray-900\/\[\.45\]{background-color:#11182773}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(99 102 241 / var(--tw-bg-opacity))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity))}.bg-kbve-menu-bg{--tw-bg-opacity: 1;background-color:rgb(9 9 11 / var(--tw-bg-opacity))}.bg-kbve-menu-primary{--tw-bg-opacity: 1;background-color:rgb(39 39 42 / var(--tw-bg-opacity))}.bg-kbve-svg-primary{--tw-bg-opacity: 1;background-color:rgb(145 255 255 / var(--tw-bg-opacity))}.bg-neutral-100{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity))}.bg-neutral-200{--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity))}.bg-neutral-300{--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity))}.bg-neutral-300\/30{background-color:#d4d4d44d}.bg-neutral-400\/30{background-color:#a3a3a34d}.bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity))}.bg-neutral-800{--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.bg-offset{--tw-bg-opacity: 1;background-color:rgb(35 38 45 / var(--tw-bg-opacity))}.bg-offset\/\[\.75\]{background-color:#23262dbf}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity))}.bg-orange-200{--tw-bg-opacity: 1;background-color:rgb(254 215 170 / var(--tw-bg-opacity))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(225 77 11 / var(--tw-bg-opacity))}.bg-orange-600{--tw-bg-opacity: 1;background-color:rgb(234 88 12 / var(--tw-bg-opacity))}.bg-red-200{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-red-700{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-yellow-400{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity))}.bg-yellow-50\/60{background-color:#fefce899}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity))}.bg-zinc-800{--tw-bg-opacity: 1;background-color:rgb(39 39 42 / var(--tw-bg-opacity))}.bg-zinc-900{--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity))}.bg-zinc-900\/\[\.20\]{background-color:#18181b33}.bg-zinc-950{--tw-bg-opacity: 1;background-color:rgb(9 9 11 / var(--tw-bg-opacity))}.bg-opacity-10{--tw-bg-opacity: .1}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-75{--tw-bg-opacity: .75}.bg-opacity-80{--tw-bg-opacity: .8}.bg-\[radial-gradient\(ellipse_at_top_left\,_var\(--tw-gradient-stops\)\)\]{background-image:radial-gradient(ellipse at top left,var(--tw-gradient-stops))}.bg-\[url\(\'\/banner-pattern\.svg\'\)\]{background-image:url(/banner-pattern.svg)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-l{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.bg-gradient-to-tl{background-image:linear-gradient(to top left,var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.from-\[\#ff8a05\]{--tw-gradient-from: #ff8a05 var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 138 5 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-200{--tw-gradient-from: #a5f3fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(165 243 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-300{--tw-gradient-from: #67e8f9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(103 232 249 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-400{--tw-gradient-from: #22d3ee var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 211 238 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-50{--tw-gradient-from: #ecfeff var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 254 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-600{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-700{--tw-gradient-from: #0e7490 var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 116 144 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-neutral-200{--tw-gradient-from: #e5e5e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(229 229 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-neutral-400{--tw-gradient-from: #a3a3a3 var(--tw-gradient-from-position);--tw-gradient-to: rgb(163 163 163 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-neutral-800{--tw-gradient-from: #262626 var(--tw-gradient-from-position);--tw-gradient-to: rgb(38 38 38 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-400\/30{--tw-gradient-from: rgb(250 90 21 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(250 90 21 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-600{--tw-gradient-from: #dc2626 var(--tw-gradient-from-position);--tw-gradient-to: rgb(220 38 38 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white{--tw-gradient-from: #ffffff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from: #eab308 var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-\[\#ff5478\]{--tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-200{--tw-gradient-to: rgb(199 210 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #c7d2fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-500{--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #6366f1 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-red-500{--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #ef4444 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-transparent{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-\[\#ff00c6\]{--tw-gradient-to: #ff00c6 var(--tw-gradient-to-position)}.to-cyan-200{--tw-gradient-to: #a5f3fc var(--tw-gradient-to-position)}.to-cyan-400{--tw-gradient-to: #22d3ee var(--tw-gradient-to-position)}.to-cyan-500{--tw-gradient-to: #06b6d4 var(--tw-gradient-to-position)}.to-cyan-600{--tw-gradient-to: #0891b2 var(--tw-gradient-to-position)}.to-cyan-700{--tw-gradient-to: #0e7490 var(--tw-gradient-to-position)}.to-gray-50{--tw-gradient-to: #f9fafb var(--tw-gradient-to-position)}.to-gray-700{--tw-gradient-to: #374151 var(--tw-gradient-to-position)}.to-neutral-100{--tw-gradient-to: #f5f5f5 var(--tw-gradient-to-position)}.to-neutral-200{--tw-gradient-to: #e5e5e5 var(--tw-gradient-to-position)}.to-orange-400{--tw-gradient-to: #fa5a15 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-yellow-400{--tw-gradient-to: #facc15 var(--tw-gradient-to-position)}.to-yellow-50{--tw-gradient-to: #fefce8 var(--tw-gradient-to-position)}.to-yellow-500{--tw-gradient-to: #eab308 var(--tw-gradient-to-position)}.bg-cover{background-size:cover}.bg-fixed{background-attachment:fixed}.bg-clip-border{background-clip:border-box}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-center{background-position:center}.bg-no-repeat{background-repeat:no-repeat}.fill-black{fill:#000}.fill-current{fill:currentColor}.fill-cyan-400{fill:#22d3ee}.fill-neutral-700{fill:#404040}.fill-none{fill:none}.fill-red-500{fill:#ef4444}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.object-left-top{-o-object-position:left top;object-position:left top}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-20{padding:5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[300px\]{padding:300px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-12{padding-left:3rem;padding-right:3rem}.px-16{padding-left:4rem;padding-right:4rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-36{padding-top:9rem;padding-bottom:9rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0{padding-bottom:0}.pb-0\.5{padding-bottom:.125rem}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-24{padding-bottom:6rem}.pb-3{padding-bottom:.75rem}.pb-5{padding-bottom:1.25rem}.pe-3{padding-inline-end:.75rem}.pe-6{padding-inline-end:1.5rem}.pl-0{padding-left:0}.pl-11{padding-left:2.75rem}.pl-2{padding-left:.5rem}.pl-2\.5{padding-left:.625rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pr-12{padding-right:3rem}.pr-4{padding-right:1rem}.pr-5{padding-right:1.25rem}.ps-2{padding-inline-start:.5rem}.pt-10{padding-top:2.5rem}.pt-16{padding-top:4rem}.pt-2{padding-top:.5rem}.pt-24{padding-top:6rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-\[50\%\]{padding-top:50%}.text-left{text-align:left}.text-center{text-align:center}.text-start{text-align:start}.text-end{text-align:end}.indent-10{text-indent:2.5rem}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-7xl{font-size:4.5rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.not-italic{font-style:normal}.leading-10{line-height:2.5rem}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.tracking-wider{letter-spacing:.05em}.\!text-white{--tw-text-opacity: 1 !important;color:rgb(255 255 255 / var(--tw-text-opacity))!important}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity))}.text-cyan-100{--tw-text-opacity: 1;color:rgb(207 250 254 / var(--tw-text-opacity))}.text-cyan-200{--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.text-cyan-500{--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity))}.text-cyan-700{--tw-text-opacity: 1;color:rgb(14 116 144 / var(--tw-text-opacity))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.text-indigo-200{--tw-text-opacity: 1;color:rgb(199 210 254 / var(--tw-text-opacity))}.text-indigo-300{--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity))}.text-kbve-primary-light{--tw-text-opacity: 1;color:rgb(72 187 120 / var(--tw-text-opacity))}.text-kbve-svg-primary,.text-kbve-text-primary{--tw-text-opacity: 1;color:rgb(145 255 255 / var(--tw-text-opacity))}.text-kbve-text-secondary{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-neutral-100{--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity))}.text-neutral-200{--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}.text-neutral-300{--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.text-neutral-400{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.text-neutral-50{--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity))}.text-neutral-50\/\[\.8\]{color:#fafafacc}.text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}.text-neutral-700{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.text-neutral-800{--tw-text-opacity: 1;color:rgb(38 38 38 / var(--tw-text-opacity))}.text-orange-400{--tw-text-opacity: 1;color:rgb(250 90 21 / var(--tw-text-opacity))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.text-zinc-200{--tw-text-opacity: 1;color:rgb(228 228 231 / var(--tw-text-opacity))}.text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity))}.text-zinc-600{--tw-text-opacity: 1;color:rgb(82 82 91 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.decoration-2{text-decoration-thickness:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-5{opacity:.05}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-\[3\%\]{opacity:3%}.bg-blend-multiply{background-blend-mode:multiply}.bg-blend-overlay{background-blend-mode:overlay}.bg-blend-darken{background-blend-mode:darken}.mix-blend-screen{mix-blend-mode:screen}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/10{--tw-shadow-color: rgb(0 0 0 / .1);--tw-shadow: var(--tw-shadow-colored)}.shadow-neutral-200{--tw-shadow-color: #e5e5e5;--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-cyan-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(103 232 249 / var(--tw-ring-opacity))}.ring-indigo-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(165 180 252 / var(--tw-ring-opacity))}.ring-neutral-50{--tw-ring-opacity: 1;--tw-ring-color: rgb(250 250 250 / var(--tw-ring-opacity))}.ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity))}.ring-zinc-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(113 113 122 / var(--tw-ring-opacity))}.ring-offset-2{--tw-ring-offset-width: 2px}.ring-offset-indigo-200{--tw-ring-offset-color: #c7d2fe}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-md{--tw-blur: blur(12px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-sm{--tw-blur: blur(4px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-xl{--tw-blur: blur(24px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-lg{--tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / .04)) drop-shadow(0 4px 3px rgb(0 0 0 / .1));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-brightness-75{--tw-backdrop-brightness: brightness(.75);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[height\]{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[opacity\,margin\]{transition-property:opacity,margin;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.delay-100{transition-delay:.1s}.delay-200{transition-delay:.2s}.delay-300{transition-delay:.3s}.duration-100{transition-duration:.1s}.duration-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.duration-75{transition-duration:75ms}.duration-\[600ms\]{transition-duration:.6s}.ease-\[cubic-bezier\(0\.45\,0\,0\.55\,1\)\]{transition-timing-function:cubic-bezier(.45,0,.55,1)}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.comic{display:grid;grid-template-columns:1fr 6fr 4fr 9fr 6fr repeat(2,1fr);grid-template-rows:16px 2.35fr 1fr .5fr .3fr 1fr 1fr .35fr .45fr 1.25fr;margin:0 auto}.\[--auto-close\:inside\]{--auto-close: inside}.\[--placement\:bottom\]{--placement: bottom}.\[--placement\:top-left\]{--placement: top-left}.\[--trigger\:hover\]{--trigger: hover}.\[astro\:content-imports\]{astro:content-imports}.\[perspective\:1000px\]{perspective:1000px}.\[transform-style\:preserve-3d\]{transform-style:preserve-3d}.selection\:bg-cyan-400 *::-moz-selection{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.selection\:bg-cyan-400 *::selection{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.selection\:text-neutral-700 *::-moz-selection{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.selection\:text-neutral-700 *::selection{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.selection\:bg-cyan-400::-moz-selection{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.selection\:bg-cyan-400::selection{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.selection\:text-neutral-700::-moz-selection{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.selection\:text-neutral-700::selection{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.placeholder\:text-neutral-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.placeholder\:text-neutral-500::placeholder{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-x-0:before{content:var(--tw-content);left:0;right:0}.before\:-top-4:before{content:var(--tw-content);top:-1rem}.before\:end-2:before{content:var(--tw-content);inset-inline-end:.5rem}.before\:start-0:before{content:var(--tw-content);inset-inline-start:0px}.before\:start-1\/2:before{content:var(--tw-content);inset-inline-start:50%}.before\:top-0:before{content:var(--tw-content);top:0}.before\:top-1\/2:before{content:var(--tw-content);top:50%}.before\:-z-\[1\]:before{content:var(--tw-content);z-index:-1}.before\:z-\[1\]:before{content:var(--tw-content);z-index:1}.before\:me-6:before{content:var(--tw-content);margin-inline-end:1.5rem}.before\:size-1:before{content:var(--tw-content);width:.25rem;height:.25rem}.before\:size-full:before{content:var(--tw-content);width:100%;height:100%}.before\:h-4:before{content:var(--tw-content);height:1rem}.before\:w-full:before{content:var(--tw-content);width:100%}.before\:flex-\[1_1_0\%\]:before{content:var(--tw-content);flex:1 1 0%}.before\:-translate-x-1\/2:before{content:var(--tw-content);--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.before\:-translate-y-1\/2:before{content:var(--tw-content);--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.before\:transform:before{content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.before\:rounded-full:before{content:var(--tw-content);border-radius:9999px}.before\:border-t:before{content:var(--tw-content);border-top-width:1px}.before\:border-neutral-200:before{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity))}.before\:bg-neutral-300:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity))}.before\:bg-\[url\(\'https\:\/\/preline\.co\/assets\/svg\/examples\/squared-bg-element\.svg\'\)\]:before{content:var(--tw-content);background-image:url(https://preline.co/assets/svg/examples/squared-bg-element.svg)}.before\:bg-gradient-to-t:before{content:var(--tw-content);background-image:linear-gradient(to top,var(--tw-gradient-stops))}.before\:from-neutral-900\/\[\.7\]:before{content:var(--tw-content);--tw-gradient-from: rgb(23 23 23 / .7) var(--tw-gradient-from-position);--tw-gradient-to: rgb(23 23 23 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.before\:bg-top:before{content:var(--tw-content);background-position:top}.before\:bg-no-repeat:before{content:var(--tw-content);background-repeat:no-repeat}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:0}.after\:inset-2:after{content:var(--tw-content);inset:.5rem}.after\:inset-2\.5:after{content:var(--tw-content);inset:.625rem}.after\:-bottom-4:after{content:var(--tw-content);bottom:-1rem}.after\:start-0:after{content:var(--tw-content);inset-inline-start:0px}.after\:start-\[2px\]:after{content:var(--tw-content);inset-inline-start:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:ms-6:after{content:var(--tw-content);margin-inline-start:1.5rem}.after\:h-4:after{content:var(--tw-content);height:1rem}.after\:w-4:after{content:var(--tw-content);width:1rem}.after\:w-full:after{content:var(--tw-content);width:100%}.after\:flex-\[1_1_0\%\]:after{content:var(--tw-content);flex:1 1 0%}.after\:transform-gpu:after{content:var(--tw-content);transform:translate3d(var(--tw-translate-x),var(--tw-translate-y),0) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:rounded-xl:after{content:var(--tw-content);border-radius:.75rem}.after\:border:after{content:var(--tw-content);border-width:1px}.after\:border-t:after{content:var(--tw-content);border-top-width:1px}.after\:border-gray-300:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.after\:border-neutral-200:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity))}.after\:bg-cyan-600:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.after\:bg-white:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.after\:bg-gradient-to-b:after{content:var(--tw-content);background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.after\:from-neutral-100:after{content:var(--tw-content);--tw-gradient-from: #f5f5f5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 245 245 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.after\:to-neutral-50:after{content:var(--tw-content);--tw-gradient-to: #fafafa var(--tw-gradient-to-position)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:mix-blend-color:after{content:var(--tw-content);mix-blend-mode:color}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:content-\[\'\'\]:after{--tw-content: "";content:var(--tw-content)}.first\:pt-0:first-child{padding-top:0}.last\:pb-0:last-child{padding-bottom:0}.last\:pe-0:last-child{padding-inline-end:0px}.last-of-type\:before\:hidden:last-of-type:before{content:var(--tw-content);display:none}.hover\:rotate-12:hover{--tw-rotate: 12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-2:hover{--tw-rotate: 2deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[3\]:hover{--tw-scale-x: 3;--tw-scale-y: 3;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-double:hover{border-style:double}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.hover\:border-neutral-100\/70:hover{border-color:#f5f5f5b3}.hover\:border-transparent:hover{border-color:transparent}.hover\:border-yellow-500:hover{--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity))}.hover\:border-opacity-100:hover{--tw-border-opacity: 1}.hover\:bg-blue-400:hover{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.hover\:bg-cyan-200:hover{--tw-bg-opacity: 1;background-color:rgb(165 243 252 / var(--tw-bg-opacity))}.hover\:bg-cyan-300:hover{--tw-bg-opacity: 1;background-color:rgb(103 232 249 / var(--tw-bg-opacity))}.hover\:bg-cyan-400:hover{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.hover\:bg-cyan-500:hover{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.hover\:bg-cyan-600:hover{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.hover\:bg-cyan-700:hover{--tw-bg-opacity: 1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))}.hover\:bg-cyan-800:hover{--tw-bg-opacity: 1;background-color:rgb(21 94 117 / var(--tw-bg-opacity))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.hover\:bg-indigo-600:hover{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity))}.hover\:bg-neutral-100:hover{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity))}.hover\:bg-neutral-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity))}.hover\:bg-neutral-400\/30:hover{background-color:#a3a3a34d}.hover\:bg-neutral-400\/50:hover{background-color:#a3a3a380}.hover\:bg-neutral-500\/10:hover{background-color:#7373731a}.hover\:bg-offset:hover{--tw-bg-opacity: 1;background-color:rgb(35 38 45 / var(--tw-bg-opacity))}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.hover\:bg-transparent:hover{background-color:transparent}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.hover\:bg-yellow-500:hover{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity))}.hover\:bg-zinc-600:hover{--tw-bg-opacity: 1;background-color:rgb(82 82 91 / var(--tw-bg-opacity))}.hover\:bg-zinc-900:hover{--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity))}.hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.hover\:bg-opacity-30:hover{--tw-bg-opacity: .3}.hover\:bg-opacity-50:hover{--tw-bg-opacity: .5}.hover\:bg-gradient-to-r:hover{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.hover\:from-cyan-500:hover{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-gray-50:hover{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-yellow-50:hover{--tw-gradient-from: #fefce8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(254 252 232 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:via-indigo-300:hover{--tw-gradient-to: rgb(165 180 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #a5b4fc var(--tw-gradient-via-position), var(--tw-gradient-to)}.hover\:to-cyan-400:hover{--tw-gradient-to: #22d3ee var(--tw-gradient-to-position)}.hover\:to-cyan-50:hover{--tw-gradient-to: #ecfeff var(--tw-gradient-to-position)}.hover\:to-white:hover{--tw-gradient-to: #ffffff var(--tw-gradient-to-position)}.hover\:pl-10:hover{padding-left:2.5rem}.hover\:pr-6:hover{padding-right:1.5rem}.hover\:text-cyan-200:hover{--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.hover\:text-cyan-400:hover{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.hover\:text-cyan-500:hover{--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.hover\:text-neutral-50\/70:hover{color:#fafafab3}.hover\:text-neutral-500:hover{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.hover\:text-neutral-600:hover{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}.hover\:text-neutral-700:hover{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.hover\:text-zinc-800:hover{--tw-text-opacity: 1;color:rgb(39 39 42 / var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:no-underline:hover{text-decoration-line:none}.hover\:shadow-2xl:hover{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-yellow-500:hover{--tw-shadow-color: #eab308;--tw-shadow: var(--tw-shadow-colored)}.hover\:ring-1:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:ring-2:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:ring-cyan-400:hover{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 211 238 / var(--tw-ring-opacity))}.hover\:ring-cyan-500:hover{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity))}.hover\:ring-offset-2:hover{--tw-ring-offset-width: 2px}.hover\:ring-offset-indigo-500:hover{--tw-ring-offset-color: #6366f1}.hover\:backdrop-brightness-125:hover{--tw-backdrop-brightness: brightness(1.25);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.focus\:z-10:focus{z-index:10}.focus\:border-cyan-400:focus{--tw-border-opacity: 1;border-color:rgb(34 211 238 / var(--tw-border-opacity))}.focus\:border-cyan-500:focus{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity))}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity))}.focus\:border-neutral-200:focus{--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity))}.focus\:bg-gray-100:focus{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.focus\:bg-neutral-100:focus{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity))}.focus\:ring-cyan-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(207 250 254 / var(--tw-ring-opacity))}.focus\:ring-cyan-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(103 232 249 / var(--tw-ring-opacity))}.focus\:ring-cyan-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 211 238 / var(--tw-ring-opacity))}.focus\:ring-cyan-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity))}.focus\:ring-cyan-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(8 145 178 / var(--tw-ring-opacity))}.focus\:ring-gray-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(243 244 246 / var(--tw-ring-opacity))}.focus\:ring-indigo-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity))}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity))}.focus\:ring-kbve:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(140 82 255 / var(--tw-ring-opacity))}.focus\:ring-neutral-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(163 163 163 / var(--tw-ring-opacity))}.focus\:ring-yellow-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(250 204 21 / var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus\:ring-offset-white:focus{--tw-ring-offset-color: #ffffff}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-zinc-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(113 113 122 / var(--tw-ring-opacity))}.active\:border-cyan-600:active{--tw-border-opacity: 1;border-color:rgb(8 145 178 / var(--tw-border-opacity))}.active\:bg-cyan-400:active{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.active\:bg-cyan-500:active{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.active\:to-white:active{--tw-gradient-to: #ffffff var(--tw-gradient-to-position)}.active\:text-gray-300:active{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.active\:text-neutral-700:active{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.active\:shadow-none:active{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.disabled\:pointer-events-none:disabled{pointer-events:none}@keyframes pulse{50%{opacity:.5}}.disabled\:animate-pulse:disabled{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:top-0{top:0}.group:hover .group-hover\:-mr-4{margin-right:-1rem}.group:hover .group-hover\:-mt-4{margin-top:-1rem}.group:hover .group-hover\:mb-0{margin-bottom:0}.group:hover .group-hover\:mb-12{margin-bottom:3rem}.group:hover .group-hover\:mb-32{margin-bottom:8rem}.group:hover .group-hover\:ml-0{margin-left:0}.group:hover .group-hover\:mr-0{margin-right:0}.group:hover .group-hover\:mt-0{margin-top:0}.group:hover .group-hover\:h-32{height:8rem}.group:hover .group-hover\:h-56{height:14rem}.group:hover .group-hover\:h-64{height:16rem}.group:hover .group-hover\:h-full{height:100%}.group:hover .group-hover\:w-32{width:8rem}.group:hover .group-hover\:w-56{width:14rem}.group:hover .group-hover\:w-full{width:100%}.group\/bento:hover .group-hover\/bento\:translate-x-2{--tw-translate-x: .5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-x-0{--tw-translate-x: -0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-x-40{--tw-translate-x: -10rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-x-8{--tw-translate-x: -2rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-x-96{--tw-translate-x: -24rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-0{--tw-translate-y: -0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-32{--tw-translate-y: -8rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-12{--tw-translate-x: 3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-y-1{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-rotate-180{--tw-rotate: -180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:rotate-6{--tw-rotate: 6deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-skew-x-12{--tw-skew-x: -12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:skew-x-12{--tw-skew-x: 12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-scale-y-150{--tw-scale-y: -1.5;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-\[25px\]{border-width:25px}.group:hover .group-hover\:bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-cyan-500{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-cyan-600{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-cyan-700{--tw-bg-opacity: 1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-opacity-0{--tw-bg-opacity: 0}.group:hover .group-hover\:bg-opacity-50{--tw-bg-opacity: .5}.group:hover .group-hover\:from-\[\#ff00c6\]{--tw-gradient-from: #ff00c6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 0 198 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:via-\[\#ff5478\]{--tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to)}.group:hover .group-hover\:to-\[\#ff8a05\]{--tw-gradient-to: #ff8a05 var(--tw-gradient-to-position)}.group:hover .group-hover\:text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.group:hover .group-hover\:text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity))}.group:hover .group-hover\:text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.group:hover .group-hover\:text-kbve-primary-light{--tw-text-opacity: 1;color:rgb(72 187 120 / var(--tw-text-opacity))}.group:hover .group-hover\:text-neutral-50\/\[\.8\]{color:#fafafacc}.group:hover .group-hover\:text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.group:hover .group-hover\:text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}.group:hover .group-hover\:text-neutral-700{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.group:hover .group-hover\:text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}.group:hover .group-hover\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.group:hover .group-hover\:underline{text-decoration-line:underline}.group\/product:hover .group-hover\/product\:opacity-100{opacity:1}.group\/product:hover .group-hover\/product\:opacity-80{opacity:.8}.group:hover .group-hover\:opacity-10{opacity:.1}.group:hover .group-hover\:opacity-100{opacity:1}.group\/card:hover .group-hover\/card\:shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group\/product:hover .group-hover\/product\:shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group:hover .group-hover\:blur-none{--tw-blur: blur(0);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.group:hover .group-hover\:blur-sm{--tw-blur: blur(4px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.group:focus-visible .group-focus-visible\:-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:focus-visible .group-focus-visible\:translate-y-1{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:active .group-active\:bg-transparent{background-color:transparent}.group:active .group-active\:opacity-0{opacity:0}.peer:checked~.peer-checked\:bg-cyan-600{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))}.peer:checked~.peer-checked\:from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.peer:checked~.peer-checked\:to-cyan-100{--tw-gradient-to: #cffafe var(--tw-gradient-to-position)}.peer:checked~.peer-checked\:drop-shadow-sm{--tw-drop-shadow: drop-shadow(0 1px 1px rgb(0 0 0 / .05));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.peer:checked~.peer-checked\:after\:inset-1:after{content:var(--tw-content);inset:.25rem}.peer:checked~.peer-checked\:after\:translate-x-full:after{content:var(--tw-content);--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:after\:border-white:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.peer:checked~.peer-checked\:after\:from-neutral-200:after{content:var(--tw-content);--tw-gradient-from: #e5e5e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(229 229 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.peer:checked~.peer-checked\:after\:to-neutral-100:after{content:var(--tw-content);--tw-gradient-to: #f5f5f5 var(--tw-gradient-to-position)}.peer:checked~.peer-checked\:after\:opacity-100:after{content:var(--tw-content);opacity:1}.peer:focus~.peer-focus\:outline-none{outline:2px solid transparent;outline-offset:2px}.peer:focus~.peer-focus\:ring-4{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.peer:focus~.peer-focus\:ring-cyan-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(103 232 249 / var(--tw-ring-opacity))}.prose-headings\:text-cyan-200 :is(:where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.prose-p\:text-yellow-500 :is(:where(p):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.prose-a\:text-cyan-200 :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.prose-code\:text-cyan-200 :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.prose-code\:before\:content-none :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))):before{--tw-content: none;content:var(--tw-content)}.prose-code\:after\:content-none :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))):after{--tw-content: none;content:var(--tw-content)}.prose-ul\:text-yellow-500 :is(:where(ul):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.prose-li\:text-yellow-500 :is(:where(li):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.prose-tr\:border-b-indigo-500\/10 :is(:where(tr):not(:where([class~=not-prose],[class~=not-prose] *))){border-bottom-color:#6366f11a}.prose-tr\:text-cyan-200 :is(:where(tr):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity))}.prose-td\:text-yellow-500 :is(:where(td):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.hs-dropdown.open>.hs-dropdown-open\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hs-dropdown.open>.hs-dropdown-open\:opacity-100{opacity:1}.hs-dropdown.open>.hs-dropdown-toggle .hs-dropdown-open\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hs-dropdown.open>.hs-dropdown-toggle .hs-dropdown-open\:opacity-100{opacity:1}.hs-dropdown.open>.hs-dropdown-menu>.hs-dropdown-open\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hs-dropdown.open>.hs-dropdown-menu>.hs-dropdown-open\:opacity-100{opacity:1}.hs-accordion.active.hs-accordion-active\:block{display:block}.hs-accordion.active.hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-toggle .hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-toggle .hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-heading>.hs-accordion-toggle .hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-heading>.hs-accordion-toggle .hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-toggle.hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-toggle.hs-accordion-active\:hidden{display:none}.hs-accordion.active>.hs-accordion-heading>.hs-accordion-toggle.hs-accordion-active\:block{display:block}.hs-accordion.active>.hs-accordion-heading>.hs-accordion-toggle.hs-accordion-active\:hidden{display:none}.hs-collapse.open .hs-collapse-open\:block{display:block}.hs-collapse.open .hs-collapse-open\:hidden{display:none}.hs-collapse.open.hs-collapse-open\:block{display:block}.hs-collapse.open.hs-collapse-open\:hidden{display:none}.hs-collapse-toggle.open .hs-collapse-open\:block{display:block}.hs-collapse-toggle.open .hs-collapse-open\:hidden{display:none}.hs-collapse-toggle.open.hs-collapse-open\:block{display:block}.hs-collapse-toggle.open.hs-collapse-open\:hidden{display:none}[data-hs-tab].active.hs-tab-active\:bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity))}[data-hs-tab].active.hs-tab-active\:fill-cyan-400{fill:#22d3ee}[data-hs-tab].active.hs-tab-active\:text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}[data-hs-tab].active.hs-tab-active\:text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}[data-hs-tab].active.hs-tab-active\:shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}[data-hs-tab].active.hs-tab-active\:hover\:border-transparent:hover{border-color:transparent}[data-hs-tab].active .hs-tab-active\:bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity))}[data-hs-tab].active .hs-tab-active\:fill-cyan-400{fill:#22d3ee}[data-hs-tab].active .hs-tab-active\:text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}[data-hs-tab].active .hs-tab-active\:text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}[data-hs-tab].active .hs-tab-active\:shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}[data-hs-tab].active .hs-tab-active\:hover\:border-transparent:hover{border-color:transparent}.open.hs-overlay-open\:mt-7{margin-top:1.75rem}.open.hs-overlay-open\:opacity-100{opacity:1}.open.hs-overlay-open\:duration-500{transition-duration:.5s}.open .hs-overlay-open\:mt-7{margin-top:1.75rem}.open .hs-overlay-open\:opacity-100{opacity:1}.open .hs-overlay-open\:duration-500{transition-duration:.5s}.hs-overlay-backdrop.hs-overlay-backdrop-open\:bg-neutral-900\/90,.hs-overlay-backdrop .hs-overlay-backdrop-open\:bg-neutral-900\/90{background-color:#171717e6}.selected .hs-combo-box-selected\:block,.selected.hs-combo-box-selected\:block{display:block}.dark .hs-dark-mode-active\:flex{display:flex}.dark .hs-dark-mode-active\:hidden{display:none}.dark\:divide-neutral-700:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(64 64 64 / var(--tw-divide-opacity))}.dark\:border:is(.dark *){border-width:1px}.dark\:border-cyan-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(34 211 238 / var(--tw-border-opacity))}.dark\:border-gray-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.dark\:border-gray-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.dark\:border-neutral-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(115 115 115 / var(--tw-border-opacity))}.dark\:border-neutral-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity))}.dark\:border-neutral-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(64 64 64 / var(--tw-border-opacity))}.dark\:border-neutral-700\/40:is(.dark *){border-color:#40404066}.dark\:border-transparent:is(.dark *){border-color:transparent}.dark\:border-white\/\[0\.2\]:is(.dark *){border-color:#fff3}.dark\:bg-black:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.dark\:bg-cyan-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity))}.dark\:bg-gray-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.dark\:bg-gray-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:bg-gray-900\/\[\.80\]:is(.dark *){background-color:#111827cc}.dark\:bg-neutral-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity))}.dark\:bg-neutral-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity))}.dark\:bg-neutral-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity))}.dark\:bg-neutral-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.dark\:bg-neutral-700\/30:is(.dark *){background-color:#4040404d}.dark\:bg-neutral-700\/60:is(.dark *){background-color:#40404099}.dark\:bg-neutral-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.dark\:bg-neutral-800\/80:is(.dark *){background-color:#262626cc}.dark\:bg-neutral-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity))}.dark\:bg-neutral-900\/30:is(.dark *){background-color:#1717174d}.dark\:bg-orange-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(254 215 170 / var(--tw-bg-opacity))}.dark\:bg-white:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.dark\:bg-white\/\[\.05\]:is(.dark *){background-color:#ffffff0d}.dark\:bg-white\/\[\.075\]:is(.dark *){background-color:#ffffff13}.dark\:bg-zinc-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(63 63 70 / var(--tw-bg-opacity))}.dark\:bg-zinc-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity))}.dark\:bg-opacity-80:is(.dark *){--tw-bg-opacity: .8}.dark\:from-cyan-200:is(.dark *){--tw-gradient-from: #a5f3fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(165 243 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-cyan-900:is(.dark *){--tw-gradient-from: #164e63 var(--tw-gradient-from-position);--tw-gradient-to: rgb(22 78 99 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:via-indigo-200:is(.dark *){--tw-gradient-to: rgb(199 210 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #c7d2fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:to-cyan-700:is(.dark *){--tw-gradient-to: #0e7490 var(--tw-gradient-to-position)}.dark\:to-yellow-50:is(.dark *){--tw-gradient-to: #fefce8 var(--tw-gradient-to-position)}.dark\:fill-cyan-300:is(.dark *){fill:#67e8f9}.dark\:fill-neutral-200:is(.dark *){fill:#e5e5e5}.dark\:fill-neutral-300:is(.dark *){fill:#d4d4d4}.dark\:fill-red-500:is(.dark *){fill:#ef4444}.dark\:text-black:is(.dark *){--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity))}.dark\:text-cyan-300:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.dark\:text-cyan-400:is(.dark *){--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.dark\:text-gray-900:is(.dark *){--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.dark\:text-neutral-100:is(.dark *){--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity))}.dark\:text-neutral-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}.dark\:text-neutral-300:is(.dark *){--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.dark\:text-neutral-400:is(.dark *){--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.dark\:text-neutral-50:is(.dark *){--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity))}.dark\:text-neutral-500:is(.dark *){--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.dark\:text-neutral-600:is(.dark *){--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity))}.dark\:text-neutral-700:is(.dark *){--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity: 1;color:rgb(251 113 59 / var(--tw-text-opacity))}.dark\:text-red-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}.dark\:text-red-500:is(.dark *){--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity))}.dark\:text-zinc-400:is(.dark *){--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity))}.dark\:shadow-neutral-900\/\[\.2\]:is(.dark *){--tw-shadow-color: rgb(23 23 23 / .2);--tw-shadow: var(--tw-shadow-colored)}.dark\:ring-zinc-200:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(228 228 231 / var(--tw-ring-opacity))}.dark\:ring-zinc-800:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(39 39 42 / var(--tw-ring-opacity))}.dark\:backdrop-blur-md:is(.dark *){--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.dark\:backdrop-brightness-100:is(.dark *){--tw-backdrop-brightness: brightness(1);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.dark\:placeholder\:text-neutral-300:is(.dark *)::-moz-placeholder{--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.dark\:placeholder\:text-neutral-300:is(.dark *)::placeholder{--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.dark\:placeholder\:text-neutral-400:is(.dark *)::-moz-placeholder{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.dark\:placeholder\:text-neutral-400:is(.dark *)::placeholder{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.dark\:before\:border-neutral-600:is(.dark *):before{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity))}.dark\:before\:bg-neutral-600:is(.dark *):before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity))}.dark\:before\:bg-\[url\(\'https\:\/\/preline\.co\/assets\/svg\/examples-dark\/squared-bg-element\.svg\'\)\]:is(.dark *):before{content:var(--tw-content);background-image:url(https://preline.co/assets/svg/examples-dark/squared-bg-element.svg)}.dark\:after\:border-neutral-600:is(.dark *):after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity))}.dark\:checked\:border-yellow-400:checked:is(.dark *){--tw-border-opacity: 1;border-color:rgb(250 204 21 / var(--tw-border-opacity))}.dark\:checked\:bg-yellow-400:checked:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity))}.dark\:hover\:border-neutral-600:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity))}.dark\:hover\:border-neutral-700\/70:hover:is(.dark *){border-color:#404040b3}.dark\:hover\:border-yellow-500:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity))}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:hover\:bg-gray-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:hover\:bg-neutral-50\/10:hover:is(.dark *){background-color:#fafafa1a}.dark\:hover\:bg-neutral-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.dark\:hover\:bg-neutral-700\/60:hover:is(.dark *){background-color:#40404099}.dark\:hover\:bg-neutral-700\/80:hover:is(.dark *){background-color:#404040cc}.dark\:hover\:bg-neutral-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.dark\:hover\:bg-neutral-900:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity))}.dark\:hover\:bg-yellow-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity))}.dark\:hover\:bg-zinc-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(82 82 91 / var(--tw-bg-opacity))}.dark\:hover\:text-cyan-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-100:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-50:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-500:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-700:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity))}.dark\:hover\:text-neutral-800\/70:hover:is(.dark *){color:#262626b3}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:hover\:text-zinc-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(228 228 231 / var(--tw-text-opacity))}.dark\:hover\:shadow-2xl:hover:is(.dark *){--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:focus\:bg-neutral-700:focus:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.dark\:focus\:bg-neutral-800:focus:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.dark\:focus\:outline-none:focus:is(.dark *){outline:2px solid transparent;outline-offset:2px}.dark\:focus\:ring-1:focus:is(.dark *){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.dark\:focus\:ring-gray-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-700:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(55 65 81 / var(--tw-ring-opacity))}.dark\:focus\:ring-neutral-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(82 82 82 / var(--tw-ring-opacity))}.dark\:focus\:ring-offset-gray-800:focus:is(.dark *){--tw-ring-offset-color: #1f2937}.dark\:focus\:ring-offset-neutral-800:focus:is(.dark *){--tw-ring-offset-color: #262626}.group:hover .dark\:group-hover\:text-neutral-400:is(.dark *){--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.group:hover .dark\:group-hover\:text-neutral-50:is(.dark *){--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity))}.group:hover .dark\:group-hover\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.group:hover .group-hover\:dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}[data-hs-tab].active.dark\:hs-tab-active\:bg-neutral-700\/60:is(.dark *){background-color:#40404099}[data-hs-tab].active.dark\:hs-tab-active\:fill-cyan-300:is(.dark *){fill:#67e8f9}[data-hs-tab].active.dark\:hs-tab-active\:text-cyan-300:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}[data-hs-tab].active.dark\:hs-tab-active\:text-neutral-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}[data-hs-tab].active .dark\:hs-tab-active\:bg-neutral-700\/60:is(.dark *){background-color:#40404099}[data-hs-tab].active .dark\:hs-tab-active\:fill-cyan-300:is(.dark *){fill:#67e8f9}[data-hs-tab].active .dark\:hs-tab-active\:text-cyan-300:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}[data-hs-tab].active .dark\:hs-tab-active\:text-neutral-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}@media (min-width: 640px){.sm\:order-1{order:1}.sm\:order-2{order:2}.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:mx-0{margin-left:0;margin-right:0}.sm\:mx-auto{margin-left:auto;margin-right:auto}.sm\:my-10{margin-top:2.5rem;margin-bottom:2.5rem}.sm\:mb-1{margin-bottom:.25rem}.sm\:mb-10{margin-bottom:2.5rem}.sm\:mb-8{margin-bottom:2rem}.sm\:ms-4{margin-inline-start:1rem}.sm\:mt-10{margin-top:2.5rem}.sm\:mt-12{margin-top:3rem}.sm\:mt-3{margin-top:.75rem}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:grid{display:grid}.sm\:hidden{display:none}.sm\:h-14{height:3.5rem}.sm\:h-3\/4{height:75%}.sm\:h-8{height:2rem}.sm\:h-\[2\.875rem\]{height:2.875rem}.sm\:w-1\/2{width:50%}.sm\:w-11\/12{width:91.666667%}.sm\:w-14{width:3.5rem}.sm\:w-3\/4{width:75%}.sm\:w-80{width:20rem}.sm\:w-\[100\%\]{width:100%}.sm\:w-\[2\.875rem\]{width:2.875rem}.sm\:w-\[30rem\]{width:30rem}.sm\:w-\[45\%\]{width:45%}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-4xl{max-width:56rem}.sm\:max-w-lg{max-width:32rem}.sm\:max-w-xl{max-width:36rem}.sm\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-start{justify-content:flex-start}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:gap-0{gap:0px}.sm\:gap-2{gap:.5rem}.sm\:gap-3{gap:.75rem}.sm\:gap-8{gap:2rem}.sm\:gap-x-12{-moz-column-gap:3rem;column-gap:3rem}.sm\:gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.sm\:gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.sm\:gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.sm\:gap-y-0{row-gap:0px}.sm\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.sm\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.sm\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.sm\:rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.sm\:border-s{border-inline-start-width:1px}.sm\:border-t-0{border-top-width:0px}.sm\:p-10{padding:2.5rem}.sm\:p-6{padding:1.5rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:px-10{padding-left:2.5rem;padding-right:2.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-0{padding-top:0;padding-bottom:0}.sm\:py-16{padding-top:4rem;padding-bottom:4rem}.sm\:py-8{padding-top:2rem;padding-bottom:2rem}.sm\:pb-0{padding-bottom:0}.sm\:pe-5{padding-inline-end:1.25rem}.sm\:ps-5{padding-inline-start:1.25rem}.sm\:pt-0{padding-top:0}.sm\:pt-\[100\%\]{padding-top:100%}.sm\:pt-\[70\%\]{padding-top:70%}.sm\:text-center{text-align:center}.sm\:text-start{text-align:start}.sm\:text-end{text-align:end}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}.sm\:backdrop-brightness-100{--tw-backdrop-brightness: brightness(1);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}}@media (min-width: 768px){.md\:inset-0{inset:0}.md\:\!left-\[70\%\]{left:70%!important}.md\:\!left-\[90\%\]{left:90%!important}.md\:\!top-\[80\%\]{top:80%!important}.md\:-bottom-10{bottom:-2.5rem}.md\:left-12{left:3rem}.md\:top-16{top:4rem}.md\:top-\[20\%\]{top:20%}.md\:order-2{order:2}.md\:col-span-2{grid-column:span 2 / span 2}.md\:col-span-3{grid-column:span 3 / span 3}.md\:my-10{margin-top:2.5rem;margin-bottom:2.5rem}.md\:my-6{margin-top:1.5rem;margin-bottom:1.5rem}.md\:-ml-12{margin-left:-3rem}.md\:mb-0{margin-bottom:0}.md\:mb-12{margin-bottom:3rem}.md\:mb-16{margin-bottom:4rem}.md\:mb-2{margin-bottom:.5rem}.md\:mb-28{margin-bottom:7rem}.md\:mb-6{margin-bottom:1.5rem}.md\:mb-8{margin-bottom:2rem}.md\:ml-5{margin-left:1.25rem}.md\:ml-auto{margin-left:auto}.md\:mr-0{margin-right:0}.md\:mt-0{margin-top:0}.md\:mt-10{margin-top:2.5rem}.md\:mt-12{margin-top:3rem}.md\:mt-16{margin-top:4rem}.md\:mt-4{margin-top:1rem}.md\:block{display:block}.md\:inline-block{display:inline-block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:h-12{height:3rem}.md\:h-4{height:1rem}.md\:h-7{height:1.75rem}.md\:h-80{height:20rem}.md\:h-96{height:24rem}.md\:h-\[300vh\]{height:300vh}.md\:h-\[40rem\]{height:40rem}.md\:h-\[90\%\]{height:90%}.md\:h-auto{height:auto}.md\:w-1\/2{width:50%}.md\:w-1\/4{width:25%}.md\:w-3\/4{width:75%}.md\:w-32{width:8rem}.md\:w-4{width:1rem}.md\:w-48{width:12rem}.md\:w-6\/12{width:50%}.md\:w-7{width:1.75rem}.md\:w-96{width:24rem}.md\:w-\[30\%\]{width:30%}.md\:w-\[30rem\]{width:30rem}.md\:w-auto{width:auto}.md\:w-full{width:100%}.md\:max-w-full{max-width:100%}.md\:-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:auto-rows-\[18rem\]{grid-auto-rows:18rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:flex-wrap{flex-wrap:wrap}.md\:flex-nowrap{flex-wrap:nowrap}.md\:items-center{align-items:center}.md\:justify-start{justify-content:flex-start}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:gap-12{gap:3rem}.md\:gap-6{gap:1.5rem}.md\:gap-8{gap:2rem}.md\:gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.md\:gap-y-0{row-gap:0px}.md\:gap-y-4{row-gap:1rem}.md\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.md\:space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.md\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.md\:border-s{border-inline-start-width:1px}.md\:border-neutral-300{--tw-border-opacity: 1;border-color:rgb(212 212 212 / var(--tw-border-opacity))}.md\:p-16{padding:4rem}.md\:p-5{padding:1.25rem}.md\:p-6{padding:1.5rem}.md\:p-\[400px\]{padding:400px}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:px-24{padding-left:6rem;padding-right:6rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:px-7{padding-left:1.75rem;padding-right:1.75rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-0{padding-top:0;padding-bottom:0}.md\:py-3{padding-top:.75rem;padding-bottom:.75rem}.md\:py-40{padding-top:10rem;padding-bottom:10rem}.md\:ps-6{padding-inline-start:1.5rem}.md\:ps-7{padding-inline-start:1.75rem}.md\:pt-8{padding-top:2rem}.md\:text-left{text-align:left}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:leading-tight{line-height:1.25}}@media (min-width: 1024px){.lg\:order-2{order:2}.lg\:order-none{order:0}.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-4{grid-column:span 4 / span 4}.lg\:col-span-5{grid-column:span 5 / span 5}.lg\:col-span-6{grid-column:span 6 / span 6}.lg\:col-span-7{grid-column:span 7 / span 7}.lg\:col-span-8{grid-column:span 8 / span 8}.lg\:col-start-1{grid-column-start:1}.lg\:col-start-6{grid-column-start:6}.lg\:col-start-8{grid-column-start:8}.lg\:col-end-13{grid-column-end:13}.lg\:mb-0{margin-bottom:0}.lg\:mb-14{margin-bottom:3.5rem}.lg\:ml-0{margin-left:0}.lg\:mt-0{margin-top:0}.lg\:mt-10{margin-top:2.5rem}.lg\:mt-16{margin-top:4rem}.lg\:grid{display:grid}.lg\:aspect-auto{aspect-ratio:auto}.lg\:h-full{height:100%}.lg\:w-1\/2{width:50%}.lg\:w-1\/3{width:33.333333%}.lg\:w-16{width:4rem}.lg\:w-3\/4{width:75%}.lg\:w-3\/5{width:60%}.lg\:w-4\/5{width:80%}.lg\:w-96{width:24rem}.lg\:max-w-5xl{max-width:64rem}.lg\:max-w-lg{max-width:32rem}.lg\:max-w-screen-xl{max-width:1280px}.lg\:translate-x-20{--tw-translate-x: 5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:gap-12{gap:3rem}.lg\:gap-16{gap:4rem}.lg\:gap-x-24{-moz-column-gap:6rem;column-gap:6rem}.lg\:gap-x-7{-moz-column-gap:1.75rem;column-gap:1.75rem}.lg\:space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.lg\:p-8{padding:2rem}.lg\:px-16{padding-left:4rem;padding-right:4rem}.lg\:px-6{padding-left:1.5rem;padding-right:1.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.lg\:py-12{padding-top:3rem;padding-bottom:3rem}.lg\:py-14{padding-top:3.5rem;padding-bottom:3.5rem}.lg\:py-16{padding-top:4rem;padding-bottom:4rem}.lg\:py-20{padding-top:5rem;padding-bottom:5rem}.lg\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.lg\:pb-14{padding-bottom:3.5rem}.lg\:pe-6{padding-inline-end:1.5rem}.lg\:pl-5{padding-left:1.25rem}.lg\:pt-10{padding-top:2.5rem}.lg\:pt-14{padding-top:3.5rem}.lg\:pt-20{padding-top:5rem}.lg\:text-right{text-align:right}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-7xl{font-size:4.5rem;line-height:1}.lg\:text-9xl{font-size:8rem;line-height:1}.lg\:leading-tight{line-height:1.25}.lg\:before\:absolute:before{content:var(--tw-content);position:absolute}.lg\:before\:-start-12:before{content:var(--tw-content);inset-inline-start:-3rem}.lg\:before\:top-0:before{content:var(--tw-content);top:0}.lg\:before\:h-full:before{content:var(--tw-content);height:100%}.lg\:before\:w-px:before{content:var(--tw-content);width:1px}.lg\:before\:bg-neutral-300:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity))}.lg\:before\:dark\:bg-neutral-700:is(.dark *):before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}}@media (min-width: 1280px){.xl\:bottom-\[15\%\]{bottom:15%}.xl\:left-\[10\%\]{left:10%}.xl\:left-\[35\%\]{left:35%}.xl\:top-\[25\%\]{top:25%}.xl\:col-span-2{grid-column:span 2 / span 2}.xl\:col-span-3{grid-column:span 3 / span 3}.xl\:mx-auto{margin-left:auto;margin-right:auto}.xl\:w-full{width:100%}.xl\:gap-16{gap:4rem}.xl\:gap-8{gap:2rem}.xl\:pe-12{padding-inline-end:3rem}.xl\:text-4xl{font-size:2.25rem;line-height:2.5rem}.xl\:text-5xl{font-size:3rem;line-height:1}.xl\:leading-tight{line-height:1.25}}@media (min-width: 1536px){.\32xl\:w-4\/5{width:80%}.\32xl\:max-w-full{max-width:100%}.\32xl\:max-w-screen-2xl{max-width:1536px}.\32xl\:text-5xl{font-size:3rem;line-height:1}.\32xl\:text-base{font-size:1rem;line-height:1.5rem}}.rtl\:rotate-180:where([dir=rtl],[dir=rtl] *){--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:text-right:where([dir=rtl],[dir=rtl] *){text-align:right}.peer:checked~.rtl\:peer-checked\:after\:translate-x-\[-100\%\]:where([dir=rtl],[dir=rtl] *):after{content:var(--tw-content);--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>\*\]\:\[transform-style\:preserve-3d\]>*{transform-style:preserve-3d}
diff --git a/docs/_astro/loader.glmVqvBr.js b/docs/_astro/loader.Cx4kMRI2.js
similarity index 91%
rename from docs/_astro/loader.glmVqvBr.js
rename to docs/_astro/loader.Cx4kMRI2.js
index 4416067819..adbbe7c8ef 100644
--- a/docs/_astro/loader.glmVqvBr.js
+++ b/docs/_astro/loader.Cx4kMRI2.js
@@ -1 +1 @@
-import{D as o}from"./npchandler.CsnXuAhR.js";var m=(n=>(n.DARK="dark",n.LIGHT="light",n))(m||{});function d(n){const{elementIdOrName:t,duration:r=500,onComplete:i}=n;let e=null;if(e=document.getElementById(t),!e){const a=document.getElementsByName(t);a.length>0&&(e=a[0])}if(!e){o.error(`Loader element with ID or name "${t}" not found.`);return}if(!(e instanceof HTMLElement)){o.error(`Element found by "${t}" is not an HTMLElement.`);return}o.log(`Removing loader element with ID or name "${t}" with duration ${r}ms.`),e.classList.add("opacity-0","transition-opacity",`duration-${r}`),setTimeout(()=>{e&&(e.style.display="none"),o.log(`Loader element with ID or name "${t}" has been hidden.`),i&&i()},r)}export{m as C,d as r};
+import{D as o}from"./npchandler.6lM6j_9q.js";var m=(n=>(n.DARK="dark",n.LIGHT="light",n))(m||{});function d(n){const{elementIdOrName:t,duration:r=500,onComplete:i}=n;let e=null;if(e=document.getElementById(t),!e){const a=document.getElementsByName(t);a.length>0&&(e=a[0])}if(!e){o.error(`Loader element with ID or name "${t}" not found.`);return}if(!(e instanceof HTMLElement)){o.error(`Element found by "${t}" is not an HTMLElement.`);return}o.log(`Removing loader element with ID or name "${t}" with duration ${r}ms.`),e.classList.add("opacity-0","transition-opacity",`duration-${r}`),setTimeout(()=>{e&&(e.style.display="none"),o.log(`Loader element with ID or name "${t}" has been hidden.`),i&&i()},r)}export{m as C,d as r};
diff --git a/docs/_astro/npchandler.CsnXuAhR.js b/docs/_astro/npchandler.6lM6j_9q.js
similarity index 90%
rename from docs/_astro/npchandler.CsnXuAhR.js
rename to docs/_astro/npchandler.6lM6j_9q.js
index 8ac7fade24..e67d81f870 100644
--- a/docs/_astro/npchandler.CsnXuAhR.js
+++ b/docs/_astro/npchandler.6lM6j_9q.js
@@ -7,4 +7,4 @@ import{_ as Nt}from"./preload-helper.ygWHROA3.js";import{b as Vi,m as pa,p as ma
`+o):r.stack=o}throw r}}_request(e,t){typeof e=="string"?(t=t||{},t.url=e):t=e||{},t=Lt(this.defaults,t);const{transitional:r,paramsSerializer:a,headers:o}=t;r!==void 0&&cs.assertOptions(r,{silentJSONParsing:Xe.transitional(Xe.boolean),forcedJSONParsing:Xe.transitional(Xe.boolean),clarifyTimeoutError:Xe.transitional(Xe.boolean)},!1),a!=null&&(I.isFunction(a)?t.paramsSerializer={serialize:a}:cs.assertOptions(a,{encode:Xe.function,serialize:Xe.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let u=o&&I.merge(o.common,o[t.method]);o&&I.forEach(["delete","get","head","post","put","patch","common"],N=>{delete o[N]}),t.headers=Me.concat(u,o);const d=[];let p=!0;this.interceptors.request.forEach(function(U){typeof U.runWhen=="function"&&U.runWhen(t)===!1||(p=p&&U.synchronous,d.unshift(U.fulfilled,U.rejected))});const y=[];this.interceptors.response.forEach(function(U){y.push(U.fulfilled,U.rejected)});let g,S=0,$;if(!p){const N=[Pi.bind(this),void 0];for(N.unshift.apply(N,d),N.push.apply(N,y),$=N.length,g=Promise.resolve(t);S<$;)g=g.then(N[S++],N[S++]);return g}$=d.length;let K=t;for(S=0;S<$;){const N=d[S++],U=d[S++];try{K=N(K)}catch(W){U.call(this,W);break}}try{g=Pi.call(this,K)}catch(N){return Promise.reject(N)}for(S=0,$=y.length;S<$;)g=g.then(y[S++],y[S++]);return g}getUri(e){e=Lt(this.defaults,e);const t=fo(e.baseURL,e.url);return ao(t,e.params,e.paramsSerializer)}}I.forEach(["delete","get","head","options"],function(e){Yr.prototype[e]=function(t,r){return this.request(Lt(r||{},{method:e,url:t,data:(r||{}).data}))}});I.forEach(["post","put","patch"],function(e){function t(r){return function(o,u,d){return this.request(Lt(d||{},{method:e,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:u}))}}Yr.prototype[e]=t(),Yr.prototype[e+"Form"]=t(!0)});const Gr=Yr;class Es{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let t;this.promise=new Promise(function(o){t=o});const r=this;this.promise.then(a=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](a);r._listeners=null}),this.promise.then=a=>{let o;const u=new Promise(d=>{r.subscribe(d),o=d}).then(a);return u.cancel=function(){r.unsubscribe(o)},u},e(function(o,u,d){r.reason||(r.reason=new fr(o,u,d),t(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);t!==-1&&this._listeners.splice(t,1)}static source(){let e;return{token:new Es(function(a){e=a}),cancel:e}}}const Rc=Es;function jc(i){return function(t){return i.apply(null,t)}}function Ic(i){return I.isObject(i)&&i.isAxiosError===!0}const us={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(us).forEach(([i,e])=>{us[e]=i});const Dc=us;function yo(i){const e=new Gr(i),t=Gi(Gr.prototype.request,e);return I.extend(t,Gr.prototype,e,{allOwnKeys:!0}),I.extend(t,e,null,{allOwnKeys:!0}),t.create=function(a){return yo(Lt(i,a))},t}const oe=yo(ks);oe.Axios=Gr;oe.CanceledError=fr;oe.CancelToken=Rc;oe.isCancel=ho;oe.VERSION=mo;oe.toFormData=tn;oe.AxiosError=re;oe.Cancel=oe.CanceledError;oe.all=function(e){return Promise.all(e)};oe.spread=jc;oe.isAxiosError=Ic;oe.mergeConfig=Lt;oe.AxiosHeaders=Me;oe.formToJSON=i=>lo(I.isHTMLForm(i)?new FormData(i):i);oe.getAdapter=po.getAdapter;oe.HttpStatusCode=Dc;oe.default=oe;const Dt="0123456789ABCDEFGHJKMNPQRSTVWXYZ";function $c(i,e,t){for(;i.length=0;r--){const a=i%Dt.length;t=Dt.charAt(a)+t,i=Math.floor(i/Dt.length)}return $c(t,e,Dt[0])}function Ti(){const i=Date.now(),e=Uc(i,10),t=Lc(16),r=e+t;return{toString:()=>r,valueOf:()=>r}}const Fc={id:"",title:"",description:"",journals:[],isComplete:!1,reward:""},Bc={backpack:[],equipment:{head:null,body:null,legs:null,feet:null,hands:null,weapon:null,shield:null,accessory:null}},go={},qc={inCombat:!1,isDead:!1,isResting:!1,activeBoosts:{}},Mc={username:"Guest",health:"100",mana:"100",energy:"100",maxHealth:"100",maxMana:"100",maxEnergy:"100",armour:"0",agility:"0",strength:"0",intelligence:"0",experience:"0",reputation:"0",faith:"0"},Kc={stats:Mc,inventory:Bc,state:qc},zc={tooltipItem:{id:null,position:{x:0,y:0}},submenuItem:{id:null,position:{x:0,y:0}},tooltipNPC:{id:null,position:{x:0,y:0}},isStatsMenuCollapsed:!1,isSettingsMenuCollapsed:!1,debugMode:!1,textSpeed:40},Jc={gamemode:"Idle",action:{type:"ROLL_DICE",diceValues:[],isRolling:!1},textures:{side1:"",side2:"",side3:"",side4:"",side5:"",side6:""}};function gt(i,e){return Vi(i,e,{encode(t){return JSON.stringify(t)},decode(t){try{return JSON.parse(t)}catch{return e}}})}gt("playerData",Kc);gt("quest",Fc);gt("items",go);gt("notifications",[]);gt("itemDB",go);const ls=gt("settings",zc);gt("minigameState",Jc);const Hc=i=>ls.get()[i],vo=(i,e)=>{va(async()=>{const t=ls.get();ls.set({...t,[i]:e})})},Vc=()=>{vo("debugMode",!0)},Wc=()=>{vo("debugMode",!1)},nn=()=>Hc("debugMode"),Xr=i=>typeof i=="string"?i:JSON.stringify(i,null,2),Gc=i=>{nn()&&console.log(`[DEBUG] ${Xr(i)}`)},Yc=i=>{nn()&&console.warn(`[DEBUG] ${Xr(i)}`)},Xc=(i,e)=>{nn()&&(e instanceof Error?console.error(`[DEBUG] ${Xr(i)} - Error: ${e.message}
${e.stack}`):console.error(`[DEBUG] ${Xr(i)}`))},J={enable:Vc,disable:Wc,isEnabled:nn,log:Gc,warn:Yc,error:Xc};class Qc{constructor(){this.events={},this.lastEmitted=new Map}on(e,t){this.events[e]||(this.events[e]=[]),this.events[e]?.push(t)}off(e,t){this.events[e]&&(this.events[e]=this.events[e]?.filter(r=>r!==t))}emit(e,t,r=0,a){const o=Date.now(),u=this.lastEmitted.get(e)||0;if(o-u>=r){if(!this.events[e])return;this.events[e]?.forEach(d=>d(t)),a&&J.isEnabled()&&J.log(`Event: ${String(e)} - Message: ${a}`),J.isEnabled()&&J.log(`Event Data: ${String(e)} - Data: ${t?JSON.stringify(t):"No data"}`),this.lastEmitted.set(e,o)}}}const mt=new Qc,Zc=i=>{let e;return i?e=i:typeof fetch>"u"?e=(...t)=>Nt(()=>Promise.resolve().then(()=>pr),void 0).then(({default:r})=>r(...t)):e=fetch,(...t)=>e(...t)};class Ps extends Error{constructor(e,t="FunctionsError",r){super(e),this.name=t,this.context=r}}class eu extends Ps{constructor(e){super("Failed to send a request to the Edge Function","FunctionsFetchError",e)}}class tu extends Ps{constructor(e){super("Relay Error invoking the Edge Function","FunctionsRelayError",e)}}class ru extends Ps{constructor(e){super("Edge Function returned a non-2xx status code","FunctionsHttpError",e)}}var hs;(function(i){i.Any="any",i.ApNortheast1="ap-northeast-1",i.ApNortheast2="ap-northeast-2",i.ApSouth1="ap-south-1",i.ApSoutheast1="ap-southeast-1",i.ApSoutheast2="ap-southeast-2",i.CaCentral1="ca-central-1",i.EuCentral1="eu-central-1",i.EuWest1="eu-west-1",i.EuWest2="eu-west-2",i.EuWest3="eu-west-3",i.SaEast1="sa-east-1",i.UsEast1="us-east-1",i.UsWest1="us-west-1",i.UsWest2="us-west-2"})(hs||(hs={}));var nu=function(i,e,t,r){function a(o){return o instanceof t?o:new t(function(u){u(o)})}return new(t||(t=Promise))(function(o,u){function d(g){try{y(r.next(g))}catch(S){u(S)}}function p(g){try{y(r.throw(g))}catch(S){u(S)}}function y(g){g.done?o(g.value):a(g.value).then(d,p)}y((r=r.apply(i,e||[])).next())})};class su{constructor(e,{headers:t={},customFetch:r,region:a=hs.Any}={}){this.url=e,this.headers=t,this.region=a,this.fetch=Zc(r)}setAuth(e){this.headers.Authorization=`Bearer ${e}`}invoke(e,t={}){var r;return nu(this,void 0,void 0,function*(){try{const{headers:a,method:o,body:u}=t;let d={},{region:p}=t;p||(p=this.region),p&&p!=="any"&&(d["x-region"]=p);let y;u&&(a&&!Object.prototype.hasOwnProperty.call(a,"Content-Type")||!a)&&(typeof Blob<"u"&&u instanceof Blob||u instanceof ArrayBuffer?(d["Content-Type"]="application/octet-stream",y=u):typeof u=="string"?(d["Content-Type"]="text/plain",y=u):typeof FormData<"u"&&u instanceof FormData?y=u:(d["Content-Type"]="application/json",y=JSON.stringify(u)));const g=yield this.fetch(`${this.url}/${e}`,{method:o||"POST",headers:Object.assign(Object.assign(Object.assign({},d),this.headers),a),body:y}).catch(N=>{throw new eu(N)}),S=g.headers.get("x-relay-error");if(S&&S==="true")throw new tu(g);if(!g.ok)throw new ru(g);let $=((r=g.headers.get("Content-Type"))!==null&&r!==void 0?r:"text/plain").split(";")[0].trim(),K;return $==="application/json"?K=yield g.json():$==="application/octet-stream"?K=yield g.blob():$==="text/event-stream"?K=g:$==="multipart/form-data"?K=yield g.formData():K=yield g.text(),{data:K,error:null}}catch(a){return{data:null,error:a}}})}}var iu=function(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("unable to locate global object")},Ut=iu();const ou=Ut.fetch,Os=Ut.fetch.bind(Ut),bo=Ut.Headers,au=Ut.Request,cu=Ut.Response,pr=Object.freeze(Object.defineProperty({__proto__:null,Headers:bo,Request:au,Response:cu,default:Os,fetch:ou},Symbol.toStringTag,{value:"Module"}));class uu extends Error{constructor(e){super(e.message),this.name="PostgrestError",this.details=e.details,this.hint=e.hint,this.code=e.code}}class lu{constructor(e){this.shouldThrowOnError=!1,this.method=e.method,this.url=e.url,this.headers=e.headers,this.schema=e.schema,this.body=e.body,this.shouldThrowOnError=e.shouldThrowOnError,this.signal=e.signal,this.isMaybeSingle=e.isMaybeSingle,e.fetch?this.fetch=e.fetch:typeof fetch>"u"?this.fetch=Os:this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}then(e,t){this.schema===void 0||(["GET","HEAD"].includes(this.method)?this.headers["Accept-Profile"]=this.schema:this.headers["Content-Profile"]=this.schema),this.method!=="GET"&&this.method!=="HEAD"&&(this.headers["Content-Type"]="application/json");const r=this.fetch;let a=r(this.url.toString(),{method:this.method,headers:this.headers,body:JSON.stringify(this.body),signal:this.signal}).then(async o=>{var u,d,p;let y=null,g=null,S=null,$=o.status,K=o.statusText;if(o.ok){if(this.method!=="HEAD"){const ne=await o.text();ne===""||(this.headers.Accept==="text/csv"||this.headers.Accept&&this.headers.Accept.includes("application/vnd.pgrst.plan+text")?g=ne:g=JSON.parse(ne))}const U=(u=this.headers.Prefer)===null||u===void 0?void 0:u.match(/count=(exact|planned|estimated)/),W=(d=o.headers.get("content-range"))===null||d===void 0?void 0:d.split("/");U&&W&&W.length>1&&(S=parseInt(W[1])),this.isMaybeSingle&&this.method==="GET"&&Array.isArray(g)&&(g.length>1?(y={code:"PGRST116",details:`Results contain ${g.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},g=null,S=null,$=406,K="Not Acceptable"):g.length===1?g=g[0]:g=null)}else{const U=await o.text();try{y=JSON.parse(U),Array.isArray(y)&&o.status===404&&(g=[],y=null,$=200,K="OK")}catch{o.status===404&&U===""?($=204,K="No Content"):y={message:U}}if(y&&this.isMaybeSingle&&(!((p=y?.details)===null||p===void 0)&&p.includes("0 rows"))&&(y=null,$=200,K="OK"),y&&this.shouldThrowOnError)throw new uu(y)}return{error:y,data:g,count:S,status:$,statusText:K}});return this.shouldThrowOnError||(a=a.catch(o=>{var u,d,p;return{error:{message:`${(u=o?.name)!==null&&u!==void 0?u:"FetchError"}: ${o?.message}`,details:`${(d=o?.stack)!==null&&d!==void 0?d:""}`,hint:"",code:`${(p=o?.code)!==null&&p!==void 0?p:""}`},data:null,count:null,status:0,statusText:""}})),a.then(e,t)}}class hu extends lu{select(e){let t=!1;const r=(e??"*").split("").map(a=>/\s/.test(a)&&!t?"":(a==='"'&&(t=!t),a)).join("");return this.url.searchParams.set("select",r),this.headers.Prefer&&(this.headers.Prefer+=","),this.headers.Prefer+="return=representation",this}order(e,{ascending:t=!0,nullsFirst:r,foreignTable:a,referencedTable:o=a}={}){const u=o?`${o}.order`:"order",d=this.url.searchParams.get(u);return this.url.searchParams.set(u,`${d?`${d},`:""}${e}.${t?"asc":"desc"}${r===void 0?"":r?".nullsfirst":".nullslast"}`),this}limit(e,{foreignTable:t,referencedTable:r=t}={}){const a=typeof r>"u"?"limit":`${r}.limit`;return this.url.searchParams.set(a,`${e}`),this}range(e,t,{foreignTable:r,referencedTable:a=r}={}){const o=typeof a>"u"?"offset":`${a}.offset`,u=typeof a>"u"?"limit":`${a}.limit`;return this.url.searchParams.set(o,`${e}`),this.url.searchParams.set(u,`${t-e+1}`),this}abortSignal(e){return this.signal=e,this}single(){return this.headers.Accept="application/vnd.pgrst.object+json",this}maybeSingle(){return this.method==="GET"?this.headers.Accept="application/json":this.headers.Accept="application/vnd.pgrst.object+json",this.isMaybeSingle=!0,this}csv(){return this.headers.Accept="text/csv",this}geojson(){return this.headers.Accept="application/geo+json",this}explain({analyze:e=!1,verbose:t=!1,settings:r=!1,buffers:a=!1,wal:o=!1,format:u="text"}={}){var d;const p=[e?"analyze":null,t?"verbose":null,r?"settings":null,a?"buffers":null,o?"wal":null].filter(Boolean).join("|"),y=(d=this.headers.Accept)!==null&&d!==void 0?d:"application/json";return this.headers.Accept=`application/vnd.pgrst.plan+${u}; for="${y}"; options=${p};`,u==="json"?this:this}rollback(){var e;return((e=this.headers.Prefer)!==null&&e!==void 0?e:"").trim().length>0?this.headers.Prefer+=",tx=rollback":this.headers.Prefer="tx=rollback",this}returns(){return this}}class It extends hu{eq(e,t){return this.url.searchParams.append(e,`eq.${t}`),this}neq(e,t){return this.url.searchParams.append(e,`neq.${t}`),this}gt(e,t){return this.url.searchParams.append(e,`gt.${t}`),this}gte(e,t){return this.url.searchParams.append(e,`gte.${t}`),this}lt(e,t){return this.url.searchParams.append(e,`lt.${t}`),this}lte(e,t){return this.url.searchParams.append(e,`lte.${t}`),this}like(e,t){return this.url.searchParams.append(e,`like.${t}`),this}likeAllOf(e,t){return this.url.searchParams.append(e,`like(all).{${t.join(",")}}`),this}likeAnyOf(e,t){return this.url.searchParams.append(e,`like(any).{${t.join(",")}}`),this}ilike(e,t){return this.url.searchParams.append(e,`ilike.${t}`),this}ilikeAllOf(e,t){return this.url.searchParams.append(e,`ilike(all).{${t.join(",")}}`),this}ilikeAnyOf(e,t){return this.url.searchParams.append(e,`ilike(any).{${t.join(",")}}`),this}is(e,t){return this.url.searchParams.append(e,`is.${t}`),this}in(e,t){const r=Array.from(new Set(t)).map(a=>typeof a=="string"&&new RegExp("[,()]").test(a)?`"${a}"`:`${a}`).join(",");return this.url.searchParams.append(e,`in.(${r})`),this}contains(e,t){return typeof t=="string"?this.url.searchParams.append(e,`cs.${t}`):Array.isArray(t)?this.url.searchParams.append(e,`cs.{${t.join(",")}}`):this.url.searchParams.append(e,`cs.${JSON.stringify(t)}`),this}containedBy(e,t){return typeof t=="string"?this.url.searchParams.append(e,`cd.${t}`):Array.isArray(t)?this.url.searchParams.append(e,`cd.{${t.join(",")}}`):this.url.searchParams.append(e,`cd.${JSON.stringify(t)}`),this}rangeGt(e,t){return this.url.searchParams.append(e,`sr.${t}`),this}rangeGte(e,t){return this.url.searchParams.append(e,`nxl.${t}`),this}rangeLt(e,t){return this.url.searchParams.append(e,`sl.${t}`),this}rangeLte(e,t){return this.url.searchParams.append(e,`nxr.${t}`),this}rangeAdjacent(e,t){return this.url.searchParams.append(e,`adj.${t}`),this}overlaps(e,t){return typeof t=="string"?this.url.searchParams.append(e,`ov.${t}`):this.url.searchParams.append(e,`ov.{${t.join(",")}}`),this}textSearch(e,t,{config:r,type:a}={}){let o="";a==="plain"?o="pl":a==="phrase"?o="ph":a==="websearch"&&(o="w");const u=r===void 0?"":`(${r})`;return this.url.searchParams.append(e,`${o}fts${u}.${t}`),this}match(e){return Object.entries(e).forEach(([t,r])=>{this.url.searchParams.append(t,`eq.${r}`)}),this}not(e,t,r){return this.url.searchParams.append(e,`not.${t}.${r}`),this}or(e,{foreignTable:t,referencedTable:r=t}={}){const a=r?`${r}.or`:"or";return this.url.searchParams.append(a,`(${e})`),this}filter(e,t,r){return this.url.searchParams.append(e,`${t}.${r}`),this}}class du{constructor(e,{headers:t={},schema:r,fetch:a}){this.url=e,this.headers=t,this.schema=r,this.fetch=a}select(e,{head:t=!1,count:r}={}){const a=t?"HEAD":"GET";let o=!1;const u=(e??"*").split("").map(d=>/\s/.test(d)&&!o?"":(d==='"'&&(o=!o),d)).join("");return this.url.searchParams.set("select",u),r&&(this.headers.Prefer=`count=${r}`),new It({method:a,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:!1})}insert(e,{count:t,defaultToNull:r=!0}={}){const a="POST",o=[];if(this.headers.Prefer&&o.push(this.headers.Prefer),t&&o.push(`count=${t}`),r||o.push("missing=default"),this.headers.Prefer=o.join(","),Array.isArray(e)){const u=e.reduce((d,p)=>d.concat(Object.keys(p)),[]);if(u.length>0){const d=[...new Set(u)].map(p=>`"${p}"`);this.url.searchParams.set("columns",d.join(","))}}return new It({method:a,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:!1})}upsert(e,{onConflict:t,ignoreDuplicates:r=!1,count:a,defaultToNull:o=!0}={}){const u="POST",d=[`resolution=${r?"ignore":"merge"}-duplicates`];if(t!==void 0&&this.url.searchParams.set("on_conflict",t),this.headers.Prefer&&d.push(this.headers.Prefer),a&&d.push(`count=${a}`),o||d.push("missing=default"),this.headers.Prefer=d.join(","),Array.isArray(e)){const p=e.reduce((y,g)=>y.concat(Object.keys(g)),[]);if(p.length>0){const y=[...new Set(p)].map(g=>`"${g}"`);this.url.searchParams.set("columns",y.join(","))}}return new It({method:u,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:!1})}update(e,{count:t}={}){const r="PATCH",a=[];return this.headers.Prefer&&a.push(this.headers.Prefer),t&&a.push(`count=${t}`),this.headers.Prefer=a.join(","),new It({method:r,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:!1})}delete({count:e}={}){const t="DELETE",r=[];return e&&r.push(`count=${e}`),this.headers.Prefer&&r.unshift(this.headers.Prefer),this.headers.Prefer=r.join(","),new It({method:t,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:!1})}}const fu="1.15.2",pu={"X-Client-Info":`postgrest-js/${fu}`};class xs{constructor(e,{headers:t={},schema:r,fetch:a}={}){this.url=e,this.headers=Object.assign(Object.assign({},pu),t),this.schemaName=r,this.fetch=a}from(e){const t=new URL(`${this.url}/${e}`);return new du(t,{headers:Object.assign({},this.headers),schema:this.schemaName,fetch:this.fetch})}schema(e){return new xs(this.url,{headers:this.headers,schema:e,fetch:this.fetch})}rpc(e,t={},{head:r=!1,get:a=!1,count:o}={}){let u;const d=new URL(`${this.url}/rpc/${e}`);let p;r||a?(u=r?"HEAD":"GET",Object.entries(t).filter(([g,S])=>S!==void 0).map(([g,S])=>[g,Array.isArray(S)?`{${S.join(",")}}`:`${S}`]).forEach(([g,S])=>{d.searchParams.append(g,S)})):(u="POST",p=t);const y=Object.assign({},this.headers);return o&&(y.Prefer=`count=${o}`),new It({method:u,url:d,headers:y,schema:this.schemaName,body:p,fetch:this.fetch,allowEmpty:!1})}}const mu="2.9.4",yu={"X-Client-Info":`realtime-js/${mu}`},gu="1.0.0",wo=1e4,vu=1e3;var $t;(function(i){i[i.connecting=0]="connecting",i[i.open=1]="open",i[i.closing=2]="closing",i[i.closed=3]="closed"})($t||($t={}));var Pe;(function(i){i.closed="closed",i.errored="errored",i.joined="joined",i.joining="joining",i.leaving="leaving"})(Pe||(Pe={}));var Re;(function(i){i.close="phx_close",i.error="phx_error",i.join="phx_join",i.reply="phx_reply",i.leave="phx_leave",i.access_token="access_token"})(Re||(Re={}));var ds;(function(i){i.websocket="websocket"})(ds||(ds={}));var yt;(function(i){i.Connecting="connecting",i.Open="open",i.Closing="closing",i.Closed="closed"})(yt||(yt={}));class _o{constructor(e,t){this.callback=e,this.timerCalc=t,this.timer=void 0,this.tries=0,this.callback=e,this.timerCalc=t}reset(){this.tries=0,clearTimeout(this.timer)}scheduleTimeout(){clearTimeout(this.timer),this.timer=setTimeout(()=>{this.tries=this.tries+1,this.callback()},this.timerCalc(this.tries+1))}}class bu{constructor(){this.HEADER_LENGTH=1}decode(e,t){return e.constructor===ArrayBuffer?t(this._binaryDecode(e)):t(typeof e=="string"?JSON.parse(e):{})}_binaryDecode(e){const t=new DataView(e),r=new TextDecoder;return this._decodeBroadcast(e,t,r)}_decodeBroadcast(e,t,r){const a=t.getUint8(1),o=t.getUint8(2);let u=this.HEADER_LENGTH+2;const d=r.decode(e.slice(u,u+a));u=u+a;const p=r.decode(e.slice(u,u+o));u=u+o;const y=JSON.parse(r.decode(e.slice(u,e.byteLength)));return{ref:null,topic:d,event:p,payload:y}}}class Zn{constructor(e,t,r={},a=wo){this.channel=e,this.event=t,this.payload=r,this.timeout=a,this.sent=!1,this.timeoutTimer=void 0,this.ref="",this.receivedResp=null,this.recHooks=[],this.refEvent=null}resend(e){this.timeout=e,this._cancelRefEvent(),this.ref="",this.refEvent=null,this.receivedResp=null,this.sent=!1,this.send()}send(){this._hasReceived("timeout")||(this.startTimeout(),this.sent=!0,this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload,ref:this.ref,join_ref:this.channel._joinRef()}))}updatePayload(e){this.payload=Object.assign(Object.assign({},this.payload),e)}receive(e,t){var r;return this._hasReceived(e)&&t((r=this.receivedResp)===null||r===void 0?void 0:r.response),this.recHooks.push({status:e,callback:t}),this}startTimeout(){if(this.timeoutTimer)return;this.ref=this.channel.socket._makeRef(),this.refEvent=this.channel._replyEventName(this.ref);const e=t=>{this._cancelRefEvent(),this._cancelTimeout(),this.receivedResp=t,this._matchReceive(t)};this.channel._on(this.refEvent,{},e),this.timeoutTimer=setTimeout(()=>{this.trigger("timeout",{})},this.timeout)}trigger(e,t){this.refEvent&&this.channel._trigger(this.refEvent,{status:e,response:t})}destroy(){this._cancelRefEvent(),this._cancelTimeout()}_cancelRefEvent(){this.refEvent&&this.channel._off(this.refEvent,{})}_cancelTimeout(){clearTimeout(this.timeoutTimer),this.timeoutTimer=void 0}_matchReceive({status:e,response:t}){this.recHooks.filter(r=>r.status===e).forEach(r=>r.callback(t))}_hasReceived(e){return this.receivedResp&&this.receivedResp.status===e}}var Ai;(function(i){i.SYNC="sync",i.JOIN="join",i.LEAVE="leave"})(Ai||(Ai={}));class ar{constructor(e,t){this.channel=e,this.state={},this.pendingDiffs=[],this.joinRef=null,this.caller={onJoin:()=>{},onLeave:()=>{},onSync:()=>{}};const r=t?.events||{state:"presence_state",diff:"presence_diff"};this.channel._on(r.state,{},a=>{const{onJoin:o,onLeave:u,onSync:d}=this.caller;this.joinRef=this.channel._joinRef(),this.state=ar.syncState(this.state,a,o,u),this.pendingDiffs.forEach(p=>{this.state=ar.syncDiff(this.state,p,o,u)}),this.pendingDiffs=[],d()}),this.channel._on(r.diff,{},a=>{const{onJoin:o,onLeave:u,onSync:d}=this.caller;this.inPendingSyncState()?this.pendingDiffs.push(a):(this.state=ar.syncDiff(this.state,a,o,u),d())}),this.onJoin((a,o,u)=>{this.channel._trigger("presence",{event:"join",key:a,currentPresences:o,newPresences:u})}),this.onLeave((a,o,u)=>{this.channel._trigger("presence",{event:"leave",key:a,currentPresences:o,leftPresences:u})}),this.onSync(()=>{this.channel._trigger("presence",{event:"sync"})})}static syncState(e,t,r,a){const o=this.cloneDeep(e),u=this.transformState(t),d={},p={};return this.map(o,(y,g)=>{u[y]||(p[y]=g)}),this.map(u,(y,g)=>{const S=o[y];if(S){const $=g.map(W=>W.presence_ref),K=S.map(W=>W.presence_ref),N=g.filter(W=>K.indexOf(W.presence_ref)<0),U=S.filter(W=>$.indexOf(W.presence_ref)<0);N.length>0&&(d[y]=N),U.length>0&&(p[y]=U)}else d[y]=g}),this.syncDiff(o,{joins:d,leaves:p},r,a)}static syncDiff(e,t,r,a){const{joins:o,leaves:u}={joins:this.transformState(t.joins),leaves:this.transformState(t.leaves)};return r||(r=()=>{}),a||(a=()=>{}),this.map(o,(d,p)=>{var y;const g=(y=e[d])!==null&&y!==void 0?y:[];if(e[d]=this.cloneDeep(p),g.length>0){const S=e[d].map(K=>K.presence_ref),$=g.filter(K=>S.indexOf(K.presence_ref)<0);e[d].unshift(...$)}r(d,g,p)}),this.map(u,(d,p)=>{let y=e[d];if(!y)return;const g=p.map(S=>S.presence_ref);y=y.filter(S=>g.indexOf(S.presence_ref)<0),e[d]=y,a(d,y,p),y.length===0&&delete e[d]}),e}static map(e,t){return Object.getOwnPropertyNames(e).map(r=>t(r,e[r]))}static transformState(e){return e=this.cloneDeep(e),Object.getOwnPropertyNames(e).reduce((t,r)=>{const a=e[r];return"metas"in a?t[r]=a.metas.map(o=>(o.presence_ref=o.phx_ref,delete o.phx_ref,delete o.phx_ref_prev,o)):t[r]=a,t},{})}static cloneDeep(e){return JSON.parse(JSON.stringify(e))}onJoin(e){this.caller.onJoin=e}onLeave(e){this.caller.onLeave=e}onSync(e){this.caller.onSync=e}inPendingSyncState(){return!this.joinRef||this.joinRef!==this.channel._joinRef()}}var ce;(function(i){i.abstime="abstime",i.bool="bool",i.date="date",i.daterange="daterange",i.float4="float4",i.float8="float8",i.int2="int2",i.int4="int4",i.int4range="int4range",i.int8="int8",i.int8range="int8range",i.json="json",i.jsonb="jsonb",i.money="money",i.numeric="numeric",i.oid="oid",i.reltime="reltime",i.text="text",i.time="time",i.timestamp="timestamp",i.timestamptz="timestamptz",i.timetz="timetz",i.tsrange="tsrange",i.tstzrange="tstzrange"})(ce||(ce={}));const Ci=(i,e,t={})=>{var r;const a=(r=t.skipTypes)!==null&&r!==void 0?r:[];return Object.keys(e).reduce((o,u)=>(o[u]=wu(u,i,e,a),o),{})},wu=(i,e,t,r)=>{const a=e.find(d=>d.name===i),o=a?.type,u=t[i];return o&&!r.includes(o)?ko(o,u):fs(u)},ko=(i,e)=>{if(i.charAt(0)==="_"){const t=i.slice(1,i.length);return Eu(e,t)}switch(i){case ce.bool:return _u(e);case ce.float4:case ce.float8:case ce.int2:case ce.int4:case ce.int8:case ce.numeric:case ce.oid:return ku(e);case ce.json:case ce.jsonb:return Su(e);case ce.timestamp:return Pu(e);case ce.abstime:case ce.date:case ce.daterange:case ce.int4range:case ce.int8range:case ce.money:case ce.reltime:case ce.text:case ce.time:case ce.timestamptz:case ce.timetz:case ce.tsrange:case ce.tstzrange:return fs(e);default:return fs(e)}},fs=i=>i,_u=i=>{switch(i){case"t":return!0;case"f":return!1;default:return i}},ku=i=>{if(typeof i=="string"){const e=parseFloat(i);if(!Number.isNaN(e))return e}return i},Su=i=>{if(typeof i=="string")try{return JSON.parse(i)}catch(e){return console.log(`JSON parse error: ${e}`),i}return i},Eu=(i,e)=>{if(typeof i!="string")return i;const t=i.length-1,r=i[t];if(i[0]==="{"&&r==="}"){let o;const u=i.slice(1,t);try{o=JSON.parse("["+u+"]")}catch{o=u?u.split(","):[]}return o.map(d=>ko(e,d))}return i},Pu=i=>typeof i=="string"?i.replace(" ","T"):i;var Ri;(function(i){i.ALL="*",i.INSERT="INSERT",i.UPDATE="UPDATE",i.DELETE="DELETE"})(Ri||(Ri={}));var ji;(function(i){i.BROADCAST="broadcast",i.PRESENCE="presence",i.POSTGRES_CHANGES="postgres_changes"})(ji||(ji={}));var Ii;(function(i){i.SUBSCRIBED="SUBSCRIBED",i.TIMED_OUT="TIMED_OUT",i.CLOSED="CLOSED",i.CHANNEL_ERROR="CHANNEL_ERROR"})(Ii||(Ii={}));class Ts{constructor(e,t={config:{}},r){this.topic=e,this.params=t,this.socket=r,this.bindings={},this.state=Pe.closed,this.joinedOnce=!1,this.pushBuffer=[],this.subTopic=e.replace(/^realtime:/i,""),this.params.config=Object.assign({broadcast:{ack:!1,self:!1},presence:{key:""}},t.config),this.timeout=this.socket.timeout,this.joinPush=new Zn(this,Re.join,this.params,this.timeout),this.rejoinTimer=new _o(()=>this._rejoinUntilConnected(),this.socket.reconnectAfterMs),this.joinPush.receive("ok",()=>{this.state=Pe.joined,this.rejoinTimer.reset(),this.pushBuffer.forEach(a=>a.send()),this.pushBuffer=[]}),this._onClose(()=>{this.rejoinTimer.reset(),this.socket.log("channel",`close ${this.topic} ${this._joinRef()}`),this.state=Pe.closed,this.socket._remove(this)}),this._onError(a=>{this._isLeaving()||this._isClosed()||(this.socket.log("channel",`error ${this.topic}`,a),this.state=Pe.errored,this.rejoinTimer.scheduleTimeout())}),this.joinPush.receive("timeout",()=>{this._isJoining()&&(this.socket.log("channel",`timeout ${this.topic}`,this.joinPush.timeout),this.state=Pe.errored,this.rejoinTimer.scheduleTimeout())}),this._on(Re.reply,{},(a,o)=>{this._trigger(this._replyEventName(o),a)}),this.presence=new ar(this),this.broadcastEndpointURL=this._broadcastEndpointURL()}subscribe(e,t=this.timeout){var r,a;if(this.socket.isConnected()||this.socket.connect(),this.joinedOnce)throw"tried to subscribe multiple times. 'subscribe' can only be called a single time per channel instance";{const{config:{broadcast:o,presence:u}}=this.params;this._onError(y=>e&&e("CHANNEL_ERROR",y)),this._onClose(()=>e&&e("CLOSED"));const d={},p={broadcast:o,presence:u,postgres_changes:(a=(r=this.bindings.postgres_changes)===null||r===void 0?void 0:r.map(y=>y.filter))!==null&&a!==void 0?a:[]};this.socket.accessToken&&(d.access_token=this.socket.accessToken),this.updateJoinPayload(Object.assign({config:p},d)),this.joinedOnce=!0,this._rejoin(t),this.joinPush.receive("ok",({postgres_changes:y})=>{var g;if(this.socket.accessToken&&this.socket.setAuth(this.socket.accessToken),y===void 0){e&&e("SUBSCRIBED");return}else{const S=this.bindings.postgres_changes,$=(g=S?.length)!==null&&g!==void 0?g:0,K=[];for(let N=0;N<$;N++){const U=S[N],{filter:{event:W,schema:ne,table:de,filter:fe}}=U,le=y&&y[N];if(le&&le.event===W&&le.schema===ne&&le.table===de&&le.filter===fe)K.push(Object.assign(Object.assign({},U),{id:le.id}));else{this.unsubscribe(),e&&e("CHANNEL_ERROR",new Error("mismatch between server and client bindings for postgres changes"));return}}this.bindings.postgres_changes=K,e&&e("SUBSCRIBED");return}}).receive("error",y=>{e&&e("CHANNEL_ERROR",new Error(JSON.stringify(Object.values(y).join(", ")||"error")))}).receive("timeout",()=>{e&&e("TIMED_OUT")})}return this}presenceState(){return this.presence.state}async track(e,t={}){return await this.send({type:"presence",event:"track",payload:e},t.timeout||this.timeout)}async untrack(e={}){return await this.send({type:"presence",event:"untrack"},e)}on(e,t,r){return this._on(e,t,r)}async send(e,t={}){var r,a;if(!this._canPush()&&e.type==="broadcast"){const{event:o,payload:u}=e,d={method:"POST",headers:{apikey:(r=this.socket.apiKey)!==null&&r!==void 0?r:"","Content-Type":"application/json"},body:JSON.stringify({messages:[{topic:this.subTopic,event:o,payload:u}]})};try{return(await this._fetchWithTimeout(this.broadcastEndpointURL,d,(a=t.timeout)!==null&&a!==void 0?a:this.timeout)).ok?"ok":"error"}catch(p){return p.name==="AbortError"?"timed out":"error"}}else return new Promise(o=>{var u,d,p;const y=this._push(e.type,e,t.timeout||this.timeout);e.type==="broadcast"&&!(!((p=(d=(u=this.params)===null||u===void 0?void 0:u.config)===null||d===void 0?void 0:d.broadcast)===null||p===void 0)&&p.ack)&&o("ok"),y.receive("ok",()=>o("ok")),y.receive("error",()=>o("error")),y.receive("timeout",()=>o("timed out"))})}updateJoinPayload(e){this.joinPush.updatePayload(e)}unsubscribe(e=this.timeout){this.state=Pe.leaving;const t=()=>{this.socket.log("channel",`leave ${this.topic}`),this._trigger(Re.close,"leave",this._joinRef())};return this.rejoinTimer.reset(),this.joinPush.destroy(),new Promise(r=>{const a=new Zn(this,Re.leave,{},e);a.receive("ok",()=>{t(),r("ok")}).receive("timeout",()=>{t(),r("timed out")}).receive("error",()=>{r("error")}),a.send(),this._canPush()||a.trigger("ok",{})})}_broadcastEndpointURL(){let e=this.socket.endPoint;return e=e.replace(/^ws/i,"http"),e=e.replace(/(\/socket\/websocket|\/socket|\/websocket)\/?$/i,""),e.replace(/\/+$/,"")+"/api/broadcast"}async _fetchWithTimeout(e,t,r){const a=new AbortController,o=setTimeout(()=>a.abort(),r),u=await this.socket.fetch(e,Object.assign(Object.assign({},t),{signal:a.signal}));return clearTimeout(o),u}_push(e,t,r=this.timeout){if(!this.joinedOnce)throw`tried to push '${e}' to '${this.topic}' before joining. Use channel.subscribe() before pushing events`;let a=new Zn(this,e,t,r);return this._canPush()?a.send():(a.startTimeout(),this.pushBuffer.push(a)),a}_onMessage(e,t,r){return t}_isMember(e){return this.topic===e}_joinRef(){return this.joinPush.ref}_trigger(e,t,r){var a,o;const u=e.toLocaleLowerCase(),{close:d,error:p,leave:y,join:g}=Re;if(r&&[d,p,y,g].indexOf(u)>=0&&r!==this._joinRef())return;let $=this._onMessage(u,t,r);if(t&&!$)throw"channel onMessage callbacks must return the payload, modified or unmodified";["insert","update","delete"].includes(u)?(a=this.bindings.postgres_changes)===null||a===void 0||a.filter(K=>{var N,U,W;return((N=K.filter)===null||N===void 0?void 0:N.event)==="*"||((W=(U=K.filter)===null||U===void 0?void 0:U.event)===null||W===void 0?void 0:W.toLocaleLowerCase())===u}).map(K=>K.callback($,r)):(o=this.bindings[u])===null||o===void 0||o.filter(K=>{var N,U,W,ne,de,fe;if(["broadcast","presence","postgres_changes"].includes(u))if("id"in K){const le=K.id,tt=(N=K.filter)===null||N===void 0?void 0:N.event;return le&&((U=t.ids)===null||U===void 0?void 0:U.includes(le))&&(tt==="*"||tt?.toLocaleLowerCase()===((W=t.data)===null||W===void 0?void 0:W.type.toLocaleLowerCase()))}else{const le=(de=(ne=K?.filter)===null||ne===void 0?void 0:ne.event)===null||de===void 0?void 0:de.toLocaleLowerCase();return le==="*"||le===((fe=t?.event)===null||fe===void 0?void 0:fe.toLocaleLowerCase())}else return K.type.toLocaleLowerCase()===u}).map(K=>{if(typeof $=="object"&&"ids"in $){const N=$.data,{schema:U,table:W,commit_timestamp:ne,type:de,errors:fe}=N;$=Object.assign(Object.assign({},{schema:U,table:W,commit_timestamp:ne,eventType:de,new:{},old:{},errors:fe}),this._getPayloadRecords(N))}K.callback($,r)})}_isClosed(){return this.state===Pe.closed}_isJoined(){return this.state===Pe.joined}_isJoining(){return this.state===Pe.joining}_isLeaving(){return this.state===Pe.leaving}_replyEventName(e){return`chan_reply_${e}`}_on(e,t,r){const a=e.toLocaleLowerCase(),o={type:a,filter:t,callback:r};return this.bindings[a]?this.bindings[a].push(o):this.bindings[a]=[o],this}_off(e,t){const r=e.toLocaleLowerCase();return this.bindings[r]=this.bindings[r].filter(a=>{var o;return!(((o=a.type)===null||o===void 0?void 0:o.toLocaleLowerCase())===r&&Ts.isEqual(a.filter,t))}),this}static isEqual(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const r in e)if(e[r]!==t[r])return!1;return!0}_rejoinUntilConnected(){this.rejoinTimer.scheduleTimeout(),this.socket.isConnected()&&this._rejoin()}_onClose(e){this._on(Re.close,{},e)}_onError(e){this._on(Re.error,{},t=>e(t))}_canPush(){return this.socket.isConnected()&&this._isJoined()}_rejoin(e=this.timeout){this._isLeaving()||(this.socket._leaveOpenTopic(this.topic),this.state=Pe.joining,this.joinPush.resend(e))}_getPayloadRecords(e){const t={new:{},old:{}};return(e.type==="INSERT"||e.type==="UPDATE")&&(t.new=Ci(e.columns,e.record)),(e.type==="UPDATE"||e.type==="DELETE")&&(t.old=Ci(e.columns,e.old_record)),t}}const Ou=()=>{},xu=typeof WebSocket<"u";class Tu{constructor(e,t){var r;this.accessToken=null,this.apiKey=null,this.channels=[],this.endPoint="",this.headers=yu,this.params={},this.timeout=wo,this.heartbeatIntervalMs=3e4,this.heartbeatTimer=void 0,this.pendingHeartbeatRef=null,this.ref=0,this.logger=Ou,this.conn=null,this.sendBuffer=[],this.serializer=new bu,this.stateChangeCallbacks={open:[],close:[],error:[],message:[]},this._resolveFetch=o=>{let u;return o?u=o:typeof fetch>"u"?u=(...d)=>Nt(()=>Promise.resolve().then(()=>pr),void 0).then(({default:p})=>p(...d)):u=fetch,(...d)=>u(...d)},this.endPoint=`${e}/${ds.websocket}`,t?.transport?this.transport=t.transport:this.transport=null,t?.params&&(this.params=t.params),t?.headers&&(this.headers=Object.assign(Object.assign({},this.headers),t.headers)),t?.timeout&&(this.timeout=t.timeout),t?.logger&&(this.logger=t.logger),t?.heartbeatIntervalMs&&(this.heartbeatIntervalMs=t.heartbeatIntervalMs);const a=(r=t?.params)===null||r===void 0?void 0:r.apikey;a&&(this.accessToken=a,this.apiKey=a),this.reconnectAfterMs=t?.reconnectAfterMs?t.reconnectAfterMs:o=>[1e3,2e3,5e3,1e4][o-1]||1e4,this.encode=t?.encode?t.encode:(o,u)=>u(JSON.stringify(o)),this.decode=t?.decode?t.decode:this.serializer.decode.bind(this.serializer),this.reconnectTimer=new _o(async()=>{this.disconnect(),this.connect()},this.reconnectAfterMs),this.fetch=this._resolveFetch(t?.fetch)}connect(){if(!this.conn){if(this.transport){this.conn=new this.transport(this._endPointURL(),void 0,{headers:this.headers});return}if(xu){this.conn=new WebSocket(this._endPointURL()),this.setupConnection();return}this.conn=new Au(this._endPointURL(),void 0,{close:()=>{this.conn=null}}),Nt(()=>import("./browser.BMICABTD.js").then(e=>e.b),__vite__mapDeps([0,1])).then(({default:e})=>{this.conn=new e(this._endPointURL(),void 0,{headers:this.headers}),this.setupConnection()})}}disconnect(e,t){this.conn&&(this.conn.onclose=function(){},e?this.conn.close(e,t??""):this.conn.close(),this.conn=null,this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.reconnectTimer.reset())}getChannels(){return this.channels}async removeChannel(e){const t=await e.unsubscribe();return this.channels.length===0&&this.disconnect(),t}async removeAllChannels(){const e=await Promise.all(this.channels.map(t=>t.unsubscribe()));return this.disconnect(),e}log(e,t,r){this.logger(e,t,r)}connectionState(){switch(this.conn&&this.conn.readyState){case $t.connecting:return yt.Connecting;case $t.open:return yt.Open;case $t.closing:return yt.Closing;default:return yt.Closed}}isConnected(){return this.connectionState()===yt.Open}channel(e,t={config:{}}){const r=new Ts(`realtime:${e}`,t,this);return this.channels.push(r),r}push(e){const{topic:t,event:r,payload:a,ref:o}=e,u=()=>{this.encode(e,d=>{var p;(p=this.conn)===null||p===void 0||p.send(d)})};this.log("push",`${t} ${r} (${o})`,a),this.isConnected()?u():this.sendBuffer.push(u)}setAuth(e){this.accessToken=e,this.channels.forEach(t=>{e&&t.updateJoinPayload({access_token:e}),t.joinedOnce&&t._isJoined()&&t._push(Re.access_token,{access_token:e})})}_makeRef(){let e=this.ref+1;return e===this.ref?this.ref=0:this.ref=e,this.ref.toString()}_leaveOpenTopic(e){let t=this.channels.find(r=>r.topic===e&&(r._isJoined()||r._isJoining()));t&&(this.log("transport",`leaving duplicate topic "${e}"`),t.unsubscribe())}_remove(e){this.channels=this.channels.filter(t=>t._joinRef()!==e._joinRef())}setupConnection(){this.conn&&(this.conn.binaryType="arraybuffer",this.conn.onopen=()=>this._onConnOpen(),this.conn.onerror=e=>this._onConnError(e),this.conn.onmessage=e=>this._onConnMessage(e),this.conn.onclose=e=>this._onConnClose(e))}_endPointURL(){return this._appendParams(this.endPoint,Object.assign({},this.params,{vsn:gu}))}_onConnMessage(e){this.decode(e.data,t=>{let{topic:r,event:a,payload:o,ref:u}=t;(u&&u===this.pendingHeartbeatRef||a===o?.type)&&(this.pendingHeartbeatRef=null),this.log("receive",`${o.status||""} ${r} ${a} ${u&&"("+u+")"||""}`,o),this.channels.filter(d=>d._isMember(r)).forEach(d=>d._trigger(a,o,u)),this.stateChangeCallbacks.message.forEach(d=>d(t))})}_onConnOpen(){this.log("transport",`connected to ${this._endPointURL()}`),this._flushSendBuffer(),this.reconnectTimer.reset(),this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.heartbeatTimer=setInterval(()=>this._sendHeartbeat(),this.heartbeatIntervalMs),this.stateChangeCallbacks.open.forEach(e=>e())}_onConnClose(e){this.log("transport","close",e),this._triggerChanError(),this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.reconnectTimer.scheduleTimeout(),this.stateChangeCallbacks.close.forEach(t=>t(e))}_onConnError(e){this.log("transport",e.message),this._triggerChanError(),this.stateChangeCallbacks.error.forEach(t=>t(e))}_triggerChanError(){this.channels.forEach(e=>e._trigger(Re.error))}_appendParams(e,t){if(Object.keys(t).length===0)return e;const r=e.match(/\?/)?"&":"?",a=new URLSearchParams(t);return`${e}${r}${a}`}_flushSendBuffer(){this.isConnected()&&this.sendBuffer.length>0&&(this.sendBuffer.forEach(e=>e()),this.sendBuffer=[])}_sendHeartbeat(){var e;if(this.isConnected()){if(this.pendingHeartbeatRef){this.pendingHeartbeatRef=null,this.log("transport","heartbeat timeout. Attempting to re-establish connection"),(e=this.conn)===null||e===void 0||e.close(vu,"hearbeat timeout");return}this.pendingHeartbeatRef=this._makeRef(),this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:this.pendingHeartbeatRef}),this.setAuth(this.accessToken)}}}class Au{constructor(e,t,r){this.binaryType="arraybuffer",this.onclose=()=>{},this.onerror=()=>{},this.onmessage=()=>{},this.onopen=()=>{},this.readyState=$t.connecting,this.send=()=>{},this.url=null,this.url=e,this.close=r.close}}class As extends Error{constructor(e){super(e),this.__isStorageError=!0,this.name="StorageError"}}function _e(i){return typeof i=="object"&&i!==null&&"__isStorageError"in i}class Cu extends As{constructor(e,t){super(e),this.name="StorageApiError",this.status=t}toJSON(){return{name:this.name,message:this.message,status:this.status}}}class Di extends As{constructor(e,t){super(e),this.name="StorageUnknownError",this.originalError=t}}var Ru=function(i,e,t,r){function a(o){return o instanceof t?o:new t(function(u){u(o)})}return new(t||(t=Promise))(function(o,u){function d(g){try{y(r.next(g))}catch(S){u(S)}}function p(g){try{y(r.throw(g))}catch(S){u(S)}}function y(g){g.done?o(g.value):a(g.value).then(d,p)}y((r=r.apply(i,e||[])).next())})};const So=i=>{let e;return i?e=i:typeof fetch>"u"?e=(...t)=>Nt(()=>Promise.resolve().then(()=>pr),void 0).then(({default:r})=>r(...t)):e=fetch,(...t)=>e(...t)},ju=()=>Ru(void 0,void 0,void 0,function*(){return typeof Response>"u"?(yield Nt(()=>Promise.resolve().then(()=>pr),void 0)).Response:Response});var Bt=function(i,e,t,r){function a(o){return o instanceof t?o:new t(function(u){u(o)})}return new(t||(t=Promise))(function(o,u){function d(g){try{y(r.next(g))}catch(S){u(S)}}function p(g){try{y(r.throw(g))}catch(S){u(S)}}function y(g){g.done?o(g.value):a(g.value).then(d,p)}y((r=r.apply(i,e||[])).next())})};const es=i=>i.msg||i.message||i.error_description||i.error||JSON.stringify(i),Iu=(i,e)=>Bt(void 0,void 0,void 0,function*(){const t=yield ju();i instanceof t?i.json().then(r=>{e(new Cu(es(r),i.status||500))}).catch(r=>{e(new Di(es(r),r))}):e(new Di(es(i),i))}),Du=(i,e,t,r)=>{const a={method:i,headers:e?.headers||{}};return i==="GET"?a:(a.headers=Object.assign({"Content-Type":"application/json"},e?.headers),a.body=JSON.stringify(r),Object.assign(Object.assign({},a),t))};function sn(i,e,t,r,a,o){return Bt(this,void 0,void 0,function*(){return new Promise((u,d)=>{i(t,Du(e,r,a,o)).then(p=>{if(!p.ok)throw p;return r?.noResolveJson?p:p.json()}).then(p=>u(p)).catch(p=>Iu(p,d))})})}function ps(i,e,t,r){return Bt(this,void 0,void 0,function*(){return sn(i,"GET",e,t,r)})}function Ze(i,e,t,r,a){return Bt(this,void 0,void 0,function*(){return sn(i,"POST",e,r,a,t)})}function $u(i,e,t,r,a){return Bt(this,void 0,void 0,function*(){return sn(i,"PUT",e,r,a,t)})}function Eo(i,e,t,r,a){return Bt(this,void 0,void 0,function*(){return sn(i,"DELETE",e,r,a,t)})}var xe=function(i,e,t,r){function a(o){return o instanceof t?o:new t(function(u){u(o)})}return new(t||(t=Promise))(function(o,u){function d(g){try{y(r.next(g))}catch(S){u(S)}}function p(g){try{y(r.throw(g))}catch(S){u(S)}}function y(g){g.done?o(g.value):a(g.value).then(d,p)}y((r=r.apply(i,e||[])).next())})};const Nu={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},$i={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1};class Lu{constructor(e,t={},r,a){this.url=e,this.headers=t,this.bucketId=r,this.fetch=So(a)}uploadOrUpdate(e,t,r,a){return xe(this,void 0,void 0,function*(){try{let o;const u=Object.assign(Object.assign({},$i),a),d=Object.assign(Object.assign({},this.headers),e==="POST"&&{"x-upsert":String(u.upsert)});typeof Blob<"u"&&r instanceof Blob?(o=new FormData,o.append("cacheControl",u.cacheControl),o.append("",r)):typeof FormData<"u"&&r instanceof FormData?(o=r,o.append("cacheControl",u.cacheControl)):(o=r,d["cache-control"]=`max-age=${u.cacheControl}`,d["content-type"]=u.contentType);const p=this._removeEmptyFolders(t),y=this._getFinalPath(p),g=yield this.fetch(`${this.url}/object/${y}`,Object.assign({method:e,body:o,headers:d},u?.duplex?{duplex:u.duplex}:{})),S=yield g.json();return g.ok?{data:{path:p,id:S.Id,fullPath:S.Key},error:null}:{data:null,error:S}}catch(o){if(_e(o))return{data:null,error:o};throw o}})}upload(e,t,r){return xe(this,void 0,void 0,function*(){return this.uploadOrUpdate("POST",e,t,r)})}uploadToSignedUrl(e,t,r,a){return xe(this,void 0,void 0,function*(){const o=this._removeEmptyFolders(e),u=this._getFinalPath(o),d=new URL(this.url+`/object/upload/sign/${u}`);d.searchParams.set("token",t);try{let p;const y=Object.assign({upsert:$i.upsert},a),g=Object.assign(Object.assign({},this.headers),{"x-upsert":String(y.upsert)});typeof Blob<"u"&&r instanceof Blob?(p=new FormData,p.append("cacheControl",y.cacheControl),p.append("",r)):typeof FormData<"u"&&r instanceof FormData?(p=r,p.append("cacheControl",y.cacheControl)):(p=r,g["cache-control"]=`max-age=${y.cacheControl}`,g["content-type"]=y.contentType);const S=yield this.fetch(d.toString(),{method:"PUT",body:p,headers:g}),$=yield S.json();return S.ok?{data:{path:o,fullPath:$.Key},error:null}:{data:null,error:$}}catch(p){if(_e(p))return{data:null,error:p};throw p}})}createSignedUploadUrl(e){return xe(this,void 0,void 0,function*(){try{let t=this._getFinalPath(e);const r=yield Ze(this.fetch,`${this.url}/object/upload/sign/${t}`,{},{headers:this.headers}),a=new URL(this.url+r.url),o=a.searchParams.get("token");if(!o)throw new As("No token returned by API");return{data:{signedUrl:a.toString(),path:e,token:o},error:null}}catch(t){if(_e(t))return{data:null,error:t};throw t}})}update(e,t,r){return xe(this,void 0,void 0,function*(){return this.uploadOrUpdate("PUT",e,t,r)})}move(e,t){return xe(this,void 0,void 0,function*(){try{return{data:yield Ze(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:e,destinationKey:t},{headers:this.headers}),error:null}}catch(r){if(_e(r))return{data:null,error:r};throw r}})}copy(e,t){return xe(this,void 0,void 0,function*(){try{return{data:{path:(yield Ze(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:e,destinationKey:t},{headers:this.headers})).Key},error:null}}catch(r){if(_e(r))return{data:null,error:r};throw r}})}createSignedUrl(e,t,r){return xe(this,void 0,void 0,function*(){try{let a=this._getFinalPath(e),o=yield Ze(this.fetch,`${this.url}/object/sign/${a}`,Object.assign({expiresIn:t},r?.transform?{transform:r.transform}:{}),{headers:this.headers});const u=r?.download?`&download=${r.download===!0?"":r.download}`:"";return o={signedUrl:encodeURI(`${this.url}${o.signedURL}${u}`)},{data:o,error:null}}catch(a){if(_e(a))return{data:null,error:a};throw a}})}createSignedUrls(e,t,r){return xe(this,void 0,void 0,function*(){try{const a=yield Ze(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:t,paths:e},{headers:this.headers}),o=r?.download?`&download=${r.download===!0?"":r.download}`:"";return{data:a.map(u=>Object.assign(Object.assign({},u),{signedUrl:u.signedURL?encodeURI(`${this.url}${u.signedURL}${o}`):null})),error:null}}catch(a){if(_e(a))return{data:null,error:a};throw a}})}download(e,t){return xe(this,void 0,void 0,function*(){const a=typeof t?.transform<"u"?"render/image/authenticated":"object",o=this.transformOptsToQueryString(t?.transform||{}),u=o?`?${o}`:"";try{const d=this._getFinalPath(e);return{data:yield(yield ps(this.fetch,`${this.url}/${a}/${d}${u}`,{headers:this.headers,noResolveJson:!0})).blob(),error:null}}catch(d){if(_e(d))return{data:null,error:d};throw d}})}getPublicUrl(e,t){const r=this._getFinalPath(e),a=[],o=t?.download?`download=${t.download===!0?"":t.download}`:"";o!==""&&a.push(o);const d=typeof t?.transform<"u"?"render/image":"object",p=this.transformOptsToQueryString(t?.transform||{});p!==""&&a.push(p);let y=a.join("&");return y!==""&&(y=`?${y}`),{data:{publicUrl:encodeURI(`${this.url}/${d}/public/${r}${y}`)}}}remove(e){return xe(this,void 0,void 0,function*(){try{return{data:yield Eo(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:e},{headers:this.headers}),error:null}}catch(t){if(_e(t))return{data:null,error:t};throw t}})}list(e,t,r){return xe(this,void 0,void 0,function*(){try{const a=Object.assign(Object.assign(Object.assign({},Nu),t),{prefix:e||""});return{data:yield Ze(this.fetch,`${this.url}/object/list/${this.bucketId}`,a,{headers:this.headers},r),error:null}}catch(a){if(_e(a))return{data:null,error:a};throw a}})}_getFinalPath(e){return`${this.bucketId}/${e}`}_removeEmptyFolders(e){return e.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(e){const t=[];return e.width&&t.push(`width=${e.width}`),e.height&&t.push(`height=${e.height}`),e.resize&&t.push(`resize=${e.resize}`),e.format&&t.push(`format=${e.format}`),e.quality&&t.push(`quality=${e.quality}`),t.join("&")}}const Uu="2.5.5",Fu={"X-Client-Info":`storage-js/${Uu}`};var At=function(i,e,t,r){function a(o){return o instanceof t?o:new t(function(u){u(o)})}return new(t||(t=Promise))(function(o,u){function d(g){try{y(r.next(g))}catch(S){u(S)}}function p(g){try{y(r.throw(g))}catch(S){u(S)}}function y(g){g.done?o(g.value):a(g.value).then(d,p)}y((r=r.apply(i,e||[])).next())})};class Bu{constructor(e,t={},r){this.url=e,this.headers=Object.assign(Object.assign({},Fu),t),this.fetch=So(r)}listBuckets(){return At(this,void 0,void 0,function*(){try{return{data:yield ps(this.fetch,`${this.url}/bucket`,{headers:this.headers}),error:null}}catch(e){if(_e(e))return{data:null,error:e};throw e}})}getBucket(e){return At(this,void 0,void 0,function*(){try{return{data:yield ps(this.fetch,`${this.url}/bucket/${e}`,{headers:this.headers}),error:null}}catch(t){if(_e(t))return{data:null,error:t};throw t}})}createBucket(e,t={public:!1}){return At(this,void 0,void 0,function*(){try{return{data:yield Ze(this.fetch,`${this.url}/bucket`,{id:e,name:e,public:t.public,file_size_limit:t.fileSizeLimit,allowed_mime_types:t.allowedMimeTypes},{headers:this.headers}),error:null}}catch(r){if(_e(r))return{data:null,error:r};throw r}})}updateBucket(e,t){return At(this,void 0,void 0,function*(){try{return{data:yield $u(this.fetch,`${this.url}/bucket/${e}`,{id:e,name:e,public:t.public,file_size_limit:t.fileSizeLimit,allowed_mime_types:t.allowedMimeTypes},{headers:this.headers}),error:null}}catch(r){if(_e(r))return{data:null,error:r};throw r}})}emptyBucket(e){return At(this,void 0,void 0,function*(){try{return{data:yield Ze(this.fetch,`${this.url}/bucket/${e}/empty`,{},{headers:this.headers}),error:null}}catch(t){if(_e(t))return{data:null,error:t};throw t}})}deleteBucket(e){return At(this,void 0,void 0,function*(){try{return{data:yield Eo(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(t){if(_e(t))return{data:null,error:t};throw t}})}}class qu extends Bu{constructor(e,t={},r){super(e,t,r)}from(e){return new Lu(this.url,this.headers,e,this.fetch)}}const Mu="2.42.5";let or="";typeof Deno<"u"?or="deno":typeof document<"u"?or="web":typeof navigator<"u"&&navigator.product==="ReactNative"?or="react-native":or="node";const Ku={"X-Client-Info":`supabase-js-${or}/${Mu}`},zu={headers:Ku},Ju={schema:"public"},Hu={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"},Vu={};var Wu=function(i,e,t,r){function a(o){return o instanceof t?o:new t(function(u){u(o)})}return new(t||(t=Promise))(function(o,u){function d(g){try{y(r.next(g))}catch(S){u(S)}}function p(g){try{y(r.throw(g))}catch(S){u(S)}}function y(g){g.done?o(g.value):a(g.value).then(d,p)}y((r=r.apply(i,e||[])).next())})};const Gu=i=>{let e;return i?e=i:typeof fetch>"u"?e=Os:e=fetch,(...t)=>e(...t)},Yu=()=>typeof Headers>"u"?bo:Headers,Xu=(i,e,t)=>{const r=Gu(t),a=Yu();return(o,u)=>Wu(void 0,void 0,void 0,function*(){var d;const p=(d=yield e())!==null&&d!==void 0?d:i;let y=new a(u?.headers);return y.has("apikey")||y.set("apikey",i),y.has("Authorization")||y.set("Authorization",`Bearer ${p}`),r(o,Object.assign(Object.assign({},u),{headers:y}))})};function Qu(i){return i.replace(/\/$/,"")}function Zu(i,e){const{db:t,auth:r,realtime:a,global:o}=i,{db:u,auth:d,realtime:p,global:y}=e;return{db:Object.assign(Object.assign({},u),t),auth:Object.assign(Object.assign({},d),r),realtime:Object.assign(Object.assign({},p),a),global:Object.assign(Object.assign({},y),o)}}const Po="2.63.1",el="http://localhost:9999",tl="supabase.auth.token",rl={"X-Client-Info":`gotrue-js/${Po}`},Ni=10,ms="X-Supabase-Api-Version",Oo={"2024-01-01":{timestamp:Date.parse("2024-01-01T00:00:00.0Z"),name:"2024-01-01"}};function nl(i){return Math.round(Date.now()/1e3)+i}function sl(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(i){const e=Math.random()*16|0;return(i=="x"?e:e&3|8).toString(16)})}const Ce=()=>typeof document<"u",dt={tested:!1,writable:!1},cr=()=>{if(!Ce())return!1;try{if(typeof globalThis.localStorage!="object")return!1}catch{return!1}if(dt.tested)return dt.writable;const i=`lswt-${Math.random()}${Math.random()}`;try{globalThis.localStorage.setItem(i,i),globalThis.localStorage.removeItem(i),dt.tested=!0,dt.writable=!0}catch{dt.tested=!0,dt.writable=!1}return dt.writable};function ts(i){const e={},t=new URL(i);if(t.hash&&t.hash[0]==="#")try{new URLSearchParams(t.hash.substring(1)).forEach((a,o)=>{e[o]=a})}catch{}return t.searchParams.forEach((r,a)=>{e[a]=r}),e}const xo=i=>{let e;return i?e=i:typeof fetch>"u"?e=(...t)=>Nt(()=>Promise.resolve().then(()=>pr),void 0).then(({default:r})=>r(...t)):e=fetch,(...t)=>e(...t)},il=i=>typeof i=="object"&&i!==null&&"status"in i&&"ok"in i&&"json"in i&&typeof i.json=="function",To=async(i,e,t)=>{await i.setItem(e,JSON.stringify(t))},zr=async(i,e)=>{const t=await i.getItem(e);if(!t)return null;try{return JSON.parse(t)}catch{return t}},rs=async(i,e)=>{await i.removeItem(e)};function ol(i){const e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let t="",r,a,o,u,d,p,y,g=0;for(i=i.replace("-","+").replace("_","/");g>4,a=(d&15)<<4|p>>2,o=(p&3)<<6|y,t=t+String.fromCharCode(r),p!=64&&a!=0&&(t=t+String.fromCharCode(a)),y!=64&&o!=0&&(t=t+String.fromCharCode(o));return t}class on{constructor(){this.promise=new on.promiseConstructor((e,t)=>{this.resolve=e,this.reject=t})}}on.promiseConstructor=Promise;function Li(i){const e=/^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}=?$|[a-z0-9_-]{2}(==)?$)$/i,t=i.split(".");if(t.length!==3)throw new Error("JWT is not valid: not a JWT structure");if(!e.test(t[1]))throw new Error("JWT is not valid: payload is not in base64url format");const r=t[1];return JSON.parse(ol(r))}async function al(i){return await new Promise(e=>{setTimeout(()=>e(null),i)})}function cl(i,e){return new Promise((r,a)=>{(async()=>{for(let o=0;o<1/0;o++)try{const u=await i(o);if(!e(o,null,u)){r(u);return}}catch(u){if(!e(o,u)){a(u);return}}})()})}function ul(i){return("0"+i.toString(16)).substr(-2)}function ll(){const e=new Uint32Array(56);if(typeof crypto>"u"){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~",r=t.length;let a="";for(let o=0;o<56;o++)a+=t.charAt(Math.floor(Math.random()*r));return a}return crypto.getRandomValues(e),Array.from(e,ul).join("")}async function hl(i){const t=new TextEncoder().encode(i),r=await crypto.subtle.digest("SHA-256",t),a=new Uint8Array(r);return Array.from(a).map(o=>String.fromCharCode(o)).join("")}function dl(i){return btoa(i).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function fl(i){if(!(typeof crypto<"u"&&typeof crypto.subtle<"u"&&typeof TextEncoder<"u"))return console.warn("WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256."),i;const t=await hl(i);return dl(t)}async function Ct(i,e,t=!1){const r=ll();let a=r;t&&(a+="/PASSWORD_RECOVERY"),await To(i,`${e}-code-verifier`,a);const o=await fl(r);return[o,r===o?"plain":"s256"]}const pl=/^2[0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1])$/i;function ml(i){const e=i.headers.get(ms);if(!e||!e.match(pl))return null;try{return new Date(`${e}T00:00:00.0Z`)}catch{return null}}class Cs extends Error{constructor(e,t,r){super(e),this.__isAuthError=!0,this.name="AuthError",this.status=t,this.code=r}}function ee(i){return typeof i=="object"&&i!==null&&"__isAuthError"in i}class yl extends Cs{constructor(e,t,r){super(e,t,r),this.name="AuthApiError",this.status=t,this.code=r}}function gl(i){return ee(i)&&i.name==="AuthApiError"}class Ao extends Cs{constructor(e,t){super(e),this.name="AuthUnknownError",this.originalError=t}}class vt extends Cs{constructor(e,t,r,a){super(e,r,a),this.name=t,this.status=r}}class ft extends vt{constructor(){super("Auth session missing!","AuthSessionMissingError",400,void 0)}}class ns extends vt{constructor(){super("Auth session or user missing","AuthInvalidTokenResponseError",500,void 0)}}class Jr extends vt{constructor(e){super(e,"AuthInvalidCredentialsError",400,void 0)}}class Hr extends vt{constructor(e,t=null){super(e,"AuthImplicitGrantRedirectError",500,void 0),this.details=null,this.details=t}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class Ui extends vt{constructor(e,t=null){super(e,"AuthPKCEGrantCodeExchangeError",500,void 0),this.details=null,this.details=t}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class ys extends vt{constructor(e,t){super(e,"AuthRetryableFetchError",t,void 0)}}function ss(i){return ee(i)&&i.name==="AuthRetryableFetchError"}class Fi extends vt{constructor(e,t,r){super(e,"AuthWeakPasswordError",t,"weak_password"),this.reasons=r}}var vl=function(i,e){var t={};for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&e.indexOf(r)<0&&(t[r]=i[r]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,r=Object.getOwnPropertySymbols(i);ai.msg||i.message||i.error_description||i.error||JSON.stringify(i),bl=[502,503,504];async function Bi(i){var e;if(!il(i))throw new ys(pt(i),0);if(bl.includes(i.status))throw new ys(pt(i),i.status);let t;try{t=await i.json()}catch(o){throw new Ao(pt(o),o)}let r;const a=ml(i);if(a&&a.getTime()>=Oo["2024-01-01"].timestamp&&typeof t=="object"&&t&&typeof t.code=="string"?r=t.code:typeof t=="object"&&t&&typeof t.error_code=="string"&&(r=t.error_code),r){if(r==="weak_password")throw new Fi(pt(t),i.status,((e=t.weak_password)===null||e===void 0?void 0:e.reasons)||[])}else if(typeof t=="object"&&t&&typeof t.weak_password=="object"&&t.weak_password&&Array.isArray(t.weak_password.reasons)&&t.weak_password.reasons.length&&t.weak_password.reasons.reduce((o,u)=>o&&typeof u=="string",!0))throw new Fi(pt(t),i.status,t.weak_password.reasons);throw new yl(pt(t),i.status||500,r)}const wl=(i,e,t,r)=>{const a={method:i,headers:e?.headers||{}};return i==="GET"?a:(a.headers=Object.assign({"Content-Type":"application/json;charset=UTF-8"},e?.headers),a.body=JSON.stringify(r),Object.assign(Object.assign({},a),t))};async function te(i,e,t,r){var a;const o=Object.assign({},r?.headers);o[ms]||(o[ms]=Oo["2024-01-01"].name),r?.jwt&&(o.Authorization=`Bearer ${r.jwt}`);const u=(a=r?.query)!==null&&a!==void 0?a:{};r?.redirectTo&&(u.redirect_to=r.redirectTo);const d=Object.keys(u).length?"?"+new URLSearchParams(u).toString():"",p=await _l(i,e,t+d,{headers:o,noResolveJson:r?.noResolveJson},{},r?.body);return r?.xform?r?.xform(p):{data:Object.assign({},p),error:null}}async function _l(i,e,t,r,a,o){const u=wl(e,r,a,o);let d;try{d=await i(t,Object.assign(Object.assign({},u),{cache:"no-store"}))}catch(p){throw console.error(p),new ys(pt(p),0)}if(d.ok||await Bi(d),r?.noResolveJson)return d;try{return await d.json()}catch(p){await Bi(p)}}function Qe(i){var e;let t=null;Pl(i)&&(t=Object.assign({},i),i.expires_at||(t.expires_at=nl(i.expires_in)));const r=(e=i.user)!==null&&e!==void 0?e:i;return{data:{session:t,user:r},error:null}}function qi(i){const e=Qe(i);return!e.error&&i.weak_password&&typeof i.weak_password=="object"&&Array.isArray(i.weak_password.reasons)&&i.weak_password.reasons.length&&i.weak_password.message&&typeof i.weak_password.message=="string"&&i.weak_password.reasons.reduce((t,r)=>t&&typeof r=="string",!0)&&(e.data.weak_password=i.weak_password),e}function et(i){var e;return{data:{user:(e=i.user)!==null&&e!==void 0?e:i},error:null}}function kl(i){return{data:i,error:null}}function Sl(i){const{action_link:e,email_otp:t,hashed_token:r,redirect_to:a,verification_type:o}=i,u=vl(i,["action_link","email_otp","hashed_token","redirect_to","verification_type"]),d={action_link:e,email_otp:t,hashed_token:r,redirect_to:a,verification_type:o},p=Object.assign({},u);return{data:{properties:d,user:p},error:null}}function El(i){return i}function Pl(i){return i.access_token&&i.refresh_token&&i.expires_in}var Ol=function(i,e){var t={};for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&e.indexOf(r)<0&&(t[r]=i[r]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,r=Object.getOwnPropertySymbols(i);a0&&(K.forEach(N=>{const U=parseInt(N.split(";")[0].split("=")[1].substring(0,1)),W=JSON.parse(N.split(";")[1].split("=")[1]);y[`${W}Page`]=U}),y.total=parseInt($)),{data:Object.assign(Object.assign({},S),y),error:null}}catch(y){if(ee(y))return{data:{users:[]},error:y};throw y}}async getUserById(e){try{return await te(this.fetch,"GET",`${this.url}/admin/users/${e}`,{headers:this.headers,xform:et})}catch(t){if(ee(t))return{data:{user:null},error:t};throw t}}async updateUserById(e,t){try{return await te(this.fetch,"PUT",`${this.url}/admin/users/${e}`,{body:t,headers:this.headers,xform:et})}catch(r){if(ee(r))return{data:{user:null},error:r};throw r}}async deleteUser(e,t=!1){try{return await te(this.fetch,"DELETE",`${this.url}/admin/users/${e}`,{headers:this.headers,body:{should_soft_delete:t},xform:et})}catch(r){if(ee(r))return{data:{user:null},error:r};throw r}}async _listFactors(e){try{const{data:t,error:r}=await te(this.fetch,"GET",`${this.url}/admin/users/${e.userId}/factors`,{headers:this.headers,xform:a=>({data:{factors:a},error:null})});return{data:t,error:r}}catch(t){if(ee(t))return{data:null,error:t};throw t}}async _deleteFactor(e){try{return{data:await te(this.fetch,"DELETE",`${this.url}/admin/users/${e.userId}/factors/${e.id}`,{headers:this.headers}),error:null}}catch(t){if(ee(t))return{data:null,error:t};throw t}}}const Tl={getItem:i=>cr()?globalThis.localStorage.getItem(i):null,setItem:(i,e)=>{cr()&&globalThis.localStorage.setItem(i,e)},removeItem:i=>{cr()&&globalThis.localStorage.removeItem(i)}};function Mi(i={}){return{getItem:e=>i[e]||null,setItem:(e,t)=>{i[e]=t},removeItem:e=>{delete i[e]}}}function Al(){if(typeof globalThis!="object")try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__}catch{typeof self<"u"&&(self.globalThis=self)}}const Rt={debug:!!(globalThis&&cr()&&globalThis.localStorage&&globalThis.localStorage.getItem("supabase.gotrue-js.locks.debug")==="true")};class Co extends Error{constructor(e){super(e),this.isAcquireTimeout=!0}}class Cl extends Co{}async function Rl(i,e,t){Rt.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquire lock",i,e);const r=new globalThis.AbortController;return e>0&&setTimeout(()=>{r.abort(),Rt.debug&&console.log("@supabase/gotrue-js: navigatorLock acquire timed out",i)},e),await globalThis.navigator.locks.request(i,e===0?{mode:"exclusive",ifAvailable:!0}:{mode:"exclusive",signal:r.signal},async a=>{if(a){Rt.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquired",i,a.name);try{return await t()}finally{Rt.debug&&console.log("@supabase/gotrue-js: navigatorLock: released",i,a.name)}}else{if(e===0)throw Rt.debug&&console.log("@supabase/gotrue-js: navigatorLock: not immediately available",i),new Cl(`Acquiring an exclusive Navigator LockManager lock "${i}" immediately failed`);if(Rt.debug)try{const o=await globalThis.navigator.locks.query();console.log("@supabase/gotrue-js: Navigator LockManager state",JSON.stringify(o,null," "))}catch(o){console.warn("@supabase/gotrue-js: Error when querying Navigator LockManager state",o)}return console.warn("@supabase/gotrue-js: Navigator LockManager returned a null lock when using #request without ifAvailable set to true, it appears this browser is not following the LockManager spec https://developer.mozilla.org/en-US/docs/Web/API/LockManager/request"),await t()}})}Al();const jl={url:el,storageKey:tl,autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,headers:rl,flowType:"implicit",debug:!1},sr=30*1e3,Ki=3;async function zi(i,e,t){return await t()}class lr{constructor(e){var t,r;this.memoryStorage=null,this.stateChangeEmitters=new Map,this.autoRefreshTicker=null,this.visibilityChangedCallback=null,this.refreshingDeferred=null,this.initializePromise=null,this.detectSessionInUrl=!0,this.lockAcquired=!1,this.pendingInLock=[],this.broadcastChannel=null,this.logger=console.log,this.instanceID=lr.nextInstanceID,lr.nextInstanceID+=1,this.instanceID>0&&Ce()&&console.warn("Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.");const a=Object.assign(Object.assign({},jl),e);if(this.logDebugMessages=!!a.debug,typeof a.debug=="function"&&(this.logger=a.debug),this.persistSession=a.persistSession,this.storageKey=a.storageKey,this.autoRefreshToken=a.autoRefreshToken,this.admin=new xl({url:a.url,headers:a.headers,fetch:a.fetch}),this.url=a.url,this.headers=a.headers,this.fetch=xo(a.fetch),this.lock=a.lock||zi,this.detectSessionInUrl=a.detectSessionInUrl,this.flowType=a.flowType,a.lock?this.lock=a.lock:Ce()&&(!((t=globalThis?.navigator)===null||t===void 0)&&t.locks)?this.lock=Rl:this.lock=zi,this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this)},this.persistSession?a.storage?this.storage=a.storage:cr()?this.storage=Tl:(this.memoryStorage={},this.storage=Mi(this.memoryStorage)):(this.memoryStorage={},this.storage=Mi(this.memoryStorage)),Ce()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(o){console.error("Failed to create a new BroadcastChannel, multi-tab state changes will not be available",o)}(r=this.broadcastChannel)===null||r===void 0||r.addEventListener("message",async o=>{this._debug("received broadcast notification from other tab or client",o),await this._notifyAllSubscribers(o.data.event,o.data.session,!1)})}this.initialize()}_debug(...e){return this.logDebugMessages&&this.logger(`GoTrueClient@${this.instanceID} (${Po}) ${new Date().toISOString()}`,...e),this}async initialize(){return this.initializePromise?await this.initializePromise:(this.initializePromise=(async()=>await this._acquireLock(-1,async()=>await this._initialize()))(),await this.initializePromise)}async _initialize(){try{const e=Ce()?await this._isPKCEFlow():!1;if(this._debug("#_initialize()","begin","is PKCE flow",e),e||this.detectSessionInUrl&&this._isImplicitGrantFlow()){const{data:t,error:r}=await this._getSessionFromURL(e);if(r)return this._debug("#_initialize()","error detecting session from URL",r),r?.message==="Identity is already linked"||r?.message==="Identity is already linked to another user"?{error:r}:(await this._removeSession(),{error:r});const{session:a,redirectType:o}=t;return this._debug("#_initialize()","detected session in URL",a,"redirect type",o),await this._saveSession(a),setTimeout(async()=>{o==="recovery"?await this._notifyAllSubscribers("PASSWORD_RECOVERY",a):await this._notifyAllSubscribers("SIGNED_IN",a)},0),{error:null}}return await this._recoverAndRefresh(),{error:null}}catch(e){return ee(e)?{error:e}:{error:new Ao("Unexpected error during initialization",e)}}finally{await this._handleVisibilityChange(),this._debug("#_initialize()","end")}}async signInAnonymously(e){var t,r,a;try{await this._removeSession();const o=await te(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{data:(r=(t=e?.options)===null||t===void 0?void 0:t.data)!==null&&r!==void 0?r:{},gotrue_meta_security:{captcha_token:(a=e?.options)===null||a===void 0?void 0:a.captchaToken}},xform:Qe}),{data:u,error:d}=o;if(d||!u)return{data:{user:null,session:null},error:d};const p=u.session,y=u.user;return u.session&&(await this._saveSession(u.session),await this._notifyAllSubscribers("SIGNED_IN",p)),{data:{user:y,session:p},error:null}}catch(o){if(ee(o))return{data:{user:null,session:null},error:o};throw o}}async signUp(e){var t,r,a;try{await this._removeSession();let o;if("email"in e){const{email:g,password:S,options:$}=e;let K=null,N=null;this.flowType==="pkce"&&([K,N]=await Ct(this.storage,this.storageKey)),o=await te(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,redirectTo:$?.emailRedirectTo,body:{email:g,password:S,data:(t=$?.data)!==null&&t!==void 0?t:{},gotrue_meta_security:{captcha_token:$?.captchaToken},code_challenge:K,code_challenge_method:N},xform:Qe})}else if("phone"in e){const{phone:g,password:S,options:$}=e;o=await te(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{phone:g,password:S,data:(r=$?.data)!==null&&r!==void 0?r:{},channel:(a=$?.channel)!==null&&a!==void 0?a:"sms",gotrue_meta_security:{captcha_token:$?.captchaToken}},xform:Qe})}else throw new Jr("You must provide either an email or phone number and a password");const{data:u,error:d}=o;if(d||!u)return{data:{user:null,session:null},error:d};const p=u.session,y=u.user;return u.session&&(await this._saveSession(u.session),await this._notifyAllSubscribers("SIGNED_IN",p)),{data:{user:y,session:p},error:null}}catch(o){if(ee(o))return{data:{user:null,session:null},error:o};throw o}}async signInWithPassword(e){try{await this._removeSession();let t;if("email"in e){const{email:o,password:u,options:d}=e;t=await te(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:o,password:u,gotrue_meta_security:{captcha_token:d?.captchaToken}},xform:qi})}else if("phone"in e){const{phone:o,password:u,options:d}=e;t=await te(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:o,password:u,gotrue_meta_security:{captcha_token:d?.captchaToken}},xform:qi})}else throw new Jr("You must provide either an email or phone number and a password");const{data:r,error:a}=t;return a?{data:{user:null,session:null},error:a}:!r||!r.session||!r.user?{data:{user:null,session:null},error:new ns}:(r.session&&(await this._saveSession(r.session),await this._notifyAllSubscribers("SIGNED_IN",r.session)),{data:Object.assign({user:r.user,session:r.session},r.weak_password?{weakPassword:r.weak_password}:null),error:a})}catch(t){if(ee(t))return{data:{user:null,session:null},error:t};throw t}}async signInWithOAuth(e){var t,r,a,o;return await this._removeSession(),await this._handleProviderSignIn(e.provider,{redirectTo:(t=e.options)===null||t===void 0?void 0:t.redirectTo,scopes:(r=e.options)===null||r===void 0?void 0:r.scopes,queryParams:(a=e.options)===null||a===void 0?void 0:a.queryParams,skipBrowserRedirect:(o=e.options)===null||o===void 0?void 0:o.skipBrowserRedirect})}async exchangeCodeForSession(e){return await this.initializePromise,this._acquireLock(-1,async()=>this._exchangeCodeForSession(e))}async _exchangeCodeForSession(e){const t=await zr(this.storage,`${this.storageKey}-code-verifier`),[r,a]=(t??"").split("/"),{data:o,error:u}=await te(this.fetch,"POST",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:e,code_verifier:r},xform:Qe});return await rs(this.storage,`${this.storageKey}-code-verifier`),u?{data:{user:null,session:null,redirectType:null},error:u}:!o||!o.session||!o.user?{data:{user:null,session:null,redirectType:null},error:new ns}:(o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",o.session)),{data:Object.assign(Object.assign({},o),{redirectType:a??null}),error:u})}async signInWithIdToken(e){await this._removeSession();try{const{options:t,provider:r,token:a,access_token:o,nonce:u}=e,d=await te(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:r,id_token:a,access_token:o,nonce:u,gotrue_meta_security:{captcha_token:t?.captchaToken}},xform:Qe}),{data:p,error:y}=d;return y?{data:{user:null,session:null},error:y}:!p||!p.session||!p.user?{data:{user:null,session:null},error:new ns}:(p.session&&(await this._saveSession(p.session),await this._notifyAllSubscribers("SIGNED_IN",p.session)),{data:p,error:y})}catch(t){if(ee(t))return{data:{user:null,session:null},error:t};throw t}}async signInWithOtp(e){var t,r,a,o,u;try{if(await this._removeSession(),"email"in e){const{email:d,options:p}=e;let y=null,g=null;this.flowType==="pkce"&&([y,g]=await Ct(this.storage,this.storageKey));const{error:S}=await te(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{email:d,data:(t=p?.data)!==null&&t!==void 0?t:{},create_user:(r=p?.shouldCreateUser)!==null&&r!==void 0?r:!0,gotrue_meta_security:{captcha_token:p?.captchaToken},code_challenge:y,code_challenge_method:g},redirectTo:p?.emailRedirectTo});return{data:{user:null,session:null},error:S}}if("phone"in e){const{phone:d,options:p}=e,{data:y,error:g}=await te(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{phone:d,data:(a=p?.data)!==null&&a!==void 0?a:{},create_user:(o=p?.shouldCreateUser)!==null&&o!==void 0?o:!0,gotrue_meta_security:{captcha_token:p?.captchaToken},channel:(u=p?.channel)!==null&&u!==void 0?u:"sms"}});return{data:{user:null,session:null,messageId:y?.message_id},error:g}}throw new Jr("You must provide either an email or phone number.")}catch(d){if(ee(d))return{data:{user:null,session:null},error:d};throw d}}async verifyOtp(e){var t,r;try{e.type!=="email_change"&&e.type!=="phone_change"&&await this._removeSession();let a,o;"options"in e&&(a=(t=e.options)===null||t===void 0?void 0:t.redirectTo,o=(r=e.options)===null||r===void 0?void 0:r.captchaToken);const{data:u,error:d}=await te(this.fetch,"POST",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},e),{gotrue_meta_security:{captcha_token:o}}),redirectTo:a,xform:Qe});if(d)throw d;if(!u)throw new Error("An error occurred on token verification.");const p=u.session,y=u.user;return p?.access_token&&(await this._saveSession(p),await this._notifyAllSubscribers(e.type=="recovery"?"PASSWORD_RECOVERY":"SIGNED_IN",p)),{data:{user:y,session:p},error:null}}catch(a){if(ee(a))return{data:{user:null,session:null},error:a};throw a}}async signInWithSSO(e){var t,r,a;try{await this._removeSession();let o=null,u=null;return this.flowType==="pkce"&&([o,u]=await Ct(this.storage,this.storageKey)),await te(this.fetch,"POST",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},"providerId"in e?{provider_id:e.providerId}:null),"domain"in e?{domain:e.domain}:null),{redirect_to:(r=(t=e.options)===null||t===void 0?void 0:t.redirectTo)!==null&&r!==void 0?r:void 0}),!((a=e?.options)===null||a===void 0)&&a.captchaToken?{gotrue_meta_security:{captcha_token:e.options.captchaToken}}:null),{skip_http_redirect:!0,code_challenge:o,code_challenge_method:u}),headers:this.headers,xform:kl})}catch(o){if(ee(o))return{data:null,error:o};throw o}}async reauthenticate(){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._reauthenticate())}async _reauthenticate(){try{return await this._useSession(async e=>{const{data:{session:t},error:r}=e;if(r)throw r;if(!t)throw new ft;const{error:a}=await te(this.fetch,"GET",`${this.url}/reauthenticate`,{headers:this.headers,jwt:t.access_token});return{data:{user:null,session:null},error:a}})}catch(e){if(ee(e))return{data:{user:null,session:null},error:e};throw e}}async resend(e){try{e.type!="email_change"&&e.type!="phone_change"&&await this._removeSession();const t=`${this.url}/resend`;if("email"in e){const{email:r,type:a,options:o}=e,{error:u}=await te(this.fetch,"POST",t,{headers:this.headers,body:{email:r,type:a,gotrue_meta_security:{captcha_token:o?.captchaToken}},redirectTo:o?.emailRedirectTo});return{data:{user:null,session:null},error:u}}else if("phone"in e){const{phone:r,type:a,options:o}=e,{data:u,error:d}=await te(this.fetch,"POST",t,{headers:this.headers,body:{phone:r,type:a,gotrue_meta_security:{captcha_token:o?.captchaToken}}});return{data:{user:null,session:null,messageId:u?.message_id},error:d}}throw new Jr("You must provide either an email or phone number and a type")}catch(t){if(ee(t))return{data:{user:null,session:null},error:t};throw t}}async getSession(){return await this.initializePromise,await this._acquireLock(-1,async()=>this._useSession(async t=>t))}async _acquireLock(e,t){this._debug("#_acquireLock","begin",e);try{if(this.lockAcquired){const r=this.pendingInLock.length?this.pendingInLock[this.pendingInLock.length-1]:Promise.resolve(),a=(async()=>(await r,await t()))();return this.pendingInLock.push((async()=>{try{await a}catch{}})()),a}return await this.lock(`lock:${this.storageKey}`,e,async()=>{this._debug("#_acquireLock","lock acquired for storage key",this.storageKey);try{this.lockAcquired=!0;const r=t();for(this.pendingInLock.push((async()=>{try{await r}catch{}})()),await r;this.pendingInLock.length;){const a=[...this.pendingInLock];await Promise.all(a),this.pendingInLock.splice(0,a.length)}return await r}finally{this._debug("#_acquireLock","lock released for storage key",this.storageKey),this.lockAcquired=!1}})}finally{this._debug("#_acquireLock","end")}}async _useSession(e){this._debug("#_useSession","begin");try{const t=await this.__loadSession();return await e(t)}finally{this._debug("#_useSession","end")}}async __loadSession(){this._debug("#__loadSession()","begin"),this.lockAcquired||this._debug("#__loadSession()","used outside of an acquired lock!",new Error().stack);try{let e=null;const t=await zr(this.storage,this.storageKey);if(this._debug("#getSession()","session from storage",t),t!==null&&(this._isValidSession(t)?e=t:(this._debug("#getSession()","session from storage is not valid"),await this._removeSession())),!e)return{data:{session:null},error:null};const r=e.expires_at?e.expires_at<=Date.now()/1e3:!1;if(this._debug("#__loadSession()",`session has${r?"":" not"} expired`,"expires_at",e.expires_at),!r)return this.storage.isServer&&(e=new Proxy(e,{get(d,p,y){return p==="user"&&console.warn("Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure! This value comes directly from the storage medium (usually cookies on the server) and many not be authentic. Use supabase.auth.getUser() instead which authenticates the data by contacting the Supabase Auth server."),Reflect.get(d,p,y)}})),{data:{session:e},error:null};const{session:a,error:o}=await this._callRefreshToken(e.refresh_token);return o?{data:{session:null},error:o}:{data:{session:a},error:null}}finally{this._debug("#__loadSession()","end")}}async getUser(e){return e?await this._getUser(e):(await this.initializePromise,await this._acquireLock(-1,async()=>await this._getUser()))}async _getUser(e){try{return e?await te(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:e,xform:et}):await this._useSession(async t=>{var r,a,o;const{data:u,error:d}=t;if(d)throw d;return!((r=u.session)===null||r===void 0)&&r.access_token?await te(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:(o=(a=u.session)===null||a===void 0?void 0:a.access_token)!==null&&o!==void 0?o:void 0,xform:et}):{data:{user:null},error:new ft}})}catch(t){if(ee(t))return{data:{user:null},error:t};throw t}}async updateUser(e,t={}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._updateUser(e,t))}async _updateUser(e,t={}){try{return await this._useSession(async r=>{const{data:a,error:o}=r;if(o)throw o;if(!a.session)throw new ft;const u=a.session;let d=null,p=null;this.flowType==="pkce"&&e.email!=null&&([d,p]=await Ct(this.storage,this.storageKey));const{data:y,error:g}=await te(this.fetch,"PUT",`${this.url}/user`,{headers:this.headers,redirectTo:t?.emailRedirectTo,body:Object.assign(Object.assign({},e),{code_challenge:d,code_challenge_method:p}),jwt:u.access_token,xform:et});if(g)throw g;return u.user=y.user,await this._saveSession(u),await this._notifyAllSubscribers("USER_UPDATED",u),{data:{user:u.user},error:null}})}catch(r){if(ee(r))return{data:{user:null},error:r};throw r}}_decodeJWT(e){return Li(e)}async setSession(e){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._setSession(e))}async _setSession(e){try{if(!e.access_token||!e.refresh_token)throw new ft;const t=Date.now()/1e3;let r=t,a=!0,o=null;const u=Li(e.access_token);if(u.exp&&(r=u.exp,a=r<=t),a){const{session:d,error:p}=await this._callRefreshToken(e.refresh_token);if(p)return{data:{user:null,session:null},error:p};if(!d)return{data:{user:null,session:null},error:null};o=d}else{const{data:d,error:p}=await this._getUser(e.access_token);if(p)throw p;o={access_token:e.access_token,refresh_token:e.refresh_token,user:d.user,token_type:"bearer",expires_in:r-t,expires_at:r},await this._saveSession(o),await this._notifyAllSubscribers("SIGNED_IN",o)}return{data:{user:o.user,session:o},error:null}}catch(t){if(ee(t))return{data:{session:null,user:null},error:t};throw t}}async refreshSession(e){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._refreshSession(e))}async _refreshSession(e){try{return await this._useSession(async t=>{var r;if(!e){const{data:u,error:d}=t;if(d)throw d;e=(r=u.session)!==null&&r!==void 0?r:void 0}if(!e?.refresh_token)throw new ft;const{session:a,error:o}=await this._callRefreshToken(e.refresh_token);return o?{data:{user:null,session:null},error:o}:a?{data:{user:a.user,session:a},error:null}:{data:{user:null,session:null},error:null}})}catch(t){if(ee(t))return{data:{user:null,session:null},error:t};throw t}}async _getSessionFromURL(e){try{if(!Ce())throw new Hr("No browser detected.");if(this.flowType==="implicit"&&!this._isImplicitGrantFlow())throw new Hr("Not a valid implicit grant flow url.");if(this.flowType=="pkce"&&!e)throw new Ui("Not a valid PKCE flow url.");const t=ts(window.location.href);if(e){if(!t.code)throw new Ui("No code detected.");const{data:de,error:fe}=await this._exchangeCodeForSession(t.code);if(fe)throw fe;const le=new URL(window.location.href);return le.searchParams.delete("code"),window.history.replaceState(window.history.state,"",le.toString()),{data:{session:de.session,redirectType:null},error:null}}if(t.error||t.error_description||t.error_code)throw new Hr(t.error_description||"Error in URL with unspecified error_description",{error:t.error||"unspecified_error",code:t.error_code||"unspecified_code"});const{provider_token:r,provider_refresh_token:a,access_token:o,refresh_token:u,expires_in:d,expires_at:p,token_type:y}=t;if(!o||!d||!u||!y)throw new Hr("No session defined in URL");const g=Math.round(Date.now()/1e3),S=parseInt(d);let $=g+S;p&&($=parseInt(p));const K=$-g;K*1e3<=sr&&console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${K}s, should have been closer to ${S}s`);const N=$-S;g-N>=120?console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale",N,$,g):g-N<0&&console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clok for skew",N,$,g);const{data:U,error:W}=await this._getUser(o);if(W)throw W;const ne={provider_token:r,provider_refresh_token:a,access_token:o,expires_in:S,expires_at:$,refresh_token:u,token_type:y,user:U.user};return window.location.hash="",this._debug("#_getSessionFromURL()","clearing window.location.hash"),{data:{session:ne,redirectType:t.type},error:null}}catch(t){if(ee(t))return{data:{session:null,redirectType:null},error:t};throw t}}_isImplicitGrantFlow(){const e=ts(window.location.href);return!!(Ce()&&(e.access_token||e.error_description))}async _isPKCEFlow(){const e=ts(window.location.href),t=await zr(this.storage,`${this.storageKey}-code-verifier`);return!!(e.code&&t)}async signOut(e={scope:"global"}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._signOut(e))}async _signOut({scope:e}={scope:"global"}){return await this._useSession(async t=>{var r;const{data:a,error:o}=t;if(o)return{error:o};const u=(r=a.session)===null||r===void 0?void 0:r.access_token;if(u){const{error:d}=await this.admin.signOut(u,e);if(d&&!(gl(d)&&(d.status===404||d.status===401)))return{error:d}}return e!=="others"&&(await this._removeSession(),await rs(this.storage,`${this.storageKey}-code-verifier`),await this._notifyAllSubscribers("SIGNED_OUT",null)),{error:null}})}onAuthStateChange(e){const t=sl(),r={id:t,callback:e,unsubscribe:()=>{this._debug("#unsubscribe()","state change callback with id removed",t),this.stateChangeEmitters.delete(t)}};return this._debug("#onAuthStateChange()","registered callback with id",t),this.stateChangeEmitters.set(t,r),(async()=>(await this.initializePromise,await this._acquireLock(-1,async()=>{this._emitInitialSession(t)})))(),{data:{subscription:r}}}async _emitInitialSession(e){return await this._useSession(async t=>{var r,a;try{const{data:{session:o},error:u}=t;if(u)throw u;await((r=this.stateChangeEmitters.get(e))===null||r===void 0?void 0:r.callback("INITIAL_SESSION",o)),this._debug("INITIAL_SESSION","callback id",e,"session",o)}catch(o){await((a=this.stateChangeEmitters.get(e))===null||a===void 0?void 0:a.callback("INITIAL_SESSION",null)),this._debug("INITIAL_SESSION","callback id",e,"error",o),console.error(o)}})}async resetPasswordForEmail(e,t={}){let r=null,a=null;this.flowType==="pkce"&&([r,a]=await Ct(this.storage,this.storageKey,!0));try{return await te(this.fetch,"POST",`${this.url}/recover`,{body:{email:e,code_challenge:r,code_challenge_method:a,gotrue_meta_security:{captcha_token:t.captchaToken}},headers:this.headers,redirectTo:t.redirectTo})}catch(o){if(ee(o))return{data:null,error:o};throw o}}async getUserIdentities(){var e;try{const{data:t,error:r}=await this.getUser();if(r)throw r;return{data:{identities:(e=t.user.identities)!==null&&e!==void 0?e:[]},error:null}}catch(t){if(ee(t))return{data:null,error:t};throw t}}async linkIdentity(e){var t;try{const{data:r,error:a}=await this._useSession(async o=>{var u,d,p,y,g;const{data:S,error:$}=o;if($)throw $;const K=await this._getUrlForProvider(`${this.url}/user/identities/authorize`,e.provider,{redirectTo:(u=e.options)===null||u===void 0?void 0:u.redirectTo,scopes:(d=e.options)===null||d===void 0?void 0:d.scopes,queryParams:(p=e.options)===null||p===void 0?void 0:p.queryParams,skipBrowserRedirect:!0});return await te(this.fetch,"GET",K,{headers:this.headers,jwt:(g=(y=S.session)===null||y===void 0?void 0:y.access_token)!==null&&g!==void 0?g:void 0})});if(a)throw a;return Ce()&&!(!((t=e.options)===null||t===void 0)&&t.skipBrowserRedirect)&&window.location.assign(r?.url),{data:{provider:e.provider,url:r?.url},error:null}}catch(r){if(ee(r))return{data:{provider:e.provider,url:null},error:r};throw r}}async unlinkIdentity(e){try{return await this._useSession(async t=>{var r,a;const{data:o,error:u}=t;if(u)throw u;return await te(this.fetch,"DELETE",`${this.url}/user/identities/${e.identity_id}`,{headers:this.headers,jwt:(a=(r=o.session)===null||r===void 0?void 0:r.access_token)!==null&&a!==void 0?a:void 0})})}catch(t){if(ee(t))return{data:null,error:t};throw t}}async _refreshAccessToken(e){const t=`#_refreshAccessToken(${e.substring(0,5)}...)`;this._debug(t,"begin");try{const r=Date.now();return await cl(async a=>(a>0&&await al(200*Math.pow(2,a-1)),this._debug(t,"refreshing attempt",a),await te(this.fetch,"POST",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:e},headers:this.headers,xform:Qe})),(a,o)=>{const u=200*Math.pow(2,a);return o&&ss(o)&&Date.now()+u-r{try{await d.callback(e,t)}catch(p){o.push(p)}});if(await Promise.all(u),o.length>0){for(let d=0;dthis._autoRefreshTokenTick(),sr);this.autoRefreshTicker=e,e&&typeof e=="object"&&typeof e.unref=="function"?e.unref():typeof Deno<"u"&&typeof Deno.unrefTimer=="function"&&Deno.unrefTimer(e),setTimeout(async()=>{await this.initializePromise,await this._autoRefreshTokenTick()},0)}async _stopAutoRefresh(){this._debug("#_stopAutoRefresh()");const e=this.autoRefreshTicker;this.autoRefreshTicker=null,e&&clearInterval(e)}async startAutoRefresh(){this._removeVisibilityChangedCallback(),await this._startAutoRefresh()}async stopAutoRefresh(){this._removeVisibilityChangedCallback(),await this._stopAutoRefresh()}async _autoRefreshTokenTick(){this._debug("#_autoRefreshTokenTick()","begin");try{await this._acquireLock(0,async()=>{try{const e=Date.now();try{return await this._useSession(async t=>{const{data:{session:r}}=t;if(!r||!r.refresh_token||!r.expires_at){this._debug("#_autoRefreshTokenTick()","no session");return}const a=Math.floor((r.expires_at*1e3-e)/sr);this._debug("#_autoRefreshTokenTick()",`access token expires in ${a} ticks, a tick lasts ${sr}ms, refresh threshold is ${Ki} ticks`),a<=Ki&&await this._callRefreshToken(r.refresh_token)})}catch(t){console.error("Auto refresh tick failed with error. This is likely a transient error.",t)}}finally{this._debug("#_autoRefreshTokenTick()","end")}})}catch(e){if(e.isAcquireTimeout||e instanceof Co)this._debug("auto refresh token tick lock not available");else throw e}}async _handleVisibilityChange(){if(this._debug("#_handleVisibilityChange()"),!Ce()||!window?.addEventListener)return this.autoRefreshToken&&this.startAutoRefresh(),!1;try{this.visibilityChangedCallback=async()=>await this._onVisibilityChanged(!1),window?.addEventListener("visibilitychange",this.visibilityChangedCallback),await this._onVisibilityChanged(!0)}catch(e){console.error("_handleVisibilityChange",e)}}async _onVisibilityChanged(e){const t=`#_onVisibilityChanged(${e})`;this._debug(t,"visibilityState",document.visibilityState),document.visibilityState==="visible"?(this.autoRefreshToken&&this._startAutoRefresh(),e||(await this.initializePromise,await this._acquireLock(-1,async()=>{if(document.visibilityState!=="visible"){this._debug(t,"acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting");return}await this._recoverAndRefresh()}))):document.visibilityState==="hidden"&&this.autoRefreshToken&&this._stopAutoRefresh()}async _getUrlForProvider(e,t,r){const a=[`provider=${encodeURIComponent(t)}`];if(r?.redirectTo&&a.push(`redirect_to=${encodeURIComponent(r.redirectTo)}`),r?.scopes&&a.push(`scopes=${encodeURIComponent(r.scopes)}`),this.flowType==="pkce"){const[o,u]=await Ct(this.storage,this.storageKey),d=new URLSearchParams({code_challenge:`${encodeURIComponent(o)}`,code_challenge_method:`${encodeURIComponent(u)}`});a.push(d.toString())}if(r?.queryParams){const o=new URLSearchParams(r.queryParams);a.push(o.toString())}return r?.skipBrowserRedirect&&a.push(`skip_http_redirect=${r.skipBrowserRedirect}`),`${e}?${a.join("&")}`}async _unenroll(e){try{return await this._useSession(async t=>{var r;const{data:a,error:o}=t;return o?{data:null,error:o}:await te(this.fetch,"DELETE",`${this.url}/factors/${e.factorId}`,{headers:this.headers,jwt:(r=a?.session)===null||r===void 0?void 0:r.access_token})})}catch(t){if(ee(t))return{data:null,error:t};throw t}}async _enroll(e){try{return await this._useSession(async t=>{var r,a;const{data:o,error:u}=t;if(u)return{data:null,error:u};const{data:d,error:p}=await te(this.fetch,"POST",`${this.url}/factors`,{body:{friendly_name:e.friendlyName,factor_type:e.factorType,issuer:e.issuer},headers:this.headers,jwt:(r=o?.session)===null||r===void 0?void 0:r.access_token});return p?{data:null,error:p}:(!((a=d?.totp)===null||a===void 0)&&a.qr_code&&(d.totp.qr_code=`data:image/svg+xml;utf-8,${d.totp.qr_code}`),{data:d,error:null})})}catch(t){if(ee(t))return{data:null,error:t};throw t}}async _verify(e){return this._acquireLock(-1,async()=>{try{return await this._useSession(async t=>{var r;const{data:a,error:o}=t;if(o)return{data:null,error:o};const{data:u,error:d}=await te(this.fetch,"POST",`${this.url}/factors/${e.factorId}/verify`,{body:{code:e.code,challenge_id:e.challengeId},headers:this.headers,jwt:(r=a?.session)===null||r===void 0?void 0:r.access_token});return d?{data:null,error:d}:(await this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+u.expires_in},u)),await this._notifyAllSubscribers("MFA_CHALLENGE_VERIFIED",u),{data:u,error:d})})}catch(t){if(ee(t))return{data:null,error:t};throw t}})}async _challenge(e){return this._acquireLock(-1,async()=>{try{return await this._useSession(async t=>{var r;const{data:a,error:o}=t;return o?{data:null,error:o}:await te(this.fetch,"POST",`${this.url}/factors/${e.factorId}/challenge`,{headers:this.headers,jwt:(r=a?.session)===null||r===void 0?void 0:r.access_token})})}catch(t){if(ee(t))return{data:null,error:t};throw t}})}async _challengeAndVerify(e){const{data:t,error:r}=await this._challenge({factorId:e.factorId});return r?{data:null,error:r}:await this._verify({factorId:e.factorId,challengeId:t.id,code:e.code})}async _listFactors(){const{data:{user:e},error:t}=await this.getUser();if(t)return{data:null,error:t};const r=e?.factors||[],a=r.filter(o=>o.factor_type==="totp"&&o.status==="verified");return{data:{all:r,totp:a},error:null}}async _getAuthenticatorAssuranceLevel(){return this._acquireLock(-1,async()=>await this._useSession(async e=>{var t,r;const{data:{session:a},error:o}=e;if(o)return{data:null,error:o};if(!a)return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null};const u=this._decodeJWT(a.access_token);let d=null;u.aal&&(d=u.aal);let p=d;((r=(t=a.user.factors)===null||t===void 0?void 0:t.filter(S=>S.status==="verified"))!==null&&r!==void 0?r:[]).length>0&&(p="aal2");const g=u.amr||[];return{data:{currentLevel:d,nextLevel:p,currentAuthenticationMethods:g},error:null}}))}}lr.nextInstanceID=0;const Il=lr;class Dl extends Il{constructor(e){super(e)}}var $l=function(i,e,t,r){function a(o){return o instanceof t?o:new t(function(u){u(o)})}return new(t||(t=Promise))(function(o,u){function d(g){try{y(r.next(g))}catch(S){u(S)}}function p(g){try{y(r.throw(g))}catch(S){u(S)}}function y(g){g.done?o(g.value):a(g.value).then(d,p)}y((r=r.apply(i,e||[])).next())})};class Nl{constructor(e,t,r){var a,o,u,d,p,y,g,S;if(this.supabaseUrl=e,this.supabaseKey=t,!e)throw new Error("supabaseUrl is required.");if(!t)throw new Error("supabaseKey is required.");const $=Qu(e);this.realtimeUrl=`${$}/realtime/v1`.replace(/^http/i,"ws"),this.authUrl=`${$}/auth/v1`,this.storageUrl=`${$}/storage/v1`,this.functionsUrl=`${$}/functions/v1`;const K=`sb-${new URL(this.authUrl).hostname.split(".")[0]}-auth-token`,N={db:Ju,realtime:Vu,auth:Object.assign(Object.assign({},Hu),{storageKey:K}),global:zu},U=Zu(r??{},N);this.storageKey=(o=(a=U.auth)===null||a===void 0?void 0:a.storageKey)!==null&&o!==void 0?o:"",this.headers=(d=(u=U.global)===null||u===void 0?void 0:u.headers)!==null&&d!==void 0?d:{},this.auth=this._initSupabaseAuthClient((p=U.auth)!==null&&p!==void 0?p:{},this.headers,(y=U.global)===null||y===void 0?void 0:y.fetch),this.fetch=Xu(t,this._getAccessToken.bind(this),(g=U.global)===null||g===void 0?void 0:g.fetch),this.realtime=this._initRealtimeClient(Object.assign({headers:this.headers},U.realtime)),this.rest=new xs(`${$}/rest/v1`,{headers:this.headers,schema:(S=U.db)===null||S===void 0?void 0:S.schema,fetch:this.fetch}),this._listenForAuthEvents()}get functions(){return new su(this.functionsUrl,{headers:this.headers,customFetch:this.fetch})}get storage(){return new qu(this.storageUrl,this.headers,this.fetch)}from(e){return this.rest.from(e)}schema(e){return this.rest.schema(e)}rpc(e,t={},r={}){return this.rest.rpc(e,t,r)}channel(e,t={config:{}}){return this.realtime.channel(e,t)}getChannels(){return this.realtime.getChannels()}removeChannel(e){return this.realtime.removeChannel(e)}removeAllChannels(){return this.realtime.removeAllChannels()}_getAccessToken(){var e,t;return $l(this,void 0,void 0,function*(){const{data:r}=yield this.auth.getSession();return(t=(e=r.session)===null||e===void 0?void 0:e.access_token)!==null&&t!==void 0?t:null})}_initSupabaseAuthClient({autoRefreshToken:e,persistSession:t,detectSessionInUrl:r,storage:a,storageKey:o,flowType:u,debug:d},p,y){const g={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new Dl({url:this.authUrl,headers:Object.assign(Object.assign({},g),p),storageKey:o,autoRefreshToken:e,persistSession:t,detectSessionInUrl:r,storage:a,flowType:u,debug:d,fetch:y})}_initRealtimeClient(e){return new Tu(this.realtimeUrl,Object.assign(Object.assign({},e),{params:Object.assign({apikey:this.supabaseKey},e?.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((t,r)=>{this._handleTokenChanged(t,"CLIENT",r?.access_token)})}_handleTokenChanged(e,t,r){(e==="TOKEN_REFRESHED"||e==="SIGNED_IN")&&this.changedAccessToken!==r?(this.realtime.setAuth(r??null),this.changedAccessToken=r):e==="SIGNED_OUT"&&(this.realtime.setAuth(this.supabaseKey),t=="STORAGE"&&this.auth.signOut(),this.changedAccessToken=void 0)}}const Ll=(i,e,t)=>new Nl(i,e,t);var Ro={exports:{}};(function(i,e){(function(t,r){i.exports=r()})(pi,function(){var t=function(n,s){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,l){c.__proto__=l}||function(c,l){for(var h in l)Object.prototype.hasOwnProperty.call(l,h)&&(c[h]=l[h])})(n,s)},r=function(){return(r=Object.assign||function(n){for(var s,c=1,l=arguments.length;c"u"||o.Promise||(o.Promise=Promise);var y=Object.getPrototypeOf,g={}.hasOwnProperty;function S(n,s){return g.call(n,s)}function $(n,s){typeof s=="function"&&(s=s(y(n))),(typeof Reflect>"u"?u:Reflect.ownKeys)(s).forEach(function(c){N(n,c,s[c])})}var K=Object.defineProperty;function N(n,s,c,l){K(n,s,p(c&&S(c,"get")&&typeof c.get=="function"?{get:c.get,set:c.set,configurable:!0}:{value:c,configurable:!0,writable:!0},l))}function U(n){return{from:function(s){return n.prototype=Object.create(s.prototype),N(n.prototype,"constructor",n),{extend:$.bind(null,n.prototype)}}}}var W=Object.getOwnPropertyDescriptor,ne=[].slice;function de(n,s,c){return ne.call(n,s,c)}function fe(n,s){return s(n)}function le(n){if(!n)throw new Error("Assertion Failed")}function tt(n){o.setImmediate?setImmediate(n):setTimeout(n,0)}function Le(n,s){if(typeof s=="string"&&S(n,s))return n[s];if(!s)return n;if(typeof s!="string"){for(var c=[],l=0,h=s.length;l"u"?[]:function(){var n=Promise.resolve();if(typeof crypto>"u"||!crypto.subtle)return[n,y(n),n];var s=crypto.subtle.digest("SHA-512",new Uint8Array([0]));return[s,y(s),n]}(),zt=Be[0],Oe=Be[1],Be=Be[2],Oe=Oe&&Oe.then,Jt=zt&&zt.constructor,dn=!!Be,Ht=function(n,s){Vt.push([n,s]),gr&&(queueMicrotask(zo),gr=!1)},fn=!0,gr=!0,st=[],vr=[],pn=Mt,ze={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:ae,pgp:!1,env:{},finalize:ae},H=ze,Vt=[],it=0,br=[];function z(n){if(typeof this!="object")throw new TypeError("Promises must be constructed via new");this._listeners=[],this._lib=!1;var s=this._PSD=H;if(typeof n!="function"){if(n!==Kt)throw new TypeError("Not a function");return this._state=arguments[1],this._value=arguments[2],void(this._state===!1&&yn(this,this._value))}this._state=null,this._value=null,++s.ref,function c(l,h){try{h(function(f){if(l._state===null){if(f===l)throw new TypeError("A promise cannot be resolved with itself.");var m=l._lib&&kt();f&&typeof f.then=="function"?c(l,function(v,k){f instanceof z?f._then(v,k):f.then(v,k)}):(l._state=!0,l._value=f,Fs(l)),m&&St()}},yn.bind(null,l))}catch(f){yn(l,f)}}(this,n)}var mn={get:function(){var n=H,s=Sr;function c(l,h){var f=this,m=!n.global&&(n!==H||s!==Sr),v=m&&!He(),k=new z(function(w,O){gn(f,new Us(qs(l,n,m,v),qs(h,n,m,v),w,O,n))});return this._consoleTask&&(k._consoleTask=this._consoleTask),k}return c.prototype=Kt,c},set:function(n){N(this,"then",n&&n.prototype===Kt?mn:{get:function(){return n},set:mn.set})}};function Us(n,s,c,l,h){this.onFulfilled=typeof n=="function"?n:null,this.onRejected=typeof s=="function"?s:null,this.resolve=c,this.reject=l,this.psd=h}function yn(n,s){var c,l;vr.push(s),n._state===null&&(c=n._lib&&kt(),s=pn(s),n._state=!1,n._value=s,l=n,st.some(function(h){return h._value===l._value})||st.push(l),Fs(n),c&&St())}function Fs(n){var s=n._listeners;n._listeners=[];for(var c=0,l=s.length;c.",Ms="String expected.",Pt=[],Pr="__dbnames",wn="readonly",_n="readwrite";function ct(n,s){return n?s?function(){return n.apply(this,arguments)&&s.apply(this,arguments)}:n:s}var Ks={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function Or(n){return typeof n!="string"||/\./.test(n)?function(s){return s}:function(s){return s[n]===void 0&&n in s&&delete(s=Ke(s))[n],s}}function zs(){throw V.Type()}function ie(n,s){try{var c=Js(n),l=Js(s);if(c!==l)return c==="Array"?1:l==="Array"?-1:c==="binary"?1:l==="binary"?-1:c==="string"?1:l==="string"?-1:c==="Date"?1:l!=="Date"?NaN:-1;switch(c){case"number":case"Date":case"string":return sR+j&&A(R+x)})})}var C=Ot(c)&&c.limit===1/0&&(typeof n!="function"||n===En)&&{index:c.index,range:c.range};return A(0).then(function(){if(0<_.length)throw new mr("Error modifying one or more objects",_,P,T);return E.length})})})},se.prototype.delete=function(){var n=this._ctx,s=n.range;return Ot(n)&&(n.isPrimKey||s.type===3)?this._write(function(c){var l=n.table.core.schema.primaryKey,h=s;return n.table.core.count({trans:c,query:{index:l,range:h}}).then(function(f){return n.table.core.mutate({trans:c,type:"deleteRange",range:h}).then(function(m){var v=m.failures;if(m.lastResult,m.results,m=m.numFailures,m)throw new mr("Could not delete some values",Object.keys(v).map(function(k){return v[k]}),f-m);return f-m})})}):this.modify(En)},se);function se(){}var En=function(n,s){return s.value=null};function Go(n,s){return n=x})).length!==0?(O.forEach(function(A){T.push(function(){var C=E,R=A._cfg.dbschema;Dr(b,C,P),Dr(b,R,P),E=b._dbSchema=R;var j=Cn(C,R);j.add.forEach(function(M){Rn(P,M[0],M[1].primKey,M[1].indexes)}),j.change.forEach(function(M){if(M.recreate)throw new V.Upgrade("Not yet support for changing primary key");var F=P.objectStore(M.name);M.add.forEach(function(G){return jr(F,G)}),M.change.forEach(function(G){F.deleteIndex(G.name),jr(F,G)}),M.del.forEach(function(G){return F.deleteIndex(G)})});var D=A._cfg.contentUpgrade;if(D&&A._cfg.version>x){Cr(b,P),_._memoizedTables={};var q=Rs(R);j.del.forEach(function(M){q[M]=C[M]}),An(b,[b.Transaction.prototype]),Rr(b,[b.Transaction.prototype],u(q),q),_.schema=q;var L,B=un(D);return B&&Et(),j=z.follow(function(){var M;(L=D(_))&&B&&(M=He.bind(null,null),L.then(M,M))}),L&&typeof L.then=="function"?z.resolve(L):j.then(function(){return L})}}),T.push(function(C){var R,j,D=A._cfg.dbschema;R=D,j=C,[].slice.call(j.db.objectStoreNames).forEach(function(q){return R[q]==null&&j.db.deleteObjectStore(q)}),An(b,[b.Transaction.prototype]),Rr(b,[b.Transaction.prototype],b._storeNames,b._dbSchema),_.schema=b._dbSchema}),T.push(function(C){b.idbdb.objectStoreNames.contains("$meta")&&(Math.ceil(b.idbdb.version/10)===A._cfg.version?(b.idbdb.deleteObjectStore("$meta"),delete b._dbSchema.$meta,b._storeNames=b._storeNames.filter(function(R){return R!=="$meta"})):C.objectStore("$meta").put(A._cfg.version,"version"))})}),function A(){return T.length?z.resolve(T.shift()(_.idbtrans)).then(A):z.resolve()}().then(function(){ti(E,P)})):z.resolve();var b,x,_,P,T,E}).catch(m)):(u(h).forEach(function(O){Rn(c,O,h[O].primKey,h[O].indexes)}),Cr(n,c),void z.follow(function(){return n.on.populate.fire(f)}).catch(m));var k,w})}function na(n,s){ti(n._dbSchema,s),s.db.version%10!=0||s.objectStoreNames.contains("$meta")||s.db.createObjectStore("$meta").add(Math.ceil(s.db.version/10-1),"version");var c=Ir(0,n.idbdb,s);Dr(n,n._dbSchema,s);for(var l=0,h=Cn(c,n._dbSchema).change;lMath.pow(2,62)?0:E.oldVersion,b=E<1,n.idbdb=T.result,f&&na(n,O),ra(n,E/10,O,_))},_),T.onsuccess=he(function(){O=null;var E,A,C,R,j,D=n.idbdb=T.result,q=de(D.objectStoreNames);if(0"u"?z.resolve():!navigator.userAgentData&&/Safari\//.test(navigator.userAgent)&&!/Chrom(e|ium)\//.test(navigator.userAgent)&&indexedDB.databases?new Promise(function(x){function _(){return indexedDB.databases().finally(x)}k=setInterval(_,100),_()}).finally(function(){return clearInterval(k)}):Promise.resolve()).then(v)]).then(function(){return m(),s.onReadyBeingFired=[],z.resolve(Dn(function(){return n.on.ready.fire(n.vip)})).then(function x(){if(0s.limit?x.length=s.limit:n.length===s.limit&&x.length=A.limit&&(!A.values||D.req.values)&&la(D.req.query.range,A.query.range)}),!1,C,R];case"count":return j=R.find(function(D){return hi(D.req.query.range,A.query.range)}),[j,!!j,C,R]}}(s,c,"query",f),O=w[0],b=w[1],x=w[2],_=w[3];return O&&b?O.obsSet=f.obsSet:(b=l.query(f).then(function(P){var T=P.result;if(O&&(O.res=T),m){for(var E=0,A=T.length;E{if(!e||!e.location)return;const{location:t,timer:r=0,replace:a=!1}=e;console.log(`Redirecting user to: ${t} in ${r}ms`),setTimeout(()=>{this.cleanupEventListeners(),a?window.location.replace(t):window.location.href=t},r)},this.version(1).stores({keyValueStore:"key",profiles:"&id, email",errorLogs:"++id, actionId, message, timestamp",actionULID:"&id, action, timestamp, status, errorId"}),this.profiles=this.table("profiles"),this.errorLogs=this.table("errorLogs"),this.actionULID=this.table("actionULID"),this.supabase=this.initializeSupabaseClient(),this.initializeEventListeners()}initializeEventListeners(){mt.on("redirectUser",this.handleUserRedirect)}cleanupEventListeners(){mt.off("redirectUser",this.handleUserRedirect)}initializeSupabaseClient(){if(typeof window<"u"&&window.supabase&&(console.log("Using global Supabase client instance:",window.supabase),this.supabase=window.supabase),!this.supabase)try{this.supabase=Ll(yi.get().api,yi.get().anonKey),console.log("Supabase client instance created:",this.supabase),typeof window<"u"&&(window.supabase=this.supabase)}catch(e){throw console.error("Error creating Supabase client:",e),e}return this.supabase}getSupabaseClient(){return this.supabase}async registerUser(e,t,r,a,o,u){const d=this.getSupabaseClient();if(!d)return null;try{if(t!==r)return await this.handleAuthError({message:"Password and confirm password do not match."},a),null;const{data:p,error:y}=await d.auth.signUp({email:e,password:t,options:{captchaToken:u,data:{username:o,full_name:o}}});if(y)return await this.handleAuthError(y,a),null;if(p?.user){const g={id:p.user.id,email:p.user.email||"",username:p.user.user_metadata?.username||void 0,fullName:p.user.user_metadata?.full_name||void 0,updatedAt:new Date(p.user.updated_at||Date.now())};return await this.saveProfile(g),await this.updateActionStatus(a,"completed"),g}}catch(p){return await this.handleAuthError(p,a),null}return null}async createActionULID(e){const t=Ti().toString(),r={id:t,action:e,timestamp:new Date,status:"pending"};return await this.actionULID.add(r),t}async handleAuthError(e,t){let r="An unknown error occurred. Please try again.",a={...e},o="";e?.message&&(r=e.message),e?.code&&(o+=`Error Code: ${e.code}. `),e?.status&&(o+=`Status: ${e.status}. `),e?.supabaseCode&&(o+=`Supabase Code: ${e.supabaseCode}. `),e?.details&&(o+=`Details: ${JSON.stringify(e.details)}. `),o&&(r=`${r} (${o.trim()})`);const u={invalid_grant:"Invalid credentials provided.",invalid_request:"The request is missing a required parameter.",expired_token:"The token has expired. Please log in again.",invalid_token:"The token provided is invalid. Please try again.",email_already_exists:"The email address is already in use.",user_already_exists:"A user with this identifier already exists. Please log in instead.",invalid_password:"The password provided is incorrect."};switch(e?.code&&u[e.code]&&(r=u[e.code]),e?.status){case 400:r="Bad request. Please check the input fields.";break;case 401:r="Unauthorized. Please check your credentials.";break;case 403:r="Forbidden. You do not have permission to perform this action.";break;case 404:r="Resource not found. Please try again.";break;case 422:r="Unprocessable entity. Please check the provided data.";break;case 500:r="Internal server error. Please try again later.";break;default:r=r||"An unknown error occurred. Please try again.";break}throw await this.logError(r,{...a,supabaseCode:e?.code,statusCode:e?.status},t),console.error("Authentication Error:",r),new Error(r)}async saveProfile(e){try{await this.table("keyValueStore").put({key:this.profileKey,value:e}),e.username&&ir.set(e.username),jt.set(e),console.log("Profile saved locally:",e)}catch(t){console.error("Failed to save profile locally:",t)}}async loadProfile(){try{const e=await this.table("keyValueStore").get(this.profileKey);if(e?.value){jt.set(e.value),console.log("Profile loaded from local storage:",e.value);return}await this.loadProfileFromSupabase()}catch(e){console.error("Failed to load profile:",e)}}async loadProfileFromSupabase(){const e=this.getSupabaseClient();if(e)try{Hi.set(!0);const{data:{user:t},error:r}=await e.auth.getUser();if(r){console.error("Failed to get authenticated user from Supabase:",r),await this.logError("Failed to get authenticated user from Supabase",r);return}if(!t){console.warn("No authenticated user found");return}const{data:a,error:o}=await e.from("user_profiles").select("id, username, avatar_url, updated_at, bio").eq("id",t.id).single();if(o){console.error("Failed to load user profile from Supabase:",o),await this.logError("Failed to load user profile from Supabase",o);return}if(a){const u={id:a.id,email:t.email||"",username:a.username||void 0,fullName:t.user_metadata?.full_name||void 0,avatar_url:a.avatar_url||void 0,bio:a.bio||void 0,updatedAt:new Date(a.updated_at)};await this.saveProfile(u),console.log("Profile loaded and saved from Supabase:",u)}}catch(t){console.error("An unexpected error occurred while loading the profile:",t),await this.logError("An unexpected error occurred while loading the profile",t)}finally{Hi.set(!1)}}async removeProfile(){const e=this.getSupabaseClient();if(e)try{const t=jt.get();await this.table("keyValueStore").delete(this.profileKey),await this.profiles.delete(t.id),jt.set(vs),console.log(`Profile ${t.id} removed locally and store reset`),ir.set(null);const{error:r}=await e.auth.signOut();r?(await this.logError("Failed to log out user from Supabase",r),console.error("Failed to log out user from Supabase:",r)):console.log("User logged out successfully from Supabase.")}catch(t){await this.logError("Failed to remove profile",t),console.error("Failed to remove profile:",t)}}async getProfile(){const e=jt.get();if(e.id!=="")return e;try{const t=await this.table("keyValueStore").get(this.profileKey);if(t?.value){const r=t.value;return jt.set(r),r}}catch(t){console.error("Failed to get profile from Dexie:",t)}return vs}async createAction(e){const r={id:Ti().toString(),action:e,timestamp:new Date,status:"pending"};return await this.actionULID.add(r),r}async updateActionStatus(e,t,r){await this.actionULID.update(e,{status:t,errorId:r})}async logError(e,t,r){try{let a=null;if(r&&(a=await this.errorLogs.where("actionId").equals(r).first()),a){console.warn(`Error already exists for actionId: ${r}. Skipping new error log.`);return}const o={message:e,details:t,actionId:r,timestamp:new Date},u=await this.errorLogs.add(o);console.log("Error logged to Dexie:",o),r&&await this.updateActionStatus(r,"failed",u)}catch(a){console.error("Failed to log error:",a)}}async extractAuthErrorDetails(e){if(!e)return"Unknown error occurred. No error details available.";let t=e.message||"Unknown error occurred",r="";return e?.code&&(r+=`Error Code: ${e.code}. `),e?.status&&(r+=`Status: ${e.status}. `),e?.supabaseCode&&(r+=`Supabase Code: ${e.supabaseCode}. `),e?.details&&(r+=`Details: ${JSON.stringify(e.details)}. `),r&&(t=`${t} (${r.trim()})`),t}async getDetailedErrorByActionId(e){try{const t=await this.errorLogs.where("actionId").equals(e).last();return t?this.extractAuthErrorDetails(t):null}catch(t){return console.error(`Failed to retrieve detailed error for actionId: ${e}`,t),null}}async getErrorByActionId(e){try{const t=await this.errorLogs.where("actionId").equals(e).last();return t?t.message:null}catch(t){return console.error(`Failed to retrieve error for actionId: ${e}`,t),null}}async loginUser(e,t,r,a){const o=this.getSupabaseClient();if(!o)return null;try{const{data:u,error:d}=await o.auth.signInWithPassword({email:e,password:t,options:{captchaToken:a}});if(d)return await this.handleAuthError(d,r),null;if(u?.user){const p={id:u.user.id,email:u.user.email||"",username:u.user.user_metadata?.username||void 0,fullName:u.user.user_metadata?.full_name||void 0,updatedAt:new Date(u.user.updated_at||Date.now())};return await this.saveProfile(p),console.log("User logged in successfully:",p),p}}catch(u){return await this.handleAuthError(u,r),null}return null}async getSession(){const e=this.getSupabaseClient();if(!e)return null;try{const{data:t,error:r}=await e.auth.getSession();return r?(console.error("Failed to retrieve session:",r),null):t.session||null}catch(t){return console.error("Error getting session:",t),null}}async getUsername(){if(ir.get())return ir.get();try{const e=await this.table("keyValueStore").get(this.profileKey);if(e?.value?.username)return ir.set(e.value.username),e.value.username}catch(e){console.error("Failed to get username from Dexie:",e)}return null}static createPersistentAtom(e,t){return Vi(e,t,{encode:JSON.stringify,decode:JSON.parse})}createPersistentMap(e,t){return ma(e,t,{encode:JSON.stringify,decode:JSON.parse})}updateAtomField(e,t,r){e.set({...e.get(),[t]:r})}updateMapField(e,t,r){const o={...e.get(),[t]:r};e.set(o)}removeMapField(e,t){const r=e.get(),{[t]:a,...o}=r;e.set(o)}removeAtomField(e,t){const r=e.get(),{[t]:a,...o}=r;e.set(o)}resetState(e,t){e.set(t)}getPersistentAtom(e){return e.get()}}jo.createPersistentAtom("atlas",{plugin:[]});const Xl=new jo;class Fl extends hr{constructor(){super("MapDatabase"),this.version(1).stores({maps:"tilemapKey",jsonFiles:"tilemapKey",tilesetImages:"tilemapKey"}),this.maps=this.table("maps"),this.jsonFiles=this.table("jsonFiles"),this.tilesetImages=this.table("tilesetImages")}async initializeMapDatabase(){const e="/api/mapdb.json",t="https://kbve.com/api/mapdb.json";let r;try{r=(await oe.get(e)).data,J.log(`Map database loaded from ${e}`)}catch{J.warn(`Failed to load map database from ${e}, trying fallback URL.`);try{r=(await oe.get(t)).data,J.log(`Map database loaded from ${t}`)}catch{J.error(`Failed to load map database from both ${e} and ${t}`);return}}if(r&&r.key){for(const a in r.key)if(Object.prototype.hasOwnProperty.call(r.key,a)){const o=r.key[a];await this.addMap(o),await this.addJsonData(a,o.jsonDataUrl);const u=await this.fetchTilesetImage(o.tilesetImageUrl);u&&await this.addTilesetImage(a,u)}J.log("Map database initialized and data loaded.")}else J.error("Invalid map database format.")}async addMap(e){await this.maps.put(e)}async getMap(e){return await this.maps.get(e)}async addJsonData(e,t){await this.jsonFiles.put({tilemapKey:e,jsonData:t})}async getJsonData(e){return(await this.jsonFiles.get(e))?.jsonData}async addTilesetImage(e,t){await this.tilesetImages.put({tilemapKey:e,imageData:t})}async getTilesetImage(e){return(await this.tilesetImages.get(e))?.imageData}async getBounds(e){return(await this.maps.get(e))?.bounds}async getNpcsFromTilesetKey(e){const t=await Bl.getMap(e);if(!t){J.error(`No map data found for tilesetKey: ${e}`);return}return t.npcs}async fetchMapData(e){try{return(await oe.get(e)).data}catch(t){J.error(`Failed to fetch map data from ${e}:`,t);return}}async fetchJsonData(e){try{return(await oe.get(e)).data}catch(t){J.error(`Failed to fetch JSON data from ${e}:`,t);return}}async fetchTilesetImage(e){try{return(await oe.get(e,{responseType:"blob"})).data}catch(t){J.error(`Failed to fetch tileset image from ${e}:`,t);return}}async initializeMap(e,t,r,a){try{const o=await this.fetchMapData(t);if(o){await this.addMap(o);const u=await this.fetchJsonData(r);u&&await this.addJsonData(e,u);const d=await this.fetchTilesetImage(a);d&&await this.addTilesetImage(e,d)}}catch(o){J.error("Failed to initialize map database:",o)}}async loadMapIntoScene(e,t){const r=await this.getMap(t);if(!r){J.error(`Map with key ${t} not found`);return}const a=await this.getJsonData(t);if(!a){J.error(`JSON data for map ${t} not found`);return}const o=await this.getTilesetImage(t);if(!o){J.error(`Tileset image for map ${t} not found`);return}let u=null;try{u=URL.createObjectURL(o)}catch(d){J.error(`Failed to create object URL for tileset image: ${d}`);return}if(!u){J.error(`Tileset image URL for map ${t} could not be created.`);return}e.load.tilemapTiledJSON(t,a),e.load.image(r.tilesetKey,u),e.load.once("complete",()=>{const d=e.make.tilemap({key:t}),p=d.addTilesetImage(r.tilesetName,r.tilesetKey);if(p)for(let y=0;y{e.load.once("complete",()=>{const p=e.make.tilemap({key:t});if(p.addTilesetImage(r.tilesetName,r.tilesetKey)){for(let g=0;g{const[r,a]=Wn.useState([]),o=Wn.useRef([]);return Wn.useEffect(()=>{let u,d=0;const p=i.split(/(<\/?span[^>]*>)/g).filter(Boolean),y=[];p.forEach((S,$)=>{if(S.startsWith("/);if(K){const N=K[1];y.push(Kr.jsx("span",{className:N},`span-${$}`))}else y.push(Kr.jsx("span",{},`span-${$}`))}else S.split("").forEach((K,N)=>{y.push(Kr.jsx("span",{children:K},`char-${$}-${N}`))})}),d=0;const g=()=>{d{window.clearTimeout(u)}},[i,e,t]),Kr.jsx("div",{children:r})};ga.memo(ql);class Ml extends hr{constructor(){super("NPCDatabase"),this.version(3).stores({npcs:"id,name",sprites:"id",avatars:"id",dialogues:"id"}),this.npcs=this.table("npcs"),this.sprites=this.table("sprites"),this.avatars=this.table("avatars"),this.dialogues=this.table("dialogues")}async addNPC(e){await this.npcs.put(e)}async getNPC(e){return await this.npcs.get(e)}async getNPCByName(e){return await this.npcs.where("name").equals(e).first()}async getAllNPCs(){return await this.npcs.toArray()}async exportNPCs(){const e=await this.getAllNPCs();return JSON.stringify(e,null,2)}async importNPCs(e){const t=JSON.parse(e);await this.npcs.bulkPut(t)}async fetchNPCData(e){try{return(await oe.get(e)).data}catch(t){J.error(`Failed to fetch NPC data from ${e}:`,t);return}}async addSprite(e){await this.sprites.put(e)}async getSprite(e){return await this.sprites.get(e)}async getAllSprites(){return await this.sprites.toArray()}async addAvatar(e){await this.avatars.put(e)}async getAvatar(e){return await this.avatars.get(e)}async getAllAvatars(){return await this.avatars.toArray()}async urlToBlob(e){try{return(await oe.get(e,{responseType:"blob"})).data}catch(t){J.error(`Failed to fetch blob from ${e}:`,t);return}}async addNewSprite(e,t){const r=await this.urlToBlob(e);if(r){const a={...t,spriteData:r};return await this.addSprite(a),a.id}}async addNewNPC(e,t,r){const a={...e,spriteImageId:t,avatarImageId:r};await this.addNPC(a)}async addNewAvatar(e,t){const r=await this.urlToBlob(e);if(r){const a={...t,avatarData:r};return await this.addAvatar(a),a.id}}async fetchAvatars(e){try{const r=(await oe.get(e)).data.key;for(const a in r){const o=r[a];let u=await this.urlToBlob(o.avatarLocation);if(u||(u=await this.urlToBlob(`https://kbve.com${o.avatarLocation}`)),u){const d={id:o.id,avatarName:o.avatarName,avatarLocation:o.avatarLocation,avatarData:u,slug:o.slug};await this.addAvatar(d)}}}catch(t){J.error(`Failed to fetch avatars from ${e}:`,t)}}async fetchSprites(e){try{const r=(await oe.get(e)).data.key;for(const a in r){const o=r[a];let u=await this.urlToBlob(o.assetLocation);if(u||(u=await this.urlToBlob(`https://kbve.com${o.assetLocation}`)),u){const d={id:o.id,spriteName:o.spriteName,assetLocation:o.assetLocation,frameWidth:o.frameWidth,frameHeight:o.frameHeight,scale:o.scale,slug:o.slug,spriteData:u};await this.addSprite(d)}}}catch(t){J.error(`Failed to fetch sprites from ${e}:`,t)}}async fetchNPCs(e){try{const r=(await oe.get(e)).data.key;for(const a in r){const o=r[a],u={id:o.id,name:o.name,spriteKey:o.spriteKey,walkingAnimationMapping:o.walkingAnimationMapping,startPosition:o.startPosition,speed:o.speed,scale:o.scale,slug:o.slug,actions:o.actions,effects:o.effects,stats:o.stats,spriteImageId:o.spriteImageId,avatarImageId:o.avatarImageId,dialogues:o.dialogues||[]};await this.addNPC(u)}}catch(t){J.error(`Failed to fetch NPCs from ${e}:`,t)}}async initializeDatabase(e="https://kbve.com"){await this.fetchAvatars(`${e}/api/avatardb.json`),await this.fetchSprites(`${e}/api/spritedb.json`),await this.fetchNPCs(`${e}/api/npcdb.json`),await this.fetchDialogues(`${e}/api/dialogue.json`)}async loadNPC(e,t,r,a){try{J.log(`Loading NPC with name: ${t}`);const o=await this.getNPCByName(t);if(!o)throw new Error(`NPC with name ${t} not found`);J.log(`NPC Data: ${JSON.stringify(o)}`),await this.loadCharacter(e,o.id,r,a)}catch(o){o instanceof Error?J.error(`Failed to load NPC: ${o.message}`):J.error("Failed to load NPC:",o)}}async loadCharacter(e,t,r,a){try{J.log(`Loading NPC with ID: ${t}`);const o=await this.getNPC(t);if(!o)throw new Error(`NPC with ID ${t} not found`);J.log(`NPC Data: ${JSON.stringify(o)}`);const u=o.spriteKey;if(e.textures.exists(u))J.log(`Texture with key ${u} already loaded.`),this.addNPCToScene(e,o,r,a);else{J.log(`Texture with key ${u} not found, attempting to load.`);const d=await this.getSprite(o.spriteImageId);if(d&&d.spriteData){J.log(`Sprite Data: ${JSON.stringify(d)}`);const p=URL.createObjectURL(d.spriteData);e.load.spritesheet(u,p,{frameWidth:d.frameWidth,frameHeight:d.frameHeight}),e.load.once("complete",()=>{J.log(`Texture ${u} loaded successfully.`),this.addNPCToScene(e,o,r,a)}),e.load.start()}else throw new Error(`Sprite with ID ${o.spriteImageId} not found`)}}catch(o){o instanceof Error?J.error(`Failed to load NPC: ${o.message}`):J.error("Failed to load NPC:",o)}}addNPCToScene(e,t,r,a){try{J.log(`Adding NPC to scene: ${JSON.stringify(t)}`),J.log(`Using sprite key: ${t.spriteKey}`);const o=e.add.sprite(0,0,t.spriteKey);o.scale=t.scale||1.5,o.name=t.id||"Error Missing Name",J.log(`NPC Sprite created with texture key ${t.spriteKey} at position (${t.startPosition.x}, ${t.startPosition.y})`);const u={id:t.id,sprite:o,walkingAnimationMapping:t.walkingAnimationMapping,startPosition:{x:r??t.startPosition.x,y:a??t.startPosition.y},speed:t.speed};if(J.log(`Grid engine config: ${JSON.stringify(u)}`),!e.textures.exists(t.spriteKey))throw new Error(`Texture with key ${t.spriteKey} does not exist in the scene`);e.gridEngine.addCharacter(u),J.log(`NPC added to grid engine with ID ${t.id}`),((p,y,g)=>{const S=e.gridEngine.getPosition(p.name);J.log(`Attaching NPC events to ${y} at position: ${JSON.stringify(S)}`),Jl.attachNPCEvent(p,y,g,{coords:S})})(o,t.name,t.actions.map(p=>({label:p}))),J.log(`NPC ${t.name} added to scene successfully`)}catch(o){o instanceof Error?J.error(`Error adding NPC to scene from addNPCToScene: ${o.message}`):J.error("Error adding NPC to scene:",o)}}async addDialogue(e){await this.dialogues.put(e)}async getDialogue(e){return await this.dialogues.get(e)}async getAllDialogues(){return await this.dialogues.toArray()}async getDialoguesForNPC(e){const t=await this.getNPC(e);if(!t)throw new Error(`NPC with ID ${e} not found`);return(await Promise.all((t.dialogues||[]).map(a=>this.getDialogue(a.dialogueId)))).filter(a=>a!==void 0)}async markDialogueAsRead(e,t){const r=await this.getNPC(e);if(!r)throw new Error(`NPC with ID ${e} not found`);const a=r.dialogues?.find(o=>o.dialogueId===t);a&&(a.read=!0,await this.addNPC(r))}async fetchDialogues(e){try{const r=(await oe.get(e)).data.key,a=Object.values(r).map(o=>({...o}));await this.dialogues.bulkPut(a)}catch(t){J.error(`Failed to fetch dialogues from ${e}:`,t)}}async getPrioritizedDialoguesForNPC(e){try{const t=await this.getNPC(e);if(!t)throw new Error(`NPC with ID ${e} not found`);const a=(await Promise.all((t.dialogues||[]).map(async o=>{const u=await this.getDialogue(o.dialogueId);return u?{...u,priority:o.priority,read:o.read}:null}))).filter(o=>o!==null);return a.sort((o,u)=>u.priority-o.priority),a}catch(t){return J.error(`Failed to get prioritized dialogues for NPC with ID ${e}:`,t),[]}}async getNPCNameById(e){return(await this.getNPC(e))?.name}async getNPCAvatarById(e){const t=await this.getNPC(e);if(t?.avatarImageId)return(await this.getAvatar(t.avatarImageId))?.avatarData}async getNPCSlugById(e){return(await this.getNPC(e))?.slug}async getNPCHealthById(e){try{return(await this.getNPC(e))?.stats?.health}catch(t){J.error(`Failed to get health for NPC with ID ${e}:`,t);return}}async getNPCManaById(e){try{return(await this.getNPC(e))?.stats?.mana}catch(t){J.error(`Failed to get mana for NPC with ID ${e}:`,t);return}}async createNPCSession(e,t){try{const r=this.getNPCNameById(t),a=this.getNPCSlugById(t),o=this.getNPCAvatarById(t),u=this.getNPCHealthById(t),d=this.getNPCManaById(t),[p,y,g,S,$]=await Promise.all([r,a,o,u,d]),K={...e.get(),[`${t}_name`]:p||"Unknown",[`${t}_slug`]:y||"Unknown",[`${t}_avatar`]:g?URL.createObjectURL(g):"Unknown",[`${t}_health`]:S||"100",[`${t}_mana`]:$||"100"};e.set(K)}catch{const a={...e.get(),[`${t}_name`]:"Unknown",[`${t}_slug`]:"Unknown",[`${t}_avatar`]:"Unknown",[`${t}_hp`]:"100",[`${t}_mana`]:"100"};e.set(a)}}async getNPCDialogueOptionsByULID(e){try{const t=await this.getDialogue(e);if(!t||!t.options)return"[]";const r=await Promise.all(t.options.map(async a=>this.getDialogue(a)));return JSON.stringify(r.filter(a=>a!==void 0))}catch(t){return J.error(`Failed to get dialogue options for ID ${e}:`,t),"[]"}}async getAllDialogueOptions(e){const t=[],r=new Set,a=async o=>{if(r.has(o))return;r.add(o);const u=await this.getDialogue(o);if(u&&(t.push(u),u.options&&u.options.length>0))for(const d of u.options)await a(d)};return await a(e),t}async createDialogueSession(e,t){try{const r=await this.getNPCDialogueOptionsByULID(t),a={...e.get(),[`${t}_options`]:r||"[]"};e.set(a)}catch{const a={...e.get(),[`${t}_options`]:"[]"};e.set(a)}}}const Kl=new Ml;class zl{constructor(){this.actionHandlers={talk:this.talkToNPC.bind(this),quest:this.questWithNPC.bind(this),trade:this.tradeWithNPC.bind(this),combat:this.startCombat.bind(this),heal:this.healNPC.bind(this),steal:this.stealFromNPC.bind(this),lore:this.loreFromNPC.bind(this)}}getActionHandler(e){return this.actionHandlers[e]}loreFromNPC(e){J.log(`Pulling up the lore of the NPC with ID: ${e.npcId}`)}questWithNPC(e){J.log(`Starting quest with NPC with ID: ${e.npcId}`)}healNPC(e){J.log(`Healing NPC with ID: ${e.npcId}`)}oathFromNPC(e){J.log(`Oath from NPC with ID: ${e.npcId}`)}async talkToNPC(e){try{J.log(`Talking to NPC with ID: ${e.npcId}`);const t=await Kl.getPrioritizedDialoguesForNPC(e.npcId);if(J.log(t),t.length>0){const r=t[0];mt.emit("npcDialogue",{npcId:e.npcId,dialogue:r},1e3)}else J.log("No dialogues available for this NPC.")}catch(t){J.error(`Failed to fetch dialogues for NPC with ID ${e.npcId}:`,t)}}tradeWithNPC(e){J.log(`Trading with NPC with ID: ${e.npcId}`)}moveToNPC(e){const r=e.data?.coords||{x:10,y:15};mt.emit("playerMove",r)}stealFromNPC(e){J.log(`Attempting to steal from NPC with ID: ${e.npcId}`);const t={npcId:e.npcId,npcName:e.npcName,data:e.data};mt.emit("playerSteal",t)}startCombat(e){J.log(`Starting combat with NPC with ID: ${e.npcId}`)}checkFish(e){J.log(`Checking fish for NPC with ID: ${e.npcId}`)}attachNPCEvent(e,t,r,a){e.setInteractive(),e.on("pointerover",o=>{const u={npcId:e.name||"",npcName:t,actions:r.map(d=>d.label),data:a||{},coords:{x:o.x,y:o.y}};mt.emit("npcInteraction",u),e.setTint(65280)}),e.on("pointerout",()=>{e.clearTint()}),e.on("pointerdown",o=>{const u={npcId:e.name||"",npcName:t,actions:r.map(d=>d.label),data:a||{},coords:{x:o.x,y:o.y}};J.log(`Click Registered at X: ${u.coords.x} Y: ${u.coords.y}`),mt.emit("npcInteractionClick",u,1e3)})}}const Jl=new zl;export{jt as $,J as D,yi as K,jo as a,mt as e,Xl as k};
+ `+f:""),this.inner=f||null):typeof h=="object"&&(this.message="".concat(h.name," ").concat(h.message),this.inner=h):(this.message=No[s]||c,this.inner=null)}return U(l).from(Lo),n[s]=l,n},{});V.Syntax=SyntaxError,V.Type=TypeError,V.Range=RangeError;var $s=zt.reduce(function(n,s){return n[s+"Error"]=V[s],n},{}),yr=Oe.reduce(function(n,s){return["Syntax","Type","Range"].indexOf(s)===-1&&(n[s+"Error"]=V[s]),n},{});function ae(){}function Mt(n){return n}function Uo(n,s){return n==null||n===Mt?s:function(c){return s(n(c))}}function nt(n,s){return function(){n.apply(this,arguments),s.apply(this,arguments)}}function Fo(n,s){return n===ae?s:function(){var c=n.apply(this,arguments);c!==void 0&&(arguments[0]=c);var l=this.onsuccess,h=this.onerror;this.onsuccess=null,this.onerror=null;var f=s.apply(this,arguments);return l&&(this.onsuccess=this.onsuccess?nt(l,this.onsuccess):l),h&&(this.onerror=this.onerror?nt(h,this.onerror):h),f!==void 0?f:c}}function Bo(n,s){return n===ae?s:function(){n.apply(this,arguments);var c=this.onsuccess,l=this.onerror;this.onsuccess=this.onerror=null,s.apply(this,arguments),c&&(this.onsuccess=this.onsuccess?nt(c,this.onsuccess):c),l&&(this.onerror=this.onerror?nt(l,this.onerror):l)}}function qo(n,s){return n===ae?s:function(c){var l=n.apply(this,arguments);p(c,l);var h=this.onsuccess,f=this.onerror;return this.onsuccess=null,this.onerror=null,c=s.apply(this,arguments),h&&(this.onsuccess=this.onsuccess?nt(h,this.onsuccess):h),f&&(this.onerror=this.onerror?nt(f,this.onerror):f),l===void 0?c===void 0?void 0:c:p(l,c)}}function Mo(n,s){return n===ae?s:function(){return s.apply(this,arguments)!==!1&&n.apply(this,arguments)}}function hn(n,s){return n===ae?s:function(){var c=n.apply(this,arguments);if(c&&typeof c.then=="function"){for(var l=this,h=arguments.length,f=new Array(h);h--;)f[h]=arguments[h];return c.then(function(){return s.apply(l,f)})}return s.apply(this,arguments)}}yr.ModifyError=mr,yr.DexieError=wt,yr.BulkError=_t;var je=typeof location<"u"&&/^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href);function Ns(n){je=n}var Kt={},Ls=100,Be=typeof Promise>"u"?[]:function(){var n=Promise.resolve();if(typeof crypto>"u"||!crypto.subtle)return[n,y(n),n];var s=crypto.subtle.digest("SHA-512",new Uint8Array([0]));return[s,y(s),n]}(),zt=Be[0],Oe=Be[1],Be=Be[2],Oe=Oe&&Oe.then,Jt=zt&&zt.constructor,dn=!!Be,Ht=function(n,s){Vt.push([n,s]),gr&&(queueMicrotask(zo),gr=!1)},fn=!0,gr=!0,st=[],vr=[],pn=Mt,ze={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:ae,pgp:!1,env:{},finalize:ae},H=ze,Vt=[],it=0,br=[];function z(n){if(typeof this!="object")throw new TypeError("Promises must be constructed via new");this._listeners=[],this._lib=!1;var s=this._PSD=H;if(typeof n!="function"){if(n!==Kt)throw new TypeError("Not a function");return this._state=arguments[1],this._value=arguments[2],void(this._state===!1&&yn(this,this._value))}this._state=null,this._value=null,++s.ref,function c(l,h){try{h(function(f){if(l._state===null){if(f===l)throw new TypeError("A promise cannot be resolved with itself.");var m=l._lib&&kt();f&&typeof f.then=="function"?c(l,function(v,k){f instanceof z?f._then(v,k):f.then(v,k)}):(l._state=!0,l._value=f,Fs(l)),m&&St()}},yn.bind(null,l))}catch(f){yn(l,f)}}(this,n)}var mn={get:function(){var n=H,s=Sr;function c(l,h){var f=this,m=!n.global&&(n!==H||s!==Sr),v=m&&!He(),k=new z(function(w,O){gn(f,new Us(qs(l,n,m,v),qs(h,n,m,v),w,O,n))});return this._consoleTask&&(k._consoleTask=this._consoleTask),k}return c.prototype=Kt,c},set:function(n){N(this,"then",n&&n.prototype===Kt?mn:{get:function(){return n},set:mn.set})}};function Us(n,s,c,l,h){this.onFulfilled=typeof n=="function"?n:null,this.onRejected=typeof s=="function"?s:null,this.resolve=c,this.reject=l,this.psd=h}function yn(n,s){var c,l;vr.push(s),n._state===null&&(c=n._lib&&kt(),s=pn(s),n._state=!1,n._value=s,l=n,st.some(function(h){return h._value===l._value})||st.push(l),Fs(n),c&&St())}function Fs(n){var s=n._listeners;n._listeners=[];for(var c=0,l=s.length;c.",Ms="String expected.",Pt=[],Pr="__dbnames",wn="readonly",_n="readwrite";function ct(n,s){return n?s?function(){return n.apply(this,arguments)&&s.apply(this,arguments)}:n:s}var Ks={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function Or(n){return typeof n!="string"||/\./.test(n)?function(s){return s}:function(s){return s[n]===void 0&&n in s&&delete(s=Ke(s))[n],s}}function zs(){throw V.Type()}function ie(n,s){try{var c=Js(n),l=Js(s);if(c!==l)return c==="Array"?1:l==="Array"?-1:c==="binary"?1:l==="binary"?-1:c==="string"?1:l==="string"?-1:c==="Date"?1:l!=="Date"?NaN:-1;switch(c){case"number":case"Date":case"string":return sR+j&&A(R+x)})})}var C=Ot(c)&&c.limit===1/0&&(typeof n!="function"||n===En)&&{index:c.index,range:c.range};return A(0).then(function(){if(0<_.length)throw new mr("Error modifying one or more objects",_,P,T);return E.length})})})},se.prototype.delete=function(){var n=this._ctx,s=n.range;return Ot(n)&&(n.isPrimKey||s.type===3)?this._write(function(c){var l=n.table.core.schema.primaryKey,h=s;return n.table.core.count({trans:c,query:{index:l,range:h}}).then(function(f){return n.table.core.mutate({trans:c,type:"deleteRange",range:h}).then(function(m){var v=m.failures;if(m.lastResult,m.results,m=m.numFailures,m)throw new mr("Could not delete some values",Object.keys(v).map(function(k){return v[k]}),f-m);return f-m})})}):this.modify(En)},se);function se(){}var En=function(n,s){return s.value=null};function Go(n,s){return n=x})).length!==0?(O.forEach(function(A){T.push(function(){var C=E,R=A._cfg.dbschema;Dr(b,C,P),Dr(b,R,P),E=b._dbSchema=R;var j=Cn(C,R);j.add.forEach(function(M){Rn(P,M[0],M[1].primKey,M[1].indexes)}),j.change.forEach(function(M){if(M.recreate)throw new V.Upgrade("Not yet support for changing primary key");var F=P.objectStore(M.name);M.add.forEach(function(G){return jr(F,G)}),M.change.forEach(function(G){F.deleteIndex(G.name),jr(F,G)}),M.del.forEach(function(G){return F.deleteIndex(G)})});var D=A._cfg.contentUpgrade;if(D&&A._cfg.version>x){Cr(b,P),_._memoizedTables={};var q=Rs(R);j.del.forEach(function(M){q[M]=C[M]}),An(b,[b.Transaction.prototype]),Rr(b,[b.Transaction.prototype],u(q),q),_.schema=q;var L,B=un(D);return B&&Et(),j=z.follow(function(){var M;(L=D(_))&&B&&(M=He.bind(null,null),L.then(M,M))}),L&&typeof L.then=="function"?z.resolve(L):j.then(function(){return L})}}),T.push(function(C){var R,j,D=A._cfg.dbschema;R=D,j=C,[].slice.call(j.db.objectStoreNames).forEach(function(q){return R[q]==null&&j.db.deleteObjectStore(q)}),An(b,[b.Transaction.prototype]),Rr(b,[b.Transaction.prototype],b._storeNames,b._dbSchema),_.schema=b._dbSchema}),T.push(function(C){b.idbdb.objectStoreNames.contains("$meta")&&(Math.ceil(b.idbdb.version/10)===A._cfg.version?(b.idbdb.deleteObjectStore("$meta"),delete b._dbSchema.$meta,b._storeNames=b._storeNames.filter(function(R){return R!=="$meta"})):C.objectStore("$meta").put(A._cfg.version,"version"))})}),function A(){return T.length?z.resolve(T.shift()(_.idbtrans)).then(A):z.resolve()}().then(function(){ti(E,P)})):z.resolve();var b,x,_,P,T,E}).catch(m)):(u(h).forEach(function(O){Rn(c,O,h[O].primKey,h[O].indexes)}),Cr(n,c),void z.follow(function(){return n.on.populate.fire(f)}).catch(m));var k,w})}function na(n,s){ti(n._dbSchema,s),s.db.version%10!=0||s.objectStoreNames.contains("$meta")||s.db.createObjectStore("$meta").add(Math.ceil(s.db.version/10-1),"version");var c=Ir(0,n.idbdb,s);Dr(n,n._dbSchema,s);for(var l=0,h=Cn(c,n._dbSchema).change;lMath.pow(2,62)?0:E.oldVersion,b=E<1,n.idbdb=T.result,f&&na(n,O),ra(n,E/10,O,_))},_),T.onsuccess=he(function(){O=null;var E,A,C,R,j,D=n.idbdb=T.result,q=de(D.objectStoreNames);if(0"u"?z.resolve():!navigator.userAgentData&&/Safari\//.test(navigator.userAgent)&&!/Chrom(e|ium)\//.test(navigator.userAgent)&&indexedDB.databases?new Promise(function(x){function _(){return indexedDB.databases().finally(x)}k=setInterval(_,100),_()}).finally(function(){return clearInterval(k)}):Promise.resolve()).then(v)]).then(function(){return m(),s.onReadyBeingFired=[],z.resolve(Dn(function(){return n.on.ready.fire(n.vip)})).then(function x(){if(0s.limit?x.length=s.limit:n.length===s.limit&&x.length=A.limit&&(!A.values||D.req.values)&&la(D.req.query.range,A.query.range)}),!1,C,R];case"count":return j=R.find(function(D){return hi(D.req.query.range,A.query.range)}),[j,!!j,C,R]}}(s,c,"query",f),O=w[0],b=w[1],x=w[2],_=w[3];return O&&b?O.obsSet=f.obsSet:(b=l.query(f).then(function(P){var T=P.result;if(O&&(O.res=T),m){for(var E=0,A=T.length;E{if(!e||!e.location)return;const{location:t,timer:r=0,replace:a=!1}=e;console.log(`Redirecting user to: ${t} in ${r}ms`),setTimeout(()=>{this.cleanupEventListeners(),a?window.location.replace(t):window.location.href=t},r)},this.version(1).stores({keyValueStore:"key",profiles:"&id, email",errorLogs:"++id, actionId, message, timestamp",actionULID:"&id, action, timestamp, status, errorId"}),this.profiles=this.table("profiles"),this.errorLogs=this.table("errorLogs"),this.actionULID=this.table("actionULID"),this.supabase=this.initializeSupabaseClient(),this.initializeEventListeners()}initializeEventListeners(){mt.on("redirectUser",this.handleUserRedirect)}cleanupEventListeners(){mt.off("redirectUser",this.handleUserRedirect)}initializeSupabaseClient(){if(typeof window<"u"&&window.supabase&&(console.log("Using global Supabase client instance:",window.supabase),this.supabase=window.supabase),!this.supabase)try{this.supabase=Ll(yi.get().api,yi.get().anonKey),console.log("Supabase client instance created:",this.supabase),typeof window<"u"&&(window.supabase=this.supabase)}catch(e){throw console.error("Error creating Supabase client:",e),e}return this.supabase}getSupabaseClient(){return this.supabase}async registerUser(e,t,r,a,o,u){const d=this.getSupabaseClient();if(!d)return null;try{if(t!==r)return await this.handleAuthError({message:"Password and confirm password do not match."},a),null;const{data:p,error:y}=await d.auth.signUp({email:e,password:t,options:{captchaToken:u,data:{username:o,full_name:o}}});if(y)return await this.handleAuthError(y,a),null;if(p?.user){const g={id:p.user.id,email:p.user.email||"",username:p.user.user_metadata?.username||void 0,fullName:p.user.user_metadata?.full_name||void 0,updatedAt:new Date(p.user.updated_at||Date.now())};return await this.saveProfile(g),await this.updateActionStatus(a,"completed"),g}}catch(p){return await this.handleAuthError(p,a),null}return null}async createActionULID(e){const t=Ti().toString(),r={id:t,action:e,timestamp:new Date,status:"pending"};return await this.actionULID.add(r),t}async handleAuthError(e,t){let r="An unknown error occurred. Please try again.",a={...e},o="";e?.message&&(r=e.message),e?.code&&(o+=`Error Code: ${e.code}. `),e?.status&&(o+=`Status: ${e.status}. `),e?.supabaseCode&&(o+=`Supabase Code: ${e.supabaseCode}. `),e?.details&&(o+=`Details: ${JSON.stringify(e.details)}. `),o&&(r=`${r} (${o.trim()})`);const u={invalid_grant:"Invalid credentials provided.",invalid_request:"The request is missing a required parameter.",expired_token:"The token has expired. Please log in again.",invalid_token:"The token provided is invalid. Please try again.",email_already_exists:"The email address is already in use.",user_already_exists:"A user with this identifier already exists. Please log in instead.",invalid_password:"The password provided is incorrect."};switch(e?.code&&u[e.code]&&(r=u[e.code]),e?.status){case 400:r="Bad request. Please check the input fields.";break;case 401:r="Unauthorized. Please check your credentials.";break;case 403:r="Forbidden. You do not have permission to perform this action.";break;case 404:r="Resource not found. Please try again.";break;case 422:r="Unprocessable entity. Please check the provided data.";break;case 500:r="Internal server error. Please try again later.";break;default:r=r||"An unknown error occurred. Please try again.";break}throw await this.logError(r,{...a,supabaseCode:e?.code,statusCode:e?.status},t),console.error("Authentication Error:",r),new Error(r)}async saveProfile(e){try{await this.table("keyValueStore").put({key:this.profileKey,value:e}),e.username&&ir.set(e.username),jt.set(e),console.log("Profile saved locally:",e)}catch(t){console.error("Failed to save profile locally:",t)}}async loadProfile(){try{const e=await this.table("keyValueStore").get(this.profileKey);if(e?.value){jt.set(e.value),console.log("Profile loaded from local storage:",e.value);return}await this.loadProfileFromSupabase()}catch(e){console.error("Failed to load profile:",e)}}async loadProfileFromSupabase(){const e=this.getSupabaseClient();if(e)try{Hi.set(!0);const{data:{user:t},error:r}=await e.auth.getUser();if(r){console.error("Failed to get authenticated user from Supabase:",r),await this.logError("Failed to get authenticated user from Supabase",r);return}if(!t){console.warn("No authenticated user found");return}const{data:a,error:o}=await e.from("user_profiles").select("id, username, updated_at").eq("id",t.id).single();if(o){console.error("Failed to load user profile from Supabase:",o),await this.logError("Failed to load user profile from Supabase",o);return}if(a){const u={id:a.id,email:t.email||"",username:a.username||void 0,fullName:t.user_metadata?.full_name||void 0,updatedAt:new Date(a.updated_at)};await this.saveProfile(u),console.log("Profile loaded and saved from Supabase:",u)}}catch(t){console.error("An unexpected error occurred while loading the profile:",t),await this.logError("An unexpected error occurred while loading the profile",t)}finally{Hi.set(!1)}}async removeProfile(){const e=this.getSupabaseClient();if(e)try{const t=jt.get();await this.table("keyValueStore").delete(this.profileKey),await this.profiles.delete(t.id),jt.set(vs),console.log(`Profile ${t.id} removed locally and store reset`),ir.set(null);const{error:r}=await e.auth.signOut();r?(await this.logError("Failed to log out user from Supabase",r),console.error("Failed to log out user from Supabase:",r)):console.log("User logged out successfully from Supabase.")}catch(t){await this.logError("Failed to remove profile",t),console.error("Failed to remove profile:",t)}}async getProfile(){const e=jt.get();if(e.id!=="")return e;try{const t=await this.table("keyValueStore").get(this.profileKey);if(t?.value){const r=t.value;return jt.set(r),r}}catch(t){console.error("Failed to get profile from Dexie:",t)}return vs}async createAction(e){const r={id:Ti().toString(),action:e,timestamp:new Date,status:"pending"};return await this.actionULID.add(r),r}async updateActionStatus(e,t,r){await this.actionULID.update(e,{status:t,errorId:r})}async logError(e,t,r){try{let a=null;if(r&&(a=await this.errorLogs.where("actionId").equals(r).first()),a){console.warn(`Error already exists for actionId: ${r}. Skipping new error log.`);return}const o={message:e,details:t,actionId:r,timestamp:new Date},u=await this.errorLogs.add(o);console.log("Error logged to Dexie:",o),r&&await this.updateActionStatus(r,"failed",u)}catch(a){console.error("Failed to log error:",a)}}async extractAuthErrorDetails(e){if(!e)return"Unknown error occurred. No error details available.";let t=e.message||"Unknown error occurred",r="";return e?.code&&(r+=`Error Code: ${e.code}. `),e?.status&&(r+=`Status: ${e.status}. `),e?.supabaseCode&&(r+=`Supabase Code: ${e.supabaseCode}. `),e?.details&&(r+=`Details: ${JSON.stringify(e.details)}. `),r&&(t=`${t} (${r.trim()})`),t}async getDetailedErrorByActionId(e){try{const t=await this.errorLogs.where("actionId").equals(e).last();return t?this.extractAuthErrorDetails(t):null}catch(t){return console.error(`Failed to retrieve detailed error for actionId: ${e}`,t),null}}async getErrorByActionId(e){try{const t=await this.errorLogs.where("actionId").equals(e).last();return t?t.message:null}catch(t){return console.error(`Failed to retrieve error for actionId: ${e}`,t),null}}async loginUser(e,t,r,a){const o=this.getSupabaseClient();if(!o)return null;try{const{data:u,error:d}=await o.auth.signInWithPassword({email:e,password:t,options:{captchaToken:a}});if(d)return await this.handleAuthError(d,r),null;if(u?.user){const p={id:u.user.id,email:u.user.email||"",username:u.user.user_metadata?.username||void 0,fullName:u.user.user_metadata?.full_name||void 0,updatedAt:new Date(u.user.updated_at||Date.now())};return await this.saveProfile(p),console.log("User logged in successfully:",p),p}}catch(u){return await this.handleAuthError(u,r),null}return null}async getSession(){const e=this.getSupabaseClient();if(!e)return null;try{const{data:t,error:r}=await e.auth.getSession();return r?(console.error("Failed to retrieve session:",r),null):t.session||null}catch(t){return console.error("Error getting session:",t),null}}async getUsername(){if(ir.get())return ir.get();try{const e=await this.table("keyValueStore").get(this.profileKey);if(e?.value?.username)return ir.set(e.value.username),e.value.username}catch(e){console.error("Failed to get username from Dexie:",e)}return null}static createPersistentAtom(e,t){return Vi(e,t,{encode:JSON.stringify,decode:JSON.parse})}createPersistentMap(e,t){return ma(e,t,{encode:JSON.stringify,decode:JSON.parse})}updateAtomField(e,t,r){e.set({...e.get(),[t]:r})}updateMapField(e,t,r){const o={...e.get(),[t]:r};e.set(o)}removeMapField(e,t){const r=e.get(),{[t]:a,...o}=r;e.set(o)}removeAtomField(e,t){const r=e.get(),{[t]:a,...o}=r;e.set(o)}resetState(e,t){e.set(t)}getPersistentAtom(e){return e.get()}}jo.createPersistentAtom("atlas",{plugin:[]});const Xl=new jo;class Fl extends hr{constructor(){super("MapDatabase"),this.version(1).stores({maps:"tilemapKey",jsonFiles:"tilemapKey",tilesetImages:"tilemapKey"}),this.maps=this.table("maps"),this.jsonFiles=this.table("jsonFiles"),this.tilesetImages=this.table("tilesetImages")}async initializeMapDatabase(){const e="/api/mapdb.json",t="https://kbve.com/api/mapdb.json";let r;try{r=(await oe.get(e)).data,J.log(`Map database loaded from ${e}`)}catch{J.warn(`Failed to load map database from ${e}, trying fallback URL.`);try{r=(await oe.get(t)).data,J.log(`Map database loaded from ${t}`)}catch{J.error(`Failed to load map database from both ${e} and ${t}`);return}}if(r&&r.key){for(const a in r.key)if(Object.prototype.hasOwnProperty.call(r.key,a)){const o=r.key[a];await this.addMap(o),await this.addJsonData(a,o.jsonDataUrl);const u=await this.fetchTilesetImage(o.tilesetImageUrl);u&&await this.addTilesetImage(a,u)}J.log("Map database initialized and data loaded.")}else J.error("Invalid map database format.")}async addMap(e){await this.maps.put(e)}async getMap(e){return await this.maps.get(e)}async addJsonData(e,t){await this.jsonFiles.put({tilemapKey:e,jsonData:t})}async getJsonData(e){return(await this.jsonFiles.get(e))?.jsonData}async addTilesetImage(e,t){await this.tilesetImages.put({tilemapKey:e,imageData:t})}async getTilesetImage(e){return(await this.tilesetImages.get(e))?.imageData}async getBounds(e){return(await this.maps.get(e))?.bounds}async getNpcsFromTilesetKey(e){const t=await Bl.getMap(e);if(!t){J.error(`No map data found for tilesetKey: ${e}`);return}return t.npcs}async fetchMapData(e){try{return(await oe.get(e)).data}catch(t){J.error(`Failed to fetch map data from ${e}:`,t);return}}async fetchJsonData(e){try{return(await oe.get(e)).data}catch(t){J.error(`Failed to fetch JSON data from ${e}:`,t);return}}async fetchTilesetImage(e){try{return(await oe.get(e,{responseType:"blob"})).data}catch(t){J.error(`Failed to fetch tileset image from ${e}:`,t);return}}async initializeMap(e,t,r,a){try{const o=await this.fetchMapData(t);if(o){await this.addMap(o);const u=await this.fetchJsonData(r);u&&await this.addJsonData(e,u);const d=await this.fetchTilesetImage(a);d&&await this.addTilesetImage(e,d)}}catch(o){J.error("Failed to initialize map database:",o)}}async loadMapIntoScene(e,t){const r=await this.getMap(t);if(!r){J.error(`Map with key ${t} not found`);return}const a=await this.getJsonData(t);if(!a){J.error(`JSON data for map ${t} not found`);return}const o=await this.getTilesetImage(t);if(!o){J.error(`Tileset image for map ${t} not found`);return}let u=null;try{u=URL.createObjectURL(o)}catch(d){J.error(`Failed to create object URL for tileset image: ${d}`);return}if(!u){J.error(`Tileset image URL for map ${t} could not be created.`);return}e.load.tilemapTiledJSON(t,a),e.load.image(r.tilesetKey,u),e.load.once("complete",()=>{const d=e.make.tilemap({key:t}),p=d.addTilesetImage(r.tilesetName,r.tilesetKey);if(p)for(let y=0;y{e.load.once("complete",()=>{const p=e.make.tilemap({key:t});if(p.addTilesetImage(r.tilesetName,r.tilesetKey)){for(let g=0;g{const[r,a]=Wn.useState([]),o=Wn.useRef([]);return Wn.useEffect(()=>{let u,d=0;const p=i.split(/(<\/?span[^>]*>)/g).filter(Boolean),y=[];p.forEach((S,$)=>{if(S.startsWith("/);if(K){const N=K[1];y.push(Kr.jsx("span",{className:N},`span-${$}`))}else y.push(Kr.jsx("span",{},`span-${$}`))}else S.split("").forEach((K,N)=>{y.push(Kr.jsx("span",{children:K},`char-${$}-${N}`))})}),d=0;const g=()=>{d{window.clearTimeout(u)}},[i,e,t]),Kr.jsx("div",{children:r})};ga.memo(ql);class Ml extends hr{constructor(){super("NPCDatabase"),this.version(3).stores({npcs:"id,name",sprites:"id",avatars:"id",dialogues:"id"}),this.npcs=this.table("npcs"),this.sprites=this.table("sprites"),this.avatars=this.table("avatars"),this.dialogues=this.table("dialogues")}async addNPC(e){await this.npcs.put(e)}async getNPC(e){return await this.npcs.get(e)}async getNPCByName(e){return await this.npcs.where("name").equals(e).first()}async getAllNPCs(){return await this.npcs.toArray()}async exportNPCs(){const e=await this.getAllNPCs();return JSON.stringify(e,null,2)}async importNPCs(e){const t=JSON.parse(e);await this.npcs.bulkPut(t)}async fetchNPCData(e){try{return(await oe.get(e)).data}catch(t){J.error(`Failed to fetch NPC data from ${e}:`,t);return}}async addSprite(e){await this.sprites.put(e)}async getSprite(e){return await this.sprites.get(e)}async getAllSprites(){return await this.sprites.toArray()}async addAvatar(e){await this.avatars.put(e)}async getAvatar(e){return await this.avatars.get(e)}async getAllAvatars(){return await this.avatars.toArray()}async urlToBlob(e){try{return(await oe.get(e,{responseType:"blob"})).data}catch(t){J.error(`Failed to fetch blob from ${e}:`,t);return}}async addNewSprite(e,t){const r=await this.urlToBlob(e);if(r){const a={...t,spriteData:r};return await this.addSprite(a),a.id}}async addNewNPC(e,t,r){const a={...e,spriteImageId:t,avatarImageId:r};await this.addNPC(a)}async addNewAvatar(e,t){const r=await this.urlToBlob(e);if(r){const a={...t,avatarData:r};return await this.addAvatar(a),a.id}}async fetchAvatars(e){try{const r=(await oe.get(e)).data.key;for(const a in r){const o=r[a];let u=await this.urlToBlob(o.avatarLocation);if(u||(u=await this.urlToBlob(`https://kbve.com${o.avatarLocation}`)),u){const d={id:o.id,avatarName:o.avatarName,avatarLocation:o.avatarLocation,avatarData:u,slug:o.slug};await this.addAvatar(d)}}}catch(t){J.error(`Failed to fetch avatars from ${e}:`,t)}}async fetchSprites(e){try{const r=(await oe.get(e)).data.key;for(const a in r){const o=r[a];let u=await this.urlToBlob(o.assetLocation);if(u||(u=await this.urlToBlob(`https://kbve.com${o.assetLocation}`)),u){const d={id:o.id,spriteName:o.spriteName,assetLocation:o.assetLocation,frameWidth:o.frameWidth,frameHeight:o.frameHeight,scale:o.scale,slug:o.slug,spriteData:u};await this.addSprite(d)}}}catch(t){J.error(`Failed to fetch sprites from ${e}:`,t)}}async fetchNPCs(e){try{const r=(await oe.get(e)).data.key;for(const a in r){const o=r[a],u={id:o.id,name:o.name,spriteKey:o.spriteKey,walkingAnimationMapping:o.walkingAnimationMapping,startPosition:o.startPosition,speed:o.speed,scale:o.scale,slug:o.slug,actions:o.actions,effects:o.effects,stats:o.stats,spriteImageId:o.spriteImageId,avatarImageId:o.avatarImageId,dialogues:o.dialogues||[]};await this.addNPC(u)}}catch(t){J.error(`Failed to fetch NPCs from ${e}:`,t)}}async initializeDatabase(e="https://kbve.com"){await this.fetchAvatars(`${e}/api/avatardb.json`),await this.fetchSprites(`${e}/api/spritedb.json`),await this.fetchNPCs(`${e}/api/npcdb.json`),await this.fetchDialogues(`${e}/api/dialogue.json`)}async loadNPC(e,t,r,a){try{J.log(`Loading NPC with name: ${t}`);const o=await this.getNPCByName(t);if(!o)throw new Error(`NPC with name ${t} not found`);J.log(`NPC Data: ${JSON.stringify(o)}`),await this.loadCharacter(e,o.id,r,a)}catch(o){o instanceof Error?J.error(`Failed to load NPC: ${o.message}`):J.error("Failed to load NPC:",o)}}async loadCharacter(e,t,r,a){try{J.log(`Loading NPC with ID: ${t}`);const o=await this.getNPC(t);if(!o)throw new Error(`NPC with ID ${t} not found`);J.log(`NPC Data: ${JSON.stringify(o)}`);const u=o.spriteKey;if(e.textures.exists(u))J.log(`Texture with key ${u} already loaded.`),this.addNPCToScene(e,o,r,a);else{J.log(`Texture with key ${u} not found, attempting to load.`);const d=await this.getSprite(o.spriteImageId);if(d&&d.spriteData){J.log(`Sprite Data: ${JSON.stringify(d)}`);const p=URL.createObjectURL(d.spriteData);e.load.spritesheet(u,p,{frameWidth:d.frameWidth,frameHeight:d.frameHeight}),e.load.once("complete",()=>{J.log(`Texture ${u} loaded successfully.`),this.addNPCToScene(e,o,r,a)}),e.load.start()}else throw new Error(`Sprite with ID ${o.spriteImageId} not found`)}}catch(o){o instanceof Error?J.error(`Failed to load NPC: ${o.message}`):J.error("Failed to load NPC:",o)}}addNPCToScene(e,t,r,a){try{J.log(`Adding NPC to scene: ${JSON.stringify(t)}`),J.log(`Using sprite key: ${t.spriteKey}`);const o=e.add.sprite(0,0,t.spriteKey);o.scale=t.scale||1.5,o.name=t.id||"Error Missing Name",J.log(`NPC Sprite created with texture key ${t.spriteKey} at position (${t.startPosition.x}, ${t.startPosition.y})`);const u={id:t.id,sprite:o,walkingAnimationMapping:t.walkingAnimationMapping,startPosition:{x:r??t.startPosition.x,y:a??t.startPosition.y},speed:t.speed};if(J.log(`Grid engine config: ${JSON.stringify(u)}`),!e.textures.exists(t.spriteKey))throw new Error(`Texture with key ${t.spriteKey} does not exist in the scene`);e.gridEngine.addCharacter(u),J.log(`NPC added to grid engine with ID ${t.id}`),((p,y,g)=>{const S=e.gridEngine.getPosition(p.name);J.log(`Attaching NPC events to ${y} at position: ${JSON.stringify(S)}`),Jl.attachNPCEvent(p,y,g,{coords:S})})(o,t.name,t.actions.map(p=>({label:p}))),J.log(`NPC ${t.name} added to scene successfully`)}catch(o){o instanceof Error?J.error(`Error adding NPC to scene from addNPCToScene: ${o.message}`):J.error("Error adding NPC to scene:",o)}}async addDialogue(e){await this.dialogues.put(e)}async getDialogue(e){return await this.dialogues.get(e)}async getAllDialogues(){return await this.dialogues.toArray()}async getDialoguesForNPC(e){const t=await this.getNPC(e);if(!t)throw new Error(`NPC with ID ${e} not found`);return(await Promise.all((t.dialogues||[]).map(a=>this.getDialogue(a.dialogueId)))).filter(a=>a!==void 0)}async markDialogueAsRead(e,t){const r=await this.getNPC(e);if(!r)throw new Error(`NPC with ID ${e} not found`);const a=r.dialogues?.find(o=>o.dialogueId===t);a&&(a.read=!0,await this.addNPC(r))}async fetchDialogues(e){try{const r=(await oe.get(e)).data.key,a=Object.values(r).map(o=>({...o}));await this.dialogues.bulkPut(a)}catch(t){J.error(`Failed to fetch dialogues from ${e}:`,t)}}async getPrioritizedDialoguesForNPC(e){try{const t=await this.getNPC(e);if(!t)throw new Error(`NPC with ID ${e} not found`);const a=(await Promise.all((t.dialogues||[]).map(async o=>{const u=await this.getDialogue(o.dialogueId);return u?{...u,priority:o.priority,read:o.read}:null}))).filter(o=>o!==null);return a.sort((o,u)=>u.priority-o.priority),a}catch(t){return J.error(`Failed to get prioritized dialogues for NPC with ID ${e}:`,t),[]}}async getNPCNameById(e){return(await this.getNPC(e))?.name}async getNPCAvatarById(e){const t=await this.getNPC(e);if(t?.avatarImageId)return(await this.getAvatar(t.avatarImageId))?.avatarData}async getNPCSlugById(e){return(await this.getNPC(e))?.slug}async getNPCHealthById(e){try{return(await this.getNPC(e))?.stats?.health}catch(t){J.error(`Failed to get health for NPC with ID ${e}:`,t);return}}async getNPCManaById(e){try{return(await this.getNPC(e))?.stats?.mana}catch(t){J.error(`Failed to get mana for NPC with ID ${e}:`,t);return}}async createNPCSession(e,t){try{const r=this.getNPCNameById(t),a=this.getNPCSlugById(t),o=this.getNPCAvatarById(t),u=this.getNPCHealthById(t),d=this.getNPCManaById(t),[p,y,g,S,$]=await Promise.all([r,a,o,u,d]),K={...e.get(),[`${t}_name`]:p||"Unknown",[`${t}_slug`]:y||"Unknown",[`${t}_avatar`]:g?URL.createObjectURL(g):"Unknown",[`${t}_health`]:S||"100",[`${t}_mana`]:$||"100"};e.set(K)}catch{const a={...e.get(),[`${t}_name`]:"Unknown",[`${t}_slug`]:"Unknown",[`${t}_avatar`]:"Unknown",[`${t}_hp`]:"100",[`${t}_mana`]:"100"};e.set(a)}}async getNPCDialogueOptionsByULID(e){try{const t=await this.getDialogue(e);if(!t||!t.options)return"[]";const r=await Promise.all(t.options.map(async a=>this.getDialogue(a)));return JSON.stringify(r.filter(a=>a!==void 0))}catch(t){return J.error(`Failed to get dialogue options for ID ${e}:`,t),"[]"}}async getAllDialogueOptions(e){const t=[],r=new Set,a=async o=>{if(r.has(o))return;r.add(o);const u=await this.getDialogue(o);if(u&&(t.push(u),u.options&&u.options.length>0))for(const d of u.options)await a(d)};return await a(e),t}async createDialogueSession(e,t){try{const r=await this.getNPCDialogueOptionsByULID(t),a={...e.get(),[`${t}_options`]:r||"[]"};e.set(a)}catch{const a={...e.get(),[`${t}_options`]:"[]"};e.set(a)}}}const Kl=new Ml;class zl{constructor(){this.actionHandlers={talk:this.talkToNPC.bind(this),quest:this.questWithNPC.bind(this),trade:this.tradeWithNPC.bind(this),combat:this.startCombat.bind(this),heal:this.healNPC.bind(this),steal:this.stealFromNPC.bind(this),lore:this.loreFromNPC.bind(this)}}getActionHandler(e){return this.actionHandlers[e]}loreFromNPC(e){J.log(`Pulling up the lore of the NPC with ID: ${e.npcId}`)}questWithNPC(e){J.log(`Starting quest with NPC with ID: ${e.npcId}`)}healNPC(e){J.log(`Healing NPC with ID: ${e.npcId}`)}oathFromNPC(e){J.log(`Oath from NPC with ID: ${e.npcId}`)}async talkToNPC(e){try{J.log(`Talking to NPC with ID: ${e.npcId}`);const t=await Kl.getPrioritizedDialoguesForNPC(e.npcId);if(J.log(t),t.length>0){const r=t[0];mt.emit("npcDialogue",{npcId:e.npcId,dialogue:r},1e3)}else J.log("No dialogues available for this NPC.")}catch(t){J.error(`Failed to fetch dialogues for NPC with ID ${e.npcId}:`,t)}}tradeWithNPC(e){J.log(`Trading with NPC with ID: ${e.npcId}`)}moveToNPC(e){const r=e.data?.coords||{x:10,y:15};mt.emit("playerMove",r)}stealFromNPC(e){J.log(`Attempting to steal from NPC with ID: ${e.npcId}`);const t={npcId:e.npcId,npcName:e.npcName,data:e.data};mt.emit("playerSteal",t)}startCombat(e){J.log(`Starting combat with NPC with ID: ${e.npcId}`)}checkFish(e){J.log(`Checking fish for NPC with ID: ${e.npcId}`)}attachNPCEvent(e,t,r,a){e.setInteractive(),e.on("pointerover",o=>{const u={npcId:e.name||"",npcName:t,actions:r.map(d=>d.label),data:a||{},coords:{x:o.x,y:o.y}};mt.emit("npcInteraction",u),e.setTint(65280)}),e.on("pointerout",()=>{e.clearTint()}),e.on("pointerdown",o=>{const u={npcId:e.name||"",npcName:t,actions:r.map(d=>d.label),data:a||{},coords:{x:o.x,y:o.y}};J.log(`Click Registered at X: ${u.coords.x} Y: ${u.coords.y}`),mt.emit("npcInteractionClick",u,1e3)})}}const Jl=new zl;export{jt as $,J as D,yi as K,jo as a,mt as e,Xl as k};
diff --git a/docs/about/index.html b/docs/about/index.html
index 06bc12b863..b4a40b8351 100644
--- a/docs/about/index.html
+++ b/docs/about/index.html
@@ -24,7 +24,7 @@
}
requestAnimationFrame(raf);
-
+
diff --git a/docs/advanced/technical-specifications/index.html b/docs/advanced/technical-specifications/index.html
index 9d4e56affa..289363b46c 100644
--- a/docs/advanced/technical-specifications/index.html
+++ b/docs/advanced/technical-specifications/index.html
@@ -24,7 +24,7 @@
},
};
})();
-
+
+
+