@epic-web/workshop-app 6.74.0 → 6.74.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/build/client/assets/_exerciseNumber-6IQJMb5M.js +2 -0
  2. package/build/client/assets/{_exerciseNumber-jokuvO2V.js.map → _exerciseNumber-6IQJMb5M.js.map} +1 -1
  3. package/build/client/assets/_exerciseNumber_.finished-D9-WSUZy.js +2 -0
  4. package/build/client/assets/{_exerciseNumber_.finished-BaC--Y5p.js.map → _exerciseNumber_.finished-D9-WSUZy.js.map} +1 -1
  5. package/build/client/assets/_extra-IT1EaIMp.js +2 -0
  6. package/build/client/assets/{_extra-DXypL1sc.js.map → _extra-IT1EaIMp.js.map} +1 -1
  7. package/build/client/assets/{_layout-C9vSX5Ti.js → _layout-BDFC2e7T.js} +2 -2
  8. package/build/client/assets/{_layout-C9vSX5Ti.js.map → _layout-BDFC2e7T.js.map} +1 -1
  9. package/build/client/assets/_layout-CCCrBY2W.js +2 -0
  10. package/build/client/assets/{_layout-_Aw6qzZC.js.map → _layout-CCCrBY2W.js.map} +1 -1
  11. package/build/client/assets/{diff-Dng5ItOr.js → diff-4YyKvzHi.js} +2 -2
  12. package/build/client/assets/{diff-Dng5ItOr.js.map → diff-4YyKvzHi.js.map} +1 -1
  13. package/build/client/assets/diff-8Er9eAl-.js +2 -0
  14. package/build/client/assets/{diff-DfWBhj2O.js.map → diff-8Er9eAl-.js.map} +1 -1
  15. package/build/client/assets/epic-video-BtFzbNqF.js +2 -0
  16. package/build/client/assets/{epic-video-C1_HSISA.js.map → epic-video-BtFzbNqF.js.map} +1 -1
  17. package/build/client/assets/{epic-video-CC0372g5.js → epic-video-DzLohyvt.js} +146 -146
  18. package/build/client/assets/epic-video-DzLohyvt.js.map +1 -0
  19. package/build/client/assets/finished-CzmzTZg6.js +2 -0
  20. package/build/client/assets/{finished-BbEk1NdF.js.map → finished-CzmzTZg6.js.map} +1 -1
  21. package/build/client/assets/index-BN0kldnY.js +2 -0
  22. package/build/client/assets/{index-CFM_ffAh.js.map → index-BN0kldnY.js.map} +1 -1
  23. package/build/client/assets/index-BNsKVnVt.js +2 -0
  24. package/build/client/assets/{index-Pxi8WjFA.js.map → index-BNsKVnVt.js.map} +1 -1
  25. package/build/client/assets/index-Cby_tLUO.js +2 -0
  26. package/build/client/assets/{index-CfU0fdf7.js.map → index-Cby_tLUO.js.map} +1 -1
  27. package/build/client/assets/{index-DroM8fzS.js → index-Dpyv8N6m.js} +2 -2
  28. package/build/client/assets/{index-DroM8fzS.js.map → index-Dpyv8N6m.js.map} +1 -1
  29. package/build/client/assets/{manifest-835c6db1.js → manifest-65ac4702.js} +1 -1
  30. package/build/client/assets/{mdx-vy-1-0a3.js → mdx-8X3W8bVO.js} +2 -2
  31. package/build/client/assets/{mdx-vy-1-0a3.js.map → mdx-8X3W8bVO.js.map} +1 -1
  32. package/build/client/assets/{progress-BcA4i0iU.js → progress-Bby-ybMA.js} +2 -2
  33. package/build/client/assets/progress-Bby-ybMA.js.map +1 -0
  34. package/build/client/assets/root-BwYDIUyI.js.map +1 -1
  35. package/build/client/assets/test-DXylXETz.js +2 -0
  36. package/build/client/assets/{test-Ciw2aKZE.js.map → test-DXylXETz.js.map} +1 -1
  37. package/build/client/assets/{tests-CZ2AhDKA.js → tests-DlPVOsMT.js} +2 -2
  38. package/build/client/assets/{tests-CZ2AhDKA.js.map → tests-DlPVOsMT.js.map} +1 -1
  39. package/build/server/index.js +310 -63
  40. package/build/server/index.js.map +1 -1
  41. package/package.json +3 -3
  42. package/build/client/assets/_exerciseNumber-jokuvO2V.js +0 -2
  43. package/build/client/assets/_exerciseNumber_.finished-BaC--Y5p.js +0 -2
  44. package/build/client/assets/_extra-DXypL1sc.js +0 -2
  45. package/build/client/assets/_layout-_Aw6qzZC.js +0 -2
  46. package/build/client/assets/diff-DfWBhj2O.js +0 -2
  47. package/build/client/assets/epic-video-C1_HSISA.js +0 -2
  48. package/build/client/assets/epic-video-CC0372g5.js.map +0 -1
  49. package/build/client/assets/finished-BbEk1NdF.js +0 -2
  50. package/build/client/assets/index-CFM_ffAh.js +0 -2
  51. package/build/client/assets/index-CfU0fdf7.js +0 -2
  52. package/build/client/assets/index-Pxi8WjFA.js +0 -2
  53. package/build/client/assets/progress-BcA4i0iU.js.map +0 -1
  54. package/build/client/assets/test-Ciw2aKZE.js +0 -2
@@ -1,2 +1,2 @@
1
- import{j as H}from"./jsx-runtime-C5WNSv3b.js";import{a as vn}from"./misc-W4055b-0.js";import{r as P}from"./index-CqIc3cxq.js";import{f as yr,u as je,k as vr,g as xr}from"./chunk-EPOLDU6W-BCLmut3y.js";import{u as Tr}from"./pe-CIZUOJMr.js";import{u as Pr}from"./root-loader-BOzEMapJ.js";const Ls=P.createContext({});function Sr(t){const e=P.useRef(null);return e.current===null&&(e.current=t()),e.current}const ks=typeof window<"u",br=ks?P.useLayoutEffect:P.useEffect,Oe=P.createContext(null);function Ne(t,e){t.indexOf(e)===-1&&t.push(e)}function Ue(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const z=(t,e,n)=>n>e?e:n<t?t:n;let We=()=>{};const Y={},Fs=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t);function Is(t){return typeof t=="object"&&t!==null}const Bs=t=>/^0[^.\s]+$/u.test(t);function Ke(t){let e;return()=>(e===void 0&&(e=t()),e)}const K=t=>t,wr=(t,e)=>n=>e(t(n)),Et=(...t)=>t.reduce(wr),At=(t,e,n)=>{const s=e-t;return s===0?1:(n-t)/s};class $e{constructor(){this.subscriptions=[]}add(e){return Ne(this.subscriptions,e),()=>Ue(this.subscriptions,e)}notify(e,n,s){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](e,n,s);else for(let o=0;o<i;o++){const r=this.subscriptions[o];r&&r(e,n,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const X=t=>t*1e3,W=t=>t/1e3;function js(t,e){return e?t*(1e3/e):0}const Os=(t,e,n)=>(((1-3*n+3*e)*t+(3*n-6*e))*t+3*e)*t,Ar=1e-7,Vr=12;function Cr(t,e,n,s,i){let o,r,a=0;do r=e+(n-e)/2,o=Os(r,s,i)-t,o>0?n=r:e=r;while(Math.abs(o)>Ar&&++a<Vr);return r}function Rt(t,e,n,s){if(t===e&&n===s)return K;const i=o=>Cr(o,0,1,t,n);return o=>o===0||o===1?o:Os(i(o),e,s)}const Ns=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,Us=t=>e=>1-t(1-e),Ws=Rt(.33,1.53,.69,.99),Ge=Us(Ws),Ks=Ns(Ge),$s=t=>(t*=2)<1?.5*Ge(t):.5*(2-Math.pow(2,-10*(t-1))),He=t=>1-Math.sin(Math.acos(t)),Gs=Us(He),Hs=Ns(He),Dr=Rt(.42,0,1,1),Mr=Rt(0,0,.58,1),_s=Rt(.42,0,.58,1),Er=t=>Array.isArray(t)&&typeof t[0]!="number",zs=t=>Array.isArray(t)&&typeof t[0]=="number",Rr={linear:K,easeIn:Dr,easeInOut:_s,easeOut:Mr,circIn:He,circInOut:Hs,circOut:Gs,backIn:Ge,backInOut:Ks,backOut:Ws,anticipate:$s},Lr=t=>typeof t=="string",xn=t=>{if(zs(t)){We(t.length===4);const[e,n,s,i]=t;return Rt(e,n,s,i)}else if(Lr(t))return Rr[t];return t},Ft=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function kr(t,e){let n=new Set,s=new Set,i=!1,o=!1;const r=new WeakSet;let a={delta:0,timestamp:0,isProcessing:!1};function l(u){r.has(u)&&(c.schedule(u),t()),u(a)}const c={schedule:(u,h=!1,f=!1)=>{const m=f&&i?n:s;return h&&r.add(u),m.has(u)||m.add(u),u},cancel:u=>{s.delete(u),r.delete(u)},process:u=>{if(a=u,i){o=!0;return}i=!0,[n,s]=[s,n],n.forEach(l),n.clear(),i=!1,o&&(o=!1,c.process(u))}};return c}const Fr=40;function Xs(t,e){let n=!1,s=!0;const i={delta:0,timestamp:0,isProcessing:!1},o=()=>n=!0,r=Ft.reduce((v,w)=>(v[w]=kr(o),v),{}),{setup:a,read:l,resolveKeyframes:c,preUpdate:u,update:h,preRender:f,render:d,postRender:m}=r,p=()=>{const v=Y.useManualTiming?i.timestamp:performance.now();n=!1,Y.useManualTiming||(i.delta=s?1e3/60:Math.max(Math.min(v-i.timestamp,Fr),1)),i.timestamp=v,i.isProcessing=!0,a.process(i),l.process(i),c.process(i),u.process(i),h.process(i),f.process(i),d.process(i),m.process(i),i.isProcessing=!1,n&&e&&(s=!1,t(p))},x=()=>{n=!0,s=!0,i.isProcessing||t(p)};return{schedule:Ft.reduce((v,w)=>{const S=r[w];return v[w]=(A,E=!1,b=!1)=>(n||x(),S.schedule(A,E,b)),v},{}),cancel:v=>{for(let w=0;w<Ft.length;w++)r[Ft[w]].cancel(v)},state:i,steps:r}}const{schedule:V,cancel:J,state:k,steps:Jt}=Xs(typeof requestAnimationFrame<"u"?requestAnimationFrame:K,!0);let jt;function Ir(){jt=void 0}const I={now:()=>(jt===void 0&&I.set(k.isProcessing||Y.useManualTiming?k.timestamp:performance.now()),jt),set:t=>{jt=t,queueMicrotask(Ir)}},Ys=t=>e=>typeof e=="string"&&e.startsWith(t),qs=Ys("--"),Br=Ys("var(--"),_e=t=>Br(t)?jr.test(t.split("/*")[0].trim()):!1,jr=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function Tn(t){return typeof t!="string"?!1:t.split("/*")[0].includes("var(--")}const pt={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},Vt={...pt,transform:t=>z(0,1,t)},It={...pt,default:1},Pt=t=>Math.round(t*1e5)/1e5,ze=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Or(t){return t==null}const Nr=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,Xe=(t,e)=>n=>!!(typeof n=="string"&&Nr.test(n)&&n.startsWith(t)||e&&!Or(n)&&Object.prototype.hasOwnProperty.call(n,e)),Zs=(t,e,n)=>s=>{if(typeof s!="string")return s;const[i,o,r,a]=s.match(ze);return{[t]:parseFloat(i),[e]:parseFloat(o),[n]:parseFloat(r),alpha:a!==void 0?parseFloat(a):1}},Ur=t=>z(0,255,t),Qt={...pt,transform:t=>Math.round(Ur(t))},it={test:Xe("rgb","red"),parse:Zs("red","green","blue"),transform:({red:t,green:e,blue:n,alpha:s=1})=>"rgba("+Qt.transform(t)+", "+Qt.transform(e)+", "+Qt.transform(n)+", "+Pt(Vt.transform(s))+")"};function Wr(t){let e="",n="",s="",i="";return t.length>5?(e=t.substring(1,3),n=t.substring(3,5),s=t.substring(5,7),i=t.substring(7,9)):(e=t.substring(1,2),n=t.substring(2,3),s=t.substring(3,4),i=t.substring(4,5),e+=e,n+=n,s+=s,i+=i),{red:parseInt(e,16),green:parseInt(n,16),blue:parseInt(s,16),alpha:i?parseInt(i,16)/255:1}}const pe={test:Xe("#"),parse:Wr,transform:it.transform},Lt=t=>({test:e=>typeof e=="string"&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),q=Lt("deg"),_=Lt("%"),y=Lt("px"),Kr=Lt("vh"),$r=Lt("vw"),Pn={..._,parse:t=>_.parse(t)/100,transform:t=>_.transform(t*100)},ut={test:Xe("hsl","hue"),parse:Zs("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:n,alpha:s=1})=>"hsla("+Math.round(t)+", "+_.transform(Pt(e))+", "+_.transform(Pt(n))+", "+Pt(Vt.transform(s))+")"},M={test:t=>it.test(t)||pe.test(t)||ut.test(t),parse:t=>it.test(t)?it.parse(t):ut.test(t)?ut.parse(t):pe.parse(t),transform:t=>typeof t=="string"?t:t.hasOwnProperty("red")?it.transform(t):ut.transform(t),getAnimatableNone:t=>{const e=M.parse(t);return e.alpha=0,M.transform(e)}},Gr=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function Hr(t){return isNaN(t)&&typeof t=="string"&&(t.match(ze)?.length||0)+(t.match(Gr)?.length||0)>0}const Js="number",Qs="color",_r="var",zr="var(",Sn="${}",Xr=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function Ct(t){const e=t.toString(),n=[],s={color:[],number:[],var:[]},i=[];let o=0;const a=e.replace(Xr,l=>(M.test(l)?(s.color.push(o),i.push(Qs),n.push(M.parse(l))):l.startsWith(zr)?(s.var.push(o),i.push(_r),n.push(l)):(s.number.push(o),i.push(Js),n.push(parseFloat(l))),++o,Sn)).split(Sn);return{values:n,split:a,indexes:s,types:i}}function ti(t){return Ct(t).values}function ei(t){const{split:e,types:n}=Ct(t),s=e.length;return i=>{let o="";for(let r=0;r<s;r++)if(o+=e[r],i[r]!==void 0){const a=n[r];a===Js?o+=Pt(i[r]):a===Qs?o+=M.transform(i[r]):o+=i[r]}return o}}const Yr=t=>typeof t=="number"?0:M.test(t)?M.getAnimatableNone(t):t;function qr(t){const e=ti(t);return ei(t)(e.map(Yr))}const Q={test:Hr,parse:ti,createTransformer:ei,getAnimatableNone:qr};function te(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(e-t)*6*n:n<1/2?e:n<2/3?t+(e-t)*(2/3-n)*6:t}function Zr({hue:t,saturation:e,lightness:n,alpha:s}){t/=360,e/=100,n/=100;let i=0,o=0,r=0;if(!e)i=o=r=n;else{const a=n<.5?n*(1+e):n+e-n*e,l=2*n-a;i=te(l,a,t+1/3),o=te(l,a,t),r=te(l,a,t-1/3)}return{red:Math.round(i*255),green:Math.round(o*255),blue:Math.round(r*255),alpha:s}}function Wt(t,e){return n=>n>0?e:t}const C=(t,e,n)=>t+(e-t)*n,ee=(t,e,n)=>{const s=t*t,i=n*(e*e-s)+s;return i<0?0:Math.sqrt(i)},Jr=[pe,it,ut],Qr=t=>Jr.find(e=>e.test(t));function bn(t){const e=Qr(t);if(!e)return!1;let n=e.parse(t);return e===ut&&(n=Zr(n)),n}const wn=(t,e)=>{const n=bn(t),s=bn(e);if(!n||!s)return Wt(t,e);const i={...n};return o=>(i.red=ee(n.red,s.red,o),i.green=ee(n.green,s.green,o),i.blue=ee(n.blue,s.blue,o),i.alpha=C(n.alpha,s.alpha,o),it.transform(i))},ge=new Set(["none","hidden"]);function to(t,e){return ge.has(t)?n=>n<=0?t:e:n=>n>=1?e:t}function eo(t,e){return n=>C(t,e,n)}function Ye(t){return typeof t=="number"?eo:typeof t=="string"?_e(t)?Wt:M.test(t)?wn:io:Array.isArray(t)?ni:typeof t=="object"?M.test(t)?wn:no:Wt}function ni(t,e){const n=[...t],s=n.length,i=t.map((o,r)=>Ye(o)(o,e[r]));return o=>{for(let r=0;r<s;r++)n[r]=i[r](o);return n}}function no(t,e){const n={...t,...e},s={};for(const i in n)t[i]!==void 0&&e[i]!==void 0&&(s[i]=Ye(t[i])(t[i],e[i]));return i=>{for(const o in s)n[o]=s[o](i);return n}}function so(t,e){const n=[],s={color:0,var:0,number:0};for(let i=0;i<e.values.length;i++){const o=e.types[i],r=t.indexes[o][s[o]],a=t.values[r]??0;n[i]=a,s[o]++}return n}const io=(t,e)=>{const n=Q.createTransformer(e),s=Ct(t),i=Ct(e);return s.indexes.var.length===i.indexes.var.length&&s.indexes.color.length===i.indexes.color.length&&s.indexes.number.length>=i.indexes.number.length?ge.has(t)&&!i.values.length||ge.has(e)&&!s.values.length?to(t,e):Et(ni(so(s,i),i.values),n):Wt(t,e)};function si(t,e,n){return typeof t=="number"&&typeof e=="number"&&typeof n=="number"?C(t,e,n):Ye(t)(t,e)}const ro=t=>{const e=({timestamp:n})=>t(n);return{start:(n=!0)=>V.update(e,n),stop:()=>J(e),now:()=>k.isProcessing?k.timestamp:I.now()}},ii=(t,e,n=10)=>{let s="";const i=Math.max(Math.round(e/n),2);for(let o=0;o<i;o++)s+=Math.round(t(o/(i-1))*1e4)/1e4+", ";return`linear(${s.substring(0,s.length-2)})`},Kt=2e4;function qe(t){let e=0;const n=50;let s=t.next(e);for(;!s.done&&e<Kt;)e+=n,s=t.next(e);return e>=Kt?1/0:e}function oo(t,e=100,n){const s=n({...t,keyframes:[0,e]}),i=Math.min(qe(s),Kt);return{type:"keyframes",ease:o=>s.next(i*o).value/e,duration:W(i)}}const ao=5;function ri(t,e,n){const s=Math.max(e-ao,0);return js(n-t(s),e-s)}const D={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},ne=.001;function lo({duration:t=D.duration,bounce:e=D.bounce,velocity:n=D.velocity,mass:s=D.mass}){let i,o,r=1-e;r=z(D.minDamping,D.maxDamping,r),t=z(D.minDuration,D.maxDuration,W(t)),r<1?(i=c=>{const u=c*r,h=u*t,f=u-n,d=ye(c,r),m=Math.exp(-h);return ne-f/d*m},o=c=>{const h=c*r*t,f=h*n+n,d=Math.pow(r,2)*Math.pow(c,2)*t,m=Math.exp(-h),p=ye(Math.pow(c,2),r);return(-i(c)+ne>0?-1:1)*((f-d)*m)/p}):(i=c=>{const u=Math.exp(-c*t),h=(c-n)*t+1;return-ne+u*h},o=c=>{const u=Math.exp(-c*t),h=(n-c)*(t*t);return u*h});const a=5/t,l=co(i,o,a);if(t=X(t),isNaN(l))return{stiffness:D.stiffness,damping:D.damping,duration:t};{const c=Math.pow(l,2)*s;return{stiffness:c,damping:r*2*Math.sqrt(s*c),duration:t}}}const uo=12;function co(t,e,n){let s=n;for(let i=1;i<uo;i++)s=s-t(s)/e(s);return s}function ye(t,e){return t*Math.sqrt(1-e*e)}const ho=["duration","bounce"],fo=["stiffness","damping","mass"];function An(t,e){return e.some(n=>t[n]!==void 0)}function mo(t){let e={velocity:D.velocity,stiffness:D.stiffness,damping:D.damping,mass:D.mass,isResolvedFromDuration:!1,...t};if(!An(t,fo)&&An(t,ho))if(t.visualDuration){const n=t.visualDuration,s=2*Math.PI/(n*1.2),i=s*s,o=2*z(.05,1,1-(t.bounce||0))*Math.sqrt(i);e={...e,mass:D.mass,stiffness:i,damping:o}}else{const n=lo(t);e={...e,...n,mass:D.mass},e.isResolvedFromDuration=!0}return e}function $t(t=D.visualDuration,e=D.bounce){const n=typeof t!="object"?{visualDuration:t,keyframes:[0,1],bounce:e}:t;let{restSpeed:s,restDelta:i}=n;const o=n.keyframes[0],r=n.keyframes[n.keyframes.length-1],a={done:!1,value:o},{stiffness:l,damping:c,mass:u,duration:h,velocity:f,isResolvedFromDuration:d}=mo({...n,velocity:-W(n.velocity||0)}),m=f||0,p=c/(2*Math.sqrt(l*u)),x=r-o,g=W(Math.sqrt(l/u)),T=Math.abs(x)<5;s||(s=T?D.restSpeed.granular:D.restSpeed.default),i||(i=T?D.restDelta.granular:D.restDelta.default);let v;if(p<1){const S=ye(g,p);v=A=>{const E=Math.exp(-p*g*A);return r-E*((m+p*g*x)/S*Math.sin(S*A)+x*Math.cos(S*A))}}else if(p===1)v=S=>r-Math.exp(-g*S)*(x+(m+g*x)*S);else{const S=g*Math.sqrt(p*p-1);v=A=>{const E=Math.exp(-p*g*A),b=Math.min(S*A,300);return r-E*((m+p*g*x)*Math.sinh(b)+S*x*Math.cosh(b))/S}}const w={calculatedDuration:d&&h||null,next:S=>{const A=v(S);if(d)a.done=S>=h;else{let E=S===0?m:0;p<1&&(E=S===0?X(m):ri(v,S,A));const b=Math.abs(E)<=s,j=Math.abs(r-A)<=i;a.done=b&&j}return a.value=a.done?r:A,a},toString:()=>{const S=Math.min(qe(w),Kt),A=ii(E=>w.next(S*E).value,S,30);return S+"ms "+A},toTransition:()=>{}};return w}$t.applyToOptions=t=>{const e=oo(t,100,$t);return t.ease=e.ease,t.duration=X(e.duration),t.type="keyframes",t};function ve({keyframes:t,velocity:e=0,power:n=.8,timeConstant:s=325,bounceDamping:i=10,bounceStiffness:o=500,modifyTarget:r,min:a,max:l,restDelta:c=.5,restSpeed:u}){const h=t[0],f={done:!1,value:h},d=b=>a!==void 0&&b<a||l!==void 0&&b>l,m=b=>a===void 0?l:l===void 0||Math.abs(a-b)<Math.abs(l-b)?a:l;let p=n*e;const x=h+p,g=r===void 0?x:r(x);g!==x&&(p=g-h);const T=b=>-p*Math.exp(-b/s),v=b=>g+T(b),w=b=>{const j=T(b),O=v(b);f.done=Math.abs(j)<=c,f.value=f.done?g:O};let S,A;const E=b=>{d(f.value)&&(S=b,A=$t({keyframes:[f.value,m(f.value)],velocity:ri(v,b,f.value),damping:i,stiffness:o,restDelta:c,restSpeed:u}))};return E(0),{calculatedDuration:null,next:b=>{let j=!1;return!A&&S===void 0&&(j=!0,w(b),E(b)),S!==void 0&&b>=S?A.next(b-S):(!j&&w(b),f)}}}function po(t,e,n){const s=[],i=n||Y.mix||si,o=t.length-1;for(let r=0;r<o;r++){let a=i(t[r],t[r+1]);if(e){const l=Array.isArray(e)?e[r]||K:e;a=Et(l,a)}s.push(a)}return s}function go(t,e,{clamp:n=!0,ease:s,mixer:i}={}){const o=t.length;if(We(o===e.length),o===1)return()=>e[0];if(o===2&&e[0]===e[1])return()=>e[1];const r=t[0]===t[1];t[0]>t[o-1]&&(t=[...t].reverse(),e=[...e].reverse());const a=po(e,s,i),l=a.length,c=u=>{if(r&&u<t[0])return e[0];let h=0;if(l>1)for(;h<t.length-2&&!(u<t[h+1]);h++);const f=At(t[h],t[h+1],u);return a[h](f)};return n?u=>c(z(t[0],t[o-1],u)):c}function yo(t,e){const n=t[t.length-1];for(let s=1;s<=e;s++){const i=At(0,e,s);t.push(C(n,1,i))}}function vo(t){const e=[0];return yo(e,t.length-1),e}function xo(t,e){return t.map(n=>n*e)}function To(t,e){return t.map(()=>e||_s).splice(0,t.length-1)}function St({duration:t=300,keyframes:e,times:n,ease:s="easeInOut"}){const i=Er(s)?s.map(xn):xn(s),o={done:!1,value:e[0]},r=xo(n&&n.length===e.length?n:vo(e),t),a=go(r,e,{ease:Array.isArray(i)?i:To(e,i)});return{calculatedDuration:t,next:l=>(o.value=a(l),o.done=l>=t,o)}}const Po=t=>t!==null;function Ze(t,{repeat:e,repeatType:n="loop"},s,i=1){const o=t.filter(Po),a=i<0||e&&n!=="loop"&&e%2===1?0:o.length-1;return!a||s===void 0?o[a]:s}const So={decay:ve,inertia:ve,tween:St,keyframes:St,spring:$t};function oi(t){typeof t.type=="string"&&(t.type=So[t.type])}class Je{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,n){return this.finished.then(e,n)}}const bo=t=>t/100;class Qe extends Je{constructor(e){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==I.now()&&this.tick(I.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=e,this.initAnimation(),this.play(),e.autoplay===!1&&this.pause()}initAnimation(){const{options:e}=this;oi(e);const{type:n=St,repeat:s=0,repeatDelay:i=0,repeatType:o,velocity:r=0}=e;let{keyframes:a}=e;const l=n||St;l!==St&&typeof a[0]!="number"&&(this.mixKeyframes=Et(bo,si(a[0],a[1])),a=[0,100]);const c=l({...e,keyframes:a});o==="mirror"&&(this.mirroredGenerator=l({...e,keyframes:[...a].reverse(),velocity:-r})),c.calculatedDuration===null&&(c.calculatedDuration=qe(c));const{calculatedDuration:u}=c;this.calculatedDuration=u,this.resolvedDuration=u+i,this.totalDuration=this.resolvedDuration*(s+1)-i,this.generator=c}updateTime(e){const n=Math.round(e-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(e,n=!1){const{generator:s,totalDuration:i,mixKeyframes:o,mirroredGenerator:r,resolvedDuration:a,calculatedDuration:l}=this;if(this.startTime===null)return s.next(0);const{delay:c=0,keyframes:u,repeat:h,repeatType:f,repeatDelay:d,type:m,onUpdate:p,finalKeyframe:x}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-i/this.speed,this.startTime)),n?this.currentTime=e:this.updateTime(e);const g=this.currentTime-c*(this.playbackSpeed>=0?1:-1),T=this.playbackSpeed>=0?g<0:g>i;this.currentTime=Math.max(g,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=i);let v=this.currentTime,w=s;if(h){const b=Math.min(this.currentTime,i)/a;let j=Math.floor(b),O=b%1;!O&&b>=1&&(O=1),O===1&&j--,j=Math.min(j,h+1),!!(j%2)&&(f==="reverse"?(O=1-O,d&&(O-=d/a)):f==="mirror"&&(w=r)),v=z(0,1,O)*a}const S=T?{done:!1,value:u[0]}:w.next(v);o&&(S.value=o(S.value));let{done:A}=S;!T&&l!==null&&(A=this.playbackSpeed>=0?this.currentTime>=i:this.currentTime<=0);const E=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&A);return E&&m!==ve&&(S.value=Ze(u,this.options,x,this.speed)),p&&p(S.value),E&&this.finish(),S}then(e,n){return this.finished.then(e,n)}get duration(){return W(this.calculatedDuration)}get iterationDuration(){const{delay:e=0}=this.options||{};return this.duration+W(e)}get time(){return W(this.currentTime)}set time(e){e=X(e),this.currentTime=e,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=e:this.driver&&(this.startTime=this.driver.now()-e/this.playbackSpeed),this.driver?.start(!1)}get speed(){return this.playbackSpeed}set speed(e){this.updateTime(I.now());const n=this.playbackSpeed!==e;this.playbackSpeed=e,n&&(this.time=W(this.currentTime))}play(){if(this.isStopped)return;const{driver:e=ro,startTime:n}=this.options;this.driver||(this.driver=e(i=>this.tick(i))),this.options.onPlay?.();const s=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=s):this.holdTime!==null?this.startTime=s-this.holdTime:this.startTime||(this.startTime=n??s),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(I.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(e){return this.startTime=0,this.tick(e,!0)}attachTimeline(e){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),e.observe(this)}}function wo(t){for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}const rt=t=>t*180/Math.PI,xe=t=>{const e=rt(Math.atan2(t[1],t[0]));return Te(e)},Ao={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:xe,rotateZ:xe,skewX:t=>rt(Math.atan(t[1])),skewY:t=>rt(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},Te=t=>(t=t%360,t<0&&(t+=360),t),Vn=xe,Cn=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),Dn=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),Vo={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:Cn,scaleY:Dn,scale:t=>(Cn(t)+Dn(t))/2,rotateX:t=>Te(rt(Math.atan2(t[6],t[5]))),rotateY:t=>Te(rt(Math.atan2(-t[2],t[0]))),rotateZ:Vn,rotate:Vn,skewX:t=>rt(Math.atan(t[4])),skewY:t=>rt(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function Pe(t){return t.includes("scale")?1:0}function Se(t,e){if(!t||t==="none")return Pe(e);const n=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let s,i;if(n)s=Vo,i=n;else{const a=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);s=Ao,i=a}if(!i)return Pe(e);const o=s[e],r=i[1].split(",").map(Do);return typeof o=="function"?o(r):r[o]}const Co=(t,e)=>{const{transform:n="none"}=getComputedStyle(t);return Se(n,e)};function Do(t){return parseFloat(t.trim())}const gt=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],yt=new Set(gt),Mn=t=>t===pt||t===y,Mo=new Set(["x","y","z"]),Eo=gt.filter(t=>!Mo.has(t));function Ro(t){const e=[];return Eo.forEach(n=>{const s=t.getValue(n);s!==void 0&&(e.push([n,s.get()]),s.set(n.startsWith("scale")?1:0))}),e}const Z={width:({x:t},{paddingLeft:e="0",paddingRight:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),height:({y:t},{paddingTop:e="0",paddingBottom:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>Se(e,"x"),y:(t,{transform:e})=>Se(e,"y")};Z.translateX=Z.x;Z.translateY=Z.y;const ot=new Set;let be=!1,we=!1,Ae=!1;function ai(){if(we){const t=Array.from(ot).filter(s=>s.needsMeasurement),e=new Set(t.map(s=>s.element)),n=new Map;e.forEach(s=>{const i=Ro(s);i.length&&(n.set(s,i),s.render())}),t.forEach(s=>s.measureInitialState()),e.forEach(s=>{s.render();const i=n.get(s);i&&i.forEach(([o,r])=>{s.getValue(o)?.set(r)})}),t.forEach(s=>s.measureEndState()),t.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}we=!1,be=!1,ot.forEach(t=>t.complete(Ae)),ot.clear()}function li(){ot.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(we=!0)})}function Lo(){Ae=!0,li(),ai(),Ae=!1}class tn{constructor(e,n,s,i,o,r=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=n,this.name=s,this.motionValue=i,this.element=o,this.isAsync=r}scheduleResolve(){this.state="scheduled",this.isAsync?(ot.add(this),be||(be=!0,V.read(li),V.resolveKeyframes(ai))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:n,element:s,motionValue:i}=this;if(e[0]===null){const o=i?.get(),r=e[e.length-1];if(o!==void 0)e[0]=o;else if(s&&n){const a=s.readValue(n,r);a!=null&&(e[0]=a)}e[0]===void 0&&(e[0]=r),i&&o===void 0&&i.set(e[0])}wo(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),ot.delete(this)}cancel(){this.state==="scheduled"&&(ot.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const ko=t=>t.startsWith("--");function Fo(t,e,n){ko(e)?t.style.setProperty(e,n):t.style[e]=n}const Io=Ke(()=>window.ScrollTimeline!==void 0),Bo={};function jo(t,e){const n=Ke(t);return()=>Bo[e]??n()}const ui=jo(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),xt=([t,e,n,s])=>`cubic-bezier(${t}, ${e}, ${n}, ${s})`,En={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:xt([0,.65,.55,1]),circOut:xt([.55,0,1,.45]),backIn:xt([.31,.01,.66,-.59]),backOut:xt([.33,1.53,.69,.99])};function ci(t,e){if(t)return typeof t=="function"?ui()?ii(t,e):"ease-out":zs(t)?xt(t):Array.isArray(t)?t.map(n=>ci(n,e)||En.easeOut):En[t]}function Oo(t,e,n,{delay:s=0,duration:i=300,repeat:o=0,repeatType:r="loop",ease:a="easeOut",times:l}={},c=void 0){const u={[e]:n};l&&(u.offset=l);const h=ci(a,i);Array.isArray(h)&&(u.easing=h);const f={delay:s,duration:i,easing:Array.isArray(h)?"linear":h,fill:"both",iterations:o+1,direction:r==="reverse"?"alternate":"normal"};return c&&(f.pseudoElement=c),t.animate(u,f)}function hi(t){return typeof t=="function"&&"applyToOptions"in t}function No({type:t,...e}){return hi(t)&&ui()?t.applyToOptions(e):(e.duration??(e.duration=300),e.ease??(e.ease="easeOut"),e)}class Uo extends Je{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!e)return;const{element:n,name:s,keyframes:i,pseudoElement:o,allowFlatten:r=!1,finalKeyframe:a,onComplete:l}=e;this.isPseudoElement=!!o,this.allowFlatten=r,this.options=e,We(typeof e.type!="string");const c=No(e);this.animation=Oo(n,s,i,c,o),c.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!o){const u=Ze(i,this.options,a,this.speed);this.updateMotionValue?this.updateMotionValue(u):Fo(n,s,u),this.animation.cancel()}l?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:e}=this;e==="idle"||e==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){this.isPseudoElement||this.animation.commitStyles?.()}get duration(){const e=this.animation.effect?.getComputedTiming?.().duration||0;return W(Number(e))}get iterationDuration(){const{delay:e=0}=this.options||{};return this.duration+W(e)}get time(){return W(Number(this.animation.currentTime)||0)}set time(e){this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=X(e)}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(e){this.manualStartTime=this.animation.startTime=e}attachTimeline({timeline:e,observe:n}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,e&&Io()?(this.animation.timeline=e,K):n(this)}}const fi={anticipate:$s,backInOut:Ks,circInOut:Hs};function Wo(t){return t in fi}function Ko(t){typeof t.ease=="string"&&Wo(t.ease)&&(t.ease=fi[t.ease])}const se=10;class $o extends Uo{constructor(e){Ko(e),oi(e),super(e),e.startTime!==void 0&&(this.startTime=e.startTime),this.options=e}updateMotionValue(e){const{motionValue:n,onUpdate:s,onComplete:i,element:o,...r}=this.options;if(!n)return;if(e!==void 0){n.set(e);return}const a=new Qe({...r,autoplay:!1}),l=Math.max(se,I.now()-this.startTime),c=z(0,se,l-se);n.setWithVelocity(a.sample(Math.max(0,l-c)).value,a.sample(l).value,c),a.stop()}}const Rn=(t,e)=>e==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&(Q.test(t)||t==="0")&&!t.startsWith("url("));function Go(t){const e=t[0];if(t.length===1)return!0;for(let n=0;n<t.length;n++)if(t[n]!==e)return!0}function Ho(t,e,n,s){const i=t[0];if(i===null)return!1;if(e==="display"||e==="visibility")return!0;const o=t[t.length-1],r=Rn(i,e),a=Rn(o,e);return!r||!a?!1:Go(t)||(n==="spring"||hi(n))&&s}function Ve(t){t.duration=0,t.type="keyframes"}const _o=new Set(["opacity","clipPath","filter","transform"]),zo=Ke(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function Xo(t){const{motionValue:e,name:n,repeatDelay:s,repeatType:i,damping:o,type:r}=t;if(!(e?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:l,transformTemplate:c}=e.owner.getProps();return zo()&&n&&_o.has(n)&&(n!=="transform"||!c)&&!l&&!s&&i!=="mirror"&&o!==0&&r!=="inertia"}const Yo=40;class qo extends Je{constructor({autoplay:e=!0,delay:n=0,type:s="keyframes",repeat:i=0,repeatDelay:o=0,repeatType:r="loop",keyframes:a,name:l,motionValue:c,element:u,...h}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=I.now();const f={autoplay:e,delay:n,type:s,repeat:i,repeatDelay:o,repeatType:r,name:l,motionValue:c,element:u,...h},d=u?.KeyframeResolver||tn;this.keyframeResolver=new d(a,(m,p,x)=>this.onKeyframesResolved(m,p,f,!x),l,c,u),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(e,n,s,i){this.keyframeResolver=void 0;const{name:o,type:r,velocity:a,delay:l,isHandoff:c,onUpdate:u}=s;this.resolvedAt=I.now(),Ho(e,o,r,a)||((Y.instantAnimations||!l)&&u?.(Ze(e,s,n)),e[0]=e[e.length-1],Ve(s),s.repeat=0);const f={startTime:i?this.resolvedAt?this.resolvedAt-this.createdAt>Yo?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...s,keyframes:e},d=!c&&Xo(f),m=f.motionValue?.owner?.current,p=d?new $o({...f,element:m}):new Qe(f);p.finished.then(()=>{this.notifyFinished()}).catch(K),this.pendingTimeline&&(this.stopTimeline=p.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=p}get finished(){return this._animation?this.animation.finished:this._finished}then(e,n){return this.finished.finally(e).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),Lo()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(e){this.animation.time=e}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(e){this.animation.speed=e}get startTime(){return this.animation.startTime}attachTimeline(e){return this._animation?this.stopTimeline=this.animation.attachTimeline(e):this.pendingTimeline=e,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}function di(t,e,n,s=0,i=1){const o=Array.from(t).sort((c,u)=>c.sortNodePosition(u)).indexOf(e),r=t.size,a=(r-1)*s;return typeof n=="function"?n(o,r):i===1?o*s:a-o*s}const Zo=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function Jo(t){const e=Zo.exec(t);if(!e)return[,];const[,n,s,i]=e;return[`--${n??s}`,i]}function mi(t,e,n=1){const[s,i]=Jo(t);if(!s)return;const o=window.getComputedStyle(e).getPropertyValue(s);if(o){const r=o.trim();return Fs(r)?parseFloat(r):r}return _e(i)?mi(i,e,n+1):i}const Qo={type:"spring",stiffness:500,damping:25,restSpeed:10},ta=t=>({type:"spring",stiffness:550,damping:t===0?2*Math.sqrt(550):30,restSpeed:10}),ea={type:"keyframes",duration:.8},na={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},sa=(t,{keyframes:e})=>e.length>2?ea:yt.has(t)?t.startsWith("scale")?ta(e[1]):Qo:na,ia=t=>t!==null;function ra(t,{repeat:e,repeatType:n="loop"},s){const i=t.filter(ia),o=e&&n!=="loop"&&e%2===1?0:i.length-1;return i[o]}function en(t,e){return t?.[e]??t?.default??t}function oa({when:t,delay:e,delayChildren:n,staggerChildren:s,staggerDirection:i,repeat:o,repeatType:r,repeatDelay:a,from:l,elapsed:c,...u}){return!!Object.keys(u).length}const nn=(t,e,n,s={},i,o)=>r=>{const a=en(s,t)||{},l=a.delay||s.delay||0;let{elapsed:c=0}=s;c=c-X(l);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:e.getVelocity(),...a,delay:-c,onUpdate:f=>{e.set(f),a.onUpdate&&a.onUpdate(f)},onComplete:()=>{r(),a.onComplete&&a.onComplete()},name:t,motionValue:e,element:o?void 0:i};oa(a)||Object.assign(u,sa(t,u)),u.duration&&(u.duration=X(u.duration)),u.repeatDelay&&(u.repeatDelay=X(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let h=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(Ve(u),u.delay===0&&(h=!0)),(Y.instantAnimations||Y.skipAnimations)&&(h=!0,Ve(u),u.delay=0),u.allowFlatten=!a.type&&!a.ease,h&&!o&&e.get()!==void 0){const f=ra(u.keyframes,a);if(f!==void 0){V.update(()=>{u.onUpdate(f),u.onComplete()});return}}return a.isSync?new Qe(u):new qo(u)};function Ln(t){const e=[{},{}];return t?.values.forEach((n,s)=>{e[0][s]=n.get(),e[1][s]=n.getVelocity()}),e}function sn(t,e,n,s){if(typeof e=="function"){const[i,o]=Ln(s);e=e(n!==void 0?n:t.custom,i,o)}if(typeof e=="string"&&(e=t.variants&&t.variants[e]),typeof e=="function"){const[i,o]=Ln(s);e=e(n!==void 0?n:t.custom,i,o)}return e}function dt(t,e,n){const s=t.getProps();return sn(s,e,n!==void 0?n:s.custom,t)}const pi=new Set(["width","height","top","left","right","bottom",...gt]),kn=30,aa=t=>!isNaN(parseFloat(t));class la{constructor(e,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=s=>{const i=I.now();if(this.updatedAt!==i&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const o of this.dependents)o.dirty()},this.hasAnimated=!1,this.setCurrent(e),this.owner=n.owner}setCurrent(e){this.current=e,this.updatedAt=I.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=aa(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,n){this.events[e]||(this.events[e]=new $e);const s=this.events[e].add(n);return e==="change"?()=>{s(),V.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,n){this.passiveEffect=e,this.stopPassiveEffect=n}set(e){this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e)}setWithVelocity(e,n,s){this.set(n),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-s}jump(e,n=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(e){this.dependents||(this.dependents=new Set),this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const e=I.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>kn)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,kn);return js(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(e){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=e(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function mt(t,e){return new la(t,e)}const Ce=t=>Array.isArray(t);function ua(t,e,n){t.hasValue(e)?t.getValue(e).set(n):t.addValue(e,mt(n))}function ca(t){return Ce(t)?t[t.length-1]||0:t}function ha(t,e){const n=dt(t,e);let{transitionEnd:s={},transition:i={},...o}=n||{};o={...o,...s};for(const r in o){const a=ca(o[r]);ua(t,r,a)}}const F=t=>!!(t&&t.getVelocity);function fa(t){return!!(F(t)&&t.add)}function De(t,e){const n=t.getValue("willChange");if(fa(n))return n.add(e);if(!n&&Y.WillChange){const s=new Y.WillChange("auto");t.addValue("willChange",s),s.add(e)}}function rn(t){return t.replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`)}const da="framerAppearId",gi="data-"+rn(da);function yi(t){return t.props[gi]}function ma({protectedKeys:t,needsAnimating:e},n){const s=t.hasOwnProperty(n)&&e[n]!==!0;return e[n]=!1,s}function vi(t,e,{delay:n=0,transitionOverride:s,type:i}={}){let{transition:o=t.getDefaultTransition(),transitionEnd:r,...a}=e;s&&(o=s);const l=[],c=i&&t.animationState&&t.animationState.getState()[i];for(const u in a){const h=t.getValue(u,t.latestValues[u]??null),f=a[u];if(f===void 0||c&&ma(c,u))continue;const d={delay:n,...en(o||{},u)},m=h.get();if(m!==void 0&&!h.isAnimating&&!Array.isArray(f)&&f===m&&!d.velocity)continue;let p=!1;if(window.MotionHandoffAnimation){const g=yi(t);if(g){const T=window.MotionHandoffAnimation(g,u,V);T!==null&&(d.startTime=T,p=!0)}}De(t,u),h.start(nn(u,h,f,t.shouldReduceMotion&&pi.has(u)?{type:!1}:d,t,p));const x=h.animation;x&&l.push(x)}return r&&Promise.all(l).then(()=>{V.update(()=>{r&&ha(t,r)})}),l}function Me(t,e,n={}){const s=dt(t,e,n.type==="exit"?t.presenceContext?.custom:void 0);let{transition:i=t.getDefaultTransition()||{}}=s||{};n.transitionOverride&&(i=n.transitionOverride);const o=s?()=>Promise.all(vi(t,s,n)):()=>Promise.resolve(),r=t.variantChildren&&t.variantChildren.size?(l=0)=>{const{delayChildren:c=0,staggerChildren:u,staggerDirection:h}=i;return pa(t,e,l,c,u,h,n)}:()=>Promise.resolve(),{when:a}=i;if(a){const[l,c]=a==="beforeChildren"?[o,r]:[r,o];return l().then(()=>c())}else return Promise.all([o(),r(n.delay)])}function pa(t,e,n=0,s=0,i=0,o=1,r){const a=[];for(const l of t.variantChildren)l.notify("AnimationStart",e),a.push(Me(l,e,{...r,delay:n+(typeof s=="function"?0:s)+di(t.variantChildren,l,s,i,o)}).then(()=>l.notify("AnimationComplete",e)));return Promise.all(a)}function ga(t,e,n={}){t.notify("AnimationStart",e);let s;if(Array.isArray(e)){const i=e.map(o=>Me(t,o,n));s=Promise.all(i)}else if(typeof e=="string")s=Me(t,e,n);else{const i=typeof e=="function"?dt(t,e,n.custom):e;s=Promise.all(vi(t,i,n))}return s.then(()=>{t.notify("AnimationComplete",e)})}const ya={test:t=>t==="auto",parse:t=>t},xi=t=>e=>e.test(t),Ti=[pt,y,_,q,$r,Kr,ya],Fn=t=>Ti.find(xi(t));function va(t){return typeof t=="number"?t===0:t!==null?t==="none"||t==="0"||Bs(t):!0}const xa=new Set(["brightness","contrast","saturate","opacity"]);function Ta(t){const[e,n]=t.slice(0,-1).split("(");if(e==="drop-shadow")return t;const[s]=n.match(ze)||[];if(!s)return t;const i=n.replace(s,"");let o=xa.has(e)?1:0;return s!==n&&(o*=100),e+"("+o+i+")"}const Pa=/\b([a-z-]*)\(.*?\)/gu,Ee={...Q,getAnimatableNone:t=>{const e=t.match(Pa);return e?e.map(Ta).join(" "):t}},In={...pt,transform:Math.round},Sa={rotate:q,rotateX:q,rotateY:q,rotateZ:q,scale:It,scaleX:It,scaleY:It,scaleZ:It,skew:q,skewX:q,skewY:q,distance:y,translateX:y,translateY:y,translateZ:y,x:y,y,z:y,perspective:y,transformPerspective:y,opacity:Vt,originX:Pn,originY:Pn,originZ:y},on={borderWidth:y,borderTopWidth:y,borderRightWidth:y,borderBottomWidth:y,borderLeftWidth:y,borderRadius:y,radius:y,borderTopLeftRadius:y,borderTopRightRadius:y,borderBottomRightRadius:y,borderBottomLeftRadius:y,width:y,maxWidth:y,height:y,maxHeight:y,top:y,right:y,bottom:y,left:y,inset:y,insetBlock:y,insetBlockStart:y,insetBlockEnd:y,insetInline:y,insetInlineStart:y,insetInlineEnd:y,padding:y,paddingTop:y,paddingRight:y,paddingBottom:y,paddingLeft:y,paddingBlock:y,paddingBlockStart:y,paddingBlockEnd:y,paddingInline:y,paddingInlineStart:y,paddingInlineEnd:y,margin:y,marginTop:y,marginRight:y,marginBottom:y,marginLeft:y,marginBlock:y,marginBlockStart:y,marginBlockEnd:y,marginInline:y,marginInlineStart:y,marginInlineEnd:y,backgroundPositionX:y,backgroundPositionY:y,...Sa,zIndex:In,fillOpacity:Vt,strokeOpacity:Vt,numOctaves:In},ba={...on,color:M,backgroundColor:M,outlineColor:M,fill:M,stroke:M,borderColor:M,borderTopColor:M,borderRightColor:M,borderBottomColor:M,borderLeftColor:M,filter:Ee,WebkitFilter:Ee},Pi=t=>ba[t];function Si(t,e){let n=Pi(t);return n!==Ee&&(n=Q),n.getAnimatableNone?n.getAnimatableNone(e):void 0}const wa=new Set(["auto","none","0"]);function Aa(t,e,n){let s=0,i;for(;s<t.length&&!i;){const o=t[s];typeof o=="string"&&!wa.has(o)&&Ct(o).values.length&&(i=t[s]),s++}if(i&&n)for(const o of e)t[o]=Si(n,i)}class Va extends tn{constructor(e,n,s,i,o){super(e,n,s,i,o,!0)}readKeyframes(){const{unresolvedKeyframes:e,element:n,name:s}=this;if(!n||!n.current)return;super.readKeyframes();for(let u=0;u<e.length;u++){let h=e[u];if(typeof h=="string"&&(h=h.trim(),_e(h))){const f=mi(h,n.current);f!==void 0&&(e[u]=f),u===e.length-1&&(this.finalKeyframe=h)}}if(this.resolveNoneKeyframes(),!pi.has(s)||e.length!==2)return;const[i,o]=e,r=Fn(i),a=Fn(o),l=Tn(i),c=Tn(o);if(l!==c&&Z[s]){this.needsMeasurement=!0;return}if(r!==a)if(Mn(r)&&Mn(a))for(let u=0;u<e.length;u++){const h=e[u];typeof h=="string"&&(e[u]=parseFloat(h))}else Z[s]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:e,name:n}=this,s=[];for(let i=0;i<e.length;i++)(e[i]===null||va(e[i]))&&s.push(i);s.length&&Aa(e,s,n)}measureInitialState(){const{element:e,unresolvedKeyframes:n,name:s}=this;if(!e||!e.current)return;s==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=Z[s](e.measureViewportBox(),window.getComputedStyle(e.current)),n[0]=this.measuredOrigin;const i=n[n.length-1];i!==void 0&&e.getValue(s,i).jump(i,!1)}measureEndState(){const{element:e,name:n,unresolvedKeyframes:s}=this;if(!e||!e.current)return;const i=e.getValue(n);i&&i.jump(this.measuredOrigin,!1);const o=s.length-1,r=s[o];s[o]=Z[n](e.measureViewportBox(),window.getComputedStyle(e.current)),r!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=r),this.removedTransforms?.length&&this.removedTransforms.forEach(([a,l])=>{e.getValue(a).set(l)}),this.resolveNoneKeyframes()}}function Ca(t,e,n){if(t==null)return[];if(t instanceof EventTarget)return[t];if(typeof t=="string"){let s=document;const i=n?.[t]??s.querySelectorAll(t);return i?Array.from(i):[]}return Array.from(t).filter(s=>s!=null)}const bi=(t,e)=>e&&typeof t=="number"?e.transform(t):t;function Da(t){return Is(t)&&"offsetHeight"in t}const{schedule:an}=Xs(queueMicrotask,!1),G={x:!1,y:!1};function wi(){return G.x||G.y}function Ma(t){return t==="x"||t==="y"?G[t]?null:(G[t]=!0,()=>{G[t]=!1}):G.x||G.y?null:(G.x=G.y=!0,()=>{G.x=G.y=!1})}function Ai(t,e){const n=Ca(t),s=new AbortController,i={passive:!0,...e,signal:s.signal};return[n,i,()=>s.abort()]}function Bn(t){return!(t.pointerType==="touch"||wi())}function Ea(t,e,n={}){const[s,i,o]=Ai(t,n),r=a=>{if(!Bn(a))return;const{target:l}=a,c=e(l,a);if(typeof c!="function"||!l)return;const u=h=>{Bn(h)&&(c(h),l.removeEventListener("pointerleave",u))};l.addEventListener("pointerleave",u,i)};return s.forEach(a=>{a.addEventListener("pointerenter",r,i)}),o}const Vi=(t,e)=>e?t===e?!0:Vi(t,e.parentElement):!1,ln=t=>t.pointerType==="mouse"?typeof t.button!="number"||t.button<=0:t.isPrimary!==!1,Ra=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function Ci(t){return Ra.has(t.tagName)||t.isContentEditable===!0}const Ot=new WeakSet;function jn(t){return e=>{e.key==="Enter"&&t(e)}}function ie(t,e){t.dispatchEvent(new PointerEvent("pointer"+e,{isPrimary:!0,bubbles:!0}))}const La=(t,e)=>{const n=t.currentTarget;if(!n)return;const s=jn(()=>{if(Ot.has(n))return;ie(n,"down");const i=jn(()=>{ie(n,"up")}),o=()=>ie(n,"cancel");n.addEventListener("keyup",i,e),n.addEventListener("blur",o,e)});n.addEventListener("keydown",s,e),n.addEventListener("blur",()=>n.removeEventListener("keydown",s),e)};function On(t){return ln(t)&&!wi()}function ka(t,e,n={}){const[s,i,o]=Ai(t,n),r=a=>{const l=a.currentTarget;if(!On(a))return;Ot.add(l);const c=e(l,a),u=(d,m)=>{window.removeEventListener("pointerup",h),window.removeEventListener("pointercancel",f),Ot.has(l)&&Ot.delete(l),On(d)&&typeof c=="function"&&c(d,{success:m})},h=d=>{u(d,l===window||l===document||n.useGlobalTarget||Vi(l,d.target))},f=d=>{u(d,!1)};window.addEventListener("pointerup",h,i),window.addEventListener("pointercancel",f,i)};return s.forEach(a=>{(n.useGlobalTarget?window:a).addEventListener("pointerdown",r,i),Da(a)&&(a.addEventListener("focus",c=>La(c,i)),!Ci(a)&&!a.hasAttribute("tabindex")&&(a.tabIndex=0))}),o}function Di(t){return Is(t)&&"ownerSVGElement"in t}function Fa(t){return Di(t)&&t.tagName==="svg"}const Ia=[...Ti,M,Q],Ba=t=>Ia.find(xi(t)),Nn=()=>({translate:0,scale:1,origin:0,originPoint:0}),ct=()=>({x:Nn(),y:Nn()}),Un=()=>({min:0,max:0}),R=()=>({x:Un(),y:Un()}),Re={current:null},Mi={current:!1},ja=typeof window<"u";function Oa(){if(Mi.current=!0,!!ja)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),e=()=>Re.current=t.matches;t.addEventListener("change",e),e()}else Re.current=!1}const Na=new WeakMap;function Xt(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}function Dt(t){return typeof t=="string"||Array.isArray(t)}const un=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],cn=["initial",...un];function Yt(t){return Xt(t.animate)||cn.some(e=>Dt(t[e]))}function Ei(t){return!!(Yt(t)||t.variants)}function Ua(t,e,n){for(const s in e){const i=e[s],o=n[s];if(F(i))t.addValue(s,i);else if(F(o))t.addValue(s,mt(i,{owner:t}));else if(o!==i)if(t.hasValue(s)){const r=t.getValue(s);r.liveStyle===!0?r.jump(i):r.hasAnimated||r.set(i)}else{const r=t.getStaticValue(s);t.addValue(s,mt(r!==void 0?r:i,{owner:t}))}}for(const s in n)e[s]===void 0&&t.removeValue(s);return e}const Wn=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let Gt={};function Ri(t){Gt=t}function Wa(){return Gt}class Ka{scrapeMotionValuesFromProps(e,n,s){return{}}constructor({parent:e,props:n,presenceContext:s,reducedMotionConfig:i,blockInitialAnimation:o,visualState:r},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=tn,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const f=I.now();this.renderScheduledAt<f&&(this.renderScheduledAt=f,V.render(this.render,!1,!0))};const{latestValues:l,renderState:c}=r;this.latestValues=l,this.baseTarget={...l},this.initialValues=n.initial?{...l}:{},this.renderState=c,this.parent=e,this.props=n,this.presenceContext=s,this.depth=e?e.depth+1:0,this.reducedMotionConfig=i,this.options=a,this.blockInitialAnimation=!!o,this.isControllingVariants=Yt(n),this.isVariantNode=Ei(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);const{willChange:u,...h}=this.scrapeMotionValuesFromProps(n,{},this);for(const f in h){const d=h[f];l[f]!==void 0&&F(d)&&d.set(l[f])}}mount(e){this.current=e,Na.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((n,s)=>this.bindToMotionValue(s,n)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(Mi.current||Oa(),this.shouldReduceMotion=Re.current),this.parent?.addChild(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),J(this.notifyUpdate),J(this.render),this.valueSubscriptions.forEach(e=>e()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const e in this.events)this.events[e].clear();for(const e in this.features){const n=this.features[e];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(e){this.children.add(e),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(e)}removeChild(e){this.children.delete(e),this.enteringChildren&&this.enteringChildren.delete(e)}bindToMotionValue(e,n){this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)();const s=yt.has(e);s&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",r=>{this.latestValues[e]=r,this.props.onUpdate&&V.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let o;typeof window<"u"&&window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,e,n)),this.valueSubscriptions.set(e,()=>{i(),o&&o(),n.owner&&n.stop()})}sortNodePosition(e){return!this.current||!this.sortInstanceNodePosition||this.type!==e.type?0:this.sortInstanceNodePosition(this.current,e.current)}updateFeatures(){let e="animation";for(e in Gt){const n=Gt[e];if(!n)continue;const{isEnabled:s,Feature:i}=n;if(!this.features[e]&&i&&s(this.props)&&(this.features[e]=new i(this)),this.features[e]){const o=this.features[e];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):R()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,n){this.latestValues[e]=n}update(e,n){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let s=0;s<Wn.length;s++){const i=Wn[s];this.propEventSubscriptions[i]&&(this.propEventSubscriptions[i](),delete this.propEventSubscriptions[i]);const o="on"+i,r=e[o];r&&(this.propEventSubscriptions[i]=this.on(i,r))}this.prevMotionValues=Ua(this,this.scrapeMotionValuesFromProps(e,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(e){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(e),()=>n.variantChildren.delete(e)}addValue(e,n){const s=this.values.get(e);n!==s&&(s&&this.removeValue(e),this.bindToMotionValue(e,n),this.values.set(e,n),this.latestValues[e]=n.get())}removeValue(e){this.values.delete(e);const n=this.valueSubscriptions.get(e);n&&(n(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,n){if(this.props.values&&this.props.values[e])return this.props.values[e];let s=this.values.get(e);return s===void 0&&n!==void 0&&(s=mt(n===null?void 0:n,{owner:this}),this.addValue(e,s)),s}readValue(e,n){let s=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return s!=null&&(typeof s=="string"&&(Fs(s)||Bs(s))?s=parseFloat(s):!Ba(s)&&Q.test(n)&&(s=Si(e,n)),this.setBaseTarget(e,F(s)?s.get():s)),F(s)?s.get():s}setBaseTarget(e,n){this.baseTarget[e]=n}getBaseTarget(e){const{initial:n}=this.props;let s;if(typeof n=="string"||typeof n=="object"){const o=sn(this.props,n,this.presenceContext?.custom);o&&(s=o[e])}if(n&&s!==void 0)return s;const i=this.getBaseTargetFromProps(this.props,e);return i!==void 0&&!F(i)?i:this.initialValues[e]!==void 0&&s===void 0?void 0:this.baseTarget[e]}on(e,n){return this.events[e]||(this.events[e]=new $e),this.events[e].add(n)}notify(e,...n){this.events[e]&&this.events[e].notify(...n)}scheduleRenderMicrotask(){an.render(this.render)}}class Li extends Ka{constructor(){super(...arguments),this.KeyframeResolver=Va}sortInstanceNodePosition(e,n){return e.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(e,n){const s=e.style;return s?s[n]:void 0}removeValueFromRenderState(e,{vars:n,style:s}){delete n[e],delete s[e]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:e}=this.props;F(e)&&(this.childSubscription=e.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}class tt{constructor(e){this.isMounted=!1,this.node=e}update(){}}function ki({top:t,left:e,right:n,bottom:s}){return{x:{min:e,max:n},y:{min:t,max:s}}}function $a({x:t,y:e}){return{top:e.min,right:t.max,bottom:e.max,left:t.min}}function Ga(t,e){if(!e)return t;const n=e({x:t.left,y:t.top}),s=e({x:t.right,y:t.bottom});return{top:n.y,left:n.x,bottom:s.y,right:s.x}}function re(t){return t===void 0||t===1}function Le({scale:t,scaleX:e,scaleY:n}){return!re(t)||!re(e)||!re(n)}function st(t){return Le(t)||Fi(t)||t.z||t.rotate||t.rotateX||t.rotateY||t.skewX||t.skewY}function Fi(t){return Kn(t.x)||Kn(t.y)}function Kn(t){return t&&t!=="0%"}function Ht(t,e,n){const s=t-n,i=e*s;return n+i}function $n(t,e,n,s,i){return i!==void 0&&(t=Ht(t,i,s)),Ht(t,n,s)+e}function ke(t,e=0,n=1,s,i){t.min=$n(t.min,e,n,s,i),t.max=$n(t.max,e,n,s,i)}function Ii(t,{x:e,y:n}){ke(t.x,e.translate,e.scale,e.originPoint),ke(t.y,n.translate,n.scale,n.originPoint)}const Gn=.999999999999,Hn=1.0000000000001;function Ha(t,e,n,s=!1){const i=n.length;if(!i)return;e.x=e.y=1;let o,r;for(let a=0;a<i;a++){o=n[a],r=o.projectionDelta;const{visualElement:l}=o.options;l&&l.props.style&&l.props.style.display==="contents"||(s&&o.options.layoutScroll&&o.scroll&&o!==o.root&&ft(t,{x:-o.scroll.offset.x,y:-o.scroll.offset.y}),r&&(e.x*=r.x.scale,e.y*=r.y.scale,Ii(t,r)),s&&st(o.latestValues)&&ft(t,o.latestValues))}e.x<Hn&&e.x>Gn&&(e.x=1),e.y<Hn&&e.y>Gn&&(e.y=1)}function ht(t,e){t.min=t.min+e,t.max=t.max+e}function _n(t,e,n,s,i=.5){const o=C(t.min,t.max,i);ke(t,e,n,o,s)}function ft(t,e){_n(t.x,e.x,e.scaleX,e.scale,e.originX),_n(t.y,e.y,e.scaleY,e.scale,e.originY)}function Bi(t,e){return ki(Ga(t.getBoundingClientRect(),e))}function _a(t,e,n){const s=Bi(t,n),{scroll:i}=e;return i&&(ht(s.x,i.offset.x),ht(s.y,i.offset.y)),s}const za={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Xa=gt.length;function Ya(t,e,n){let s="",i=!0;for(let o=0;o<Xa;o++){const r=gt[o],a=t[r];if(a===void 0)continue;let l=!0;if(typeof a=="number")l=a===(r.startsWith("scale")?1:0);else{const c=parseFloat(a);l=r.startsWith("scale")?c===1:c===0}if(!l||n){const c=bi(a,on[r]);if(!l){i=!1;const u=za[r]||r;s+=`${u}(${c}) `}n&&(e[r]=c)}}return s=s.trim(),n?s=n(e,i?"":s):i&&(s="none"),s}function hn(t,e,n){const{style:s,vars:i,transformOrigin:o}=t;let r=!1,a=!1;for(const l in e){const c=e[l];if(yt.has(l)){r=!0;continue}else if(qs(l)){i[l]=c;continue}else{const u=bi(c,on[l]);l.startsWith("origin")?(a=!0,o[l]=u):s[l]=u}}if(e.transform||(r||n?s.transform=Ya(e,t.transform,n):s.transform&&(s.transform="none")),a){const{originX:l="50%",originY:c="50%",originZ:u=0}=o;s.transformOrigin=`${l} ${c} ${u}`}}function ji(t,{style:e,vars:n},s,i){const o=t.style;let r;for(r in e)o[r]=e[r];i?.applyProjectionStyles(o,s);for(r in n)o.setProperty(r,n[r])}function zn(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}const vt={correct:(t,e)=>{if(!e.target)return t;if(typeof t=="string")if(y.test(t))t=parseFloat(t);else return t;const n=zn(t,e.target.x),s=zn(t,e.target.y);return`${n}% ${s}%`}},qa={correct:(t,{treeScale:e,projectionDelta:n})=>{const s=t,i=Q.parse(t);if(i.length>5)return s;const o=Q.createTransformer(t),r=typeof i[0]!="number"?1:0,a=n.x.scale*e.x,l=n.y.scale*e.y;i[0+r]/=a,i[1+r]/=l;const c=C(a,l,.5);return typeof i[2+r]=="number"&&(i[2+r]/=c),typeof i[3+r]=="number"&&(i[3+r]/=c),o(i)}},Fe={borderRadius:{...vt,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:vt,borderTopRightRadius:vt,borderBottomLeftRadius:vt,borderBottomRightRadius:vt,boxShadow:qa};function Oi(t,{layout:e,layoutId:n}){return yt.has(t)||t.startsWith("origin")||(e||n!==void 0)&&(!!Fe[t]||t==="opacity")}function fn(t,e,n){const s=t.style,i=e?.style,o={};if(!s)return o;for(const r in s)(F(s[r])||i&&F(i[r])||Oi(r,t)||n?.getValue(r)?.liveStyle!==void 0)&&(o[r]=s[r]);return o}function Za(t){return window.getComputedStyle(t)}class Ja extends Li{constructor(){super(...arguments),this.type="html",this.renderInstance=ji}readValueFromInstance(e,n){if(yt.has(n))return this.projection?.isProjecting?Pe(n):Co(e,n);{const s=Za(e),i=(qs(n)?s.getPropertyValue(n):s[n])||0;return typeof i=="string"?i.trim():i}}measureInstanceViewportBox(e,{transformPagePoint:n}){return Bi(e,n)}build(e,n,s){hn(e,n,s.transformTemplate)}scrapeMotionValuesFromProps(e,n,s){return fn(e,n,s)}}const Qa={offset:"stroke-dashoffset",array:"stroke-dasharray"},tl={offset:"strokeDashoffset",array:"strokeDasharray"};function el(t,e,n=1,s=0,i=!0){t.pathLength=1;const o=i?Qa:tl;t[o.offset]=`${-s}`,t[o.array]=`${e} ${n}`}const nl=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function Ni(t,{attrX:e,attrY:n,attrScale:s,pathLength:i,pathSpacing:o=1,pathOffset:r=0,...a},l,c,u){if(hn(t,a,c),l){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:h,style:f}=t;h.transform&&(f.transform=h.transform,delete h.transform),(f.transform||h.transformOrigin)&&(f.transformOrigin=h.transformOrigin??"50% 50%",delete h.transformOrigin),f.transform&&(f.transformBox=u?.transformBox??"fill-box",delete h.transformBox);for(const d of nl)h[d]!==void 0&&(f[d]=h[d],delete h[d]);e!==void 0&&(h.x=e),n!==void 0&&(h.y=n),s!==void 0&&(h.scale=s),i!==void 0&&el(h,i,o,r,!1)}const Ui=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),Wi=t=>typeof t=="string"&&t.toLowerCase()==="svg";function sl(t,e,n,s){ji(t,e,void 0,s);for(const i in e.attrs)t.setAttribute(Ui.has(i)?i:rn(i),e.attrs[i])}function Ki(t,e,n){const s=fn(t,e,n);for(const i in t)if(F(t[i])||F(e[i])){const o=gt.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;s[o]=t[i]}return s}class il extends Li{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=R}getBaseTargetFromProps(e,n){return e[n]}readValueFromInstance(e,n){if(yt.has(n)){const s=Pi(n);return s&&s.default||0}return n=Ui.has(n)?n:rn(n),e.getAttribute(n)}scrapeMotionValuesFromProps(e,n,s){return Ki(e,n,s)}build(e,n,s){Ni(e,n,this.isSVGTag,s.transformTemplate,s.style)}renderInstance(e,n,s,i){sl(e,n,s,i)}mount(e){this.isSVGTag=Wi(e.tagName),super.mount(e)}}const rl=cn.length;function $i(t){if(!t)return;if(!t.isControllingVariants){const n=t.parent?$i(t.parent)||{}:{};return t.props.initial!==void 0&&(n.initial=t.props.initial),n}const e={};for(let n=0;n<rl;n++){const s=cn[n],i=t.props[s];(Dt(i)||i===!1)&&(e[s]=i)}return e}function Gi(t,e){if(!Array.isArray(e))return!1;const n=e.length;if(n!==t.length)return!1;for(let s=0;s<n;s++)if(e[s]!==t[s])return!1;return!0}const ol=[...un].reverse(),al=un.length;function ll(t){return e=>Promise.all(e.map(({animation:n,options:s})=>ga(t,n,s)))}function ul(t){let e=ll(t),n=Xn(),s=!0;const i=l=>(c,u)=>{const h=dt(t,u,l==="exit"?t.presenceContext?.custom:void 0);if(h){const{transition:f,transitionEnd:d,...m}=h;c={...c,...m,...d}}return c};function o(l){e=l(t)}function r(l){const{props:c}=t,u=$i(t.parent)||{},h=[],f=new Set;let d={},m=1/0;for(let x=0;x<al;x++){const g=ol[x],T=n[g],v=c[g]!==void 0?c[g]:u[g],w=Dt(v),S=g===l?T.isActive:null;S===!1&&(m=x);let A=v===u[g]&&v!==c[g]&&w;if(A&&s&&t.manuallyAnimateOnMount&&(A=!1),T.protectedKeys={...d},!T.isActive&&S===null||!v&&!T.prevProp||Xt(v)||typeof v=="boolean")continue;const E=cl(T.prevProp,v);let b=E||g===l&&T.isActive&&!A&&w||x>m&&w,j=!1;const O=Array.isArray(v)?v:[v];let at=O.reduce(i(g),{});S===!1&&(at={});const{prevResolvedValues:pn={}}=T,pr={...pn,...at},gn=L=>{b=!0,f.has(L)&&(j=!0,f.delete(L)),T.needsAnimating[L]=!0;const N=t.getValue(L);N&&(N.liveStyle=!1)};for(const L in pr){const N=at[L],et=pn[L];if(d.hasOwnProperty(L))continue;let lt=!1;Ce(N)&&Ce(et)?lt=!Gi(N,et):lt=N!==et,lt?N!=null?gn(L):f.add(L):N!==void 0&&f.has(L)?gn(L):T.protectedKeys[L]=!0}T.prevProp=v,T.prevResolvedValues=at,T.isActive&&(d={...d,...at}),s&&t.blockInitialAnimation&&(b=!1);const yn=A&&E;b&&(!yn||j)&&h.push(...O.map(L=>{const N={type:g};if(typeof L=="string"&&s&&!yn&&t.manuallyAnimateOnMount&&t.parent){const{parent:et}=t,lt=dt(et,L);if(et.enteringChildren&&lt){const{delayChildren:gr}=lt.transition||{};N.delay=di(et.enteringChildren,t,gr)}}return{animation:L,options:N}}))}if(f.size){const x={};if(typeof c.initial!="boolean"){const g=dt(t,Array.isArray(c.initial)?c.initial[0]:c.initial);g&&g.transition&&(x.transition=g.transition)}f.forEach(g=>{const T=t.getBaseTarget(g),v=t.getValue(g);v&&(v.liveStyle=!0),x[g]=T??null}),h.push({animation:x})}let p=!!h.length;return s&&(c.initial===!1||c.initial===c.animate)&&!t.manuallyAnimateOnMount&&(p=!1),s=!1,p?e(h):Promise.resolve()}function a(l,c){if(n[l].isActive===c)return Promise.resolve();t.variantChildren?.forEach(h=>h.animationState?.setActive(l,c)),n[l].isActive=c;const u=r(l);for(const h in n)n[h].protectedKeys={};return u}return{animateChanges:r,setActive:a,setAnimateFunction:o,getState:()=>n,reset:()=>{n=Xn()}}}function cl(t,e){return typeof e=="string"?e!==t:Array.isArray(e)?!Gi(e,t):!1}function nt(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Xn(){return{animate:nt(!0),whileInView:nt(),whileHover:nt(),whileTap:nt(),whileDrag:nt(),whileFocus:nt(),exit:nt()}}function Yn(t,e){t.min=e.min,t.max=e.max}function $(t,e){Yn(t.x,e.x),Yn(t.y,e.y)}function qn(t,e){t.translate=e.translate,t.scale=e.scale,t.originPoint=e.originPoint,t.origin=e.origin}const Hi=1e-4,hl=1-Hi,fl=1+Hi,_i=.01,dl=0-_i,ml=0+_i;function B(t){return t.max-t.min}function pl(t,e,n){return Math.abs(t-e)<=n}function Zn(t,e,n,s=.5){t.origin=s,t.originPoint=C(e.min,e.max,t.origin),t.scale=B(n)/B(e),t.translate=C(n.min,n.max,t.origin)-t.originPoint,(t.scale>=hl&&t.scale<=fl||isNaN(t.scale))&&(t.scale=1),(t.translate>=dl&&t.translate<=ml||isNaN(t.translate))&&(t.translate=0)}function bt(t,e,n,s){Zn(t.x,e.x,n.x,s?s.originX:void 0),Zn(t.y,e.y,n.y,s?s.originY:void 0)}function Jn(t,e,n){t.min=n.min+e.min,t.max=t.min+B(e)}function gl(t,e,n){Jn(t.x,e.x,n.x),Jn(t.y,e.y,n.y)}function Qn(t,e,n){t.min=e.min-n.min,t.max=t.min+B(e)}function _t(t,e,n){Qn(t.x,e.x,n.x),Qn(t.y,e.y,n.y)}function ts(t,e,n,s,i){return t-=e,t=Ht(t,1/n,s),i!==void 0&&(t=Ht(t,1/i,s)),t}function yl(t,e=0,n=1,s=.5,i,o=t,r=t){if(_.test(e)&&(e=parseFloat(e),e=C(r.min,r.max,e/100)-r.min),typeof e!="number")return;let a=C(o.min,o.max,s);t===o&&(a-=e),t.min=ts(t.min,e,n,a,i),t.max=ts(t.max,e,n,a,i)}function es(t,e,[n,s,i],o,r){yl(t,e[n],e[s],e[i],e.scale,o,r)}const vl=["x","scaleX","originX"],xl=["y","scaleY","originY"];function ns(t,e,n,s){es(t.x,e,vl,n?n.x:void 0,s?s.x:void 0),es(t.y,e,xl,n?n.y:void 0,s?s.y:void 0)}function ss(t){return t.translate===0&&t.scale===1}function zi(t){return ss(t.x)&&ss(t.y)}function is(t,e){return t.min===e.min&&t.max===e.max}function Tl(t,e){return is(t.x,e.x)&&is(t.y,e.y)}function rs(t,e){return Math.round(t.min)===Math.round(e.min)&&Math.round(t.max)===Math.round(e.max)}function Xi(t,e){return rs(t.x,e.x)&&rs(t.y,e.y)}function os(t){return B(t.x)/B(t.y)}function as(t,e){return t.translate===e.translate&&t.scale===e.scale&&t.originPoint===e.originPoint}function U(t){return[t("x"),t("y")]}function Pl(t,e,n){let s="";const i=t.x.translate/e.x,o=t.y.translate/e.y,r=n?.z||0;if((i||o||r)&&(s=`translate3d(${i}px, ${o}px, ${r}px) `),(e.x!==1||e.y!==1)&&(s+=`scale(${1/e.x}, ${1/e.y}) `),n){const{transformPerspective:c,rotate:u,rotateX:h,rotateY:f,skewX:d,skewY:m}=n;c&&(s=`perspective(${c}px) ${s}`),u&&(s+=`rotate(${u}deg) `),h&&(s+=`rotateX(${h}deg) `),f&&(s+=`rotateY(${f}deg) `),d&&(s+=`skewX(${d}deg) `),m&&(s+=`skewY(${m}deg) `)}const a=t.x.scale*e.x,l=t.y.scale*e.y;return(a!==1||l!==1)&&(s+=`scale(${a}, ${l})`),s||"none"}const Yi=["TopLeft","TopRight","BottomLeft","BottomRight"],Sl=Yi.length,ls=t=>typeof t=="string"?parseFloat(t):t,us=t=>typeof t=="number"||y.test(t);function bl(t,e,n,s,i,o){i?(t.opacity=C(0,n.opacity??1,wl(s)),t.opacityExit=C(e.opacity??1,0,Al(s))):o&&(t.opacity=C(e.opacity??1,n.opacity??1,s));for(let r=0;r<Sl;r++){const a=`border${Yi[r]}Radius`;let l=cs(e,a),c=cs(n,a);if(l===void 0&&c===void 0)continue;l||(l=0),c||(c=0),l===0||c===0||us(l)===us(c)?(t[a]=Math.max(C(ls(l),ls(c),s),0),(_.test(c)||_.test(l))&&(t[a]+="%")):t[a]=c}(e.rotate||n.rotate)&&(t.rotate=C(e.rotate||0,n.rotate||0,s))}function cs(t,e){return t[e]!==void 0?t[e]:t.borderRadius}const wl=qi(0,.5,Gs),Al=qi(.5,.95,K);function qi(t,e,n){return s=>s<t?0:s>e?1:n(At(t,e,s))}function Vl(t,e,n){const s=F(t)?t:mt(t);return s.start(nn("",s,e,n)),s.animation}function Mt(t,e,n,s={passive:!0}){return t.addEventListener(e,n,s),()=>t.removeEventListener(e,n)}const Cl=(t,e)=>t.depth-e.depth;class Dl{constructor(){this.children=[],this.isDirty=!1}add(e){Ne(this.children,e),this.isDirty=!0}remove(e){Ue(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(Cl),this.isDirty=!1,this.children.forEach(e)}}function Ml(t,e){const n=I.now(),s=({timestamp:i})=>{const o=i-n;o>=e&&(J(s),t(o-e))};return V.setup(s,!0),()=>J(s)}function Nt(t){return F(t)?t.get():t}class El{constructor(){this.members=[]}add(e){Ne(this.members,e),e.scheduleRender()}remove(e){if(Ue(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(e){const n=this.members.findIndex(i=>e===i);if(n===0)return!1;let s;for(let i=n;i>=0;i--){const o=this.members[i];if(o.isPresent!==!1){s=o;break}}return s?(this.promote(s),!0):!1}promote(e,n){const s=this.lead;if(e!==s&&(this.prevLead=s,this.lead=e,e.show(),s)){s.instance&&s.scheduleRender(),e.scheduleRender(),e.resumeFrom=s,n&&(e.resumeFrom.preserveOpacity=!0),s.snapshot&&(e.snapshot=s.snapshot,e.snapshot.latestValues=s.animationValues||s.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:i}=e.options;i===!1&&s.hide()}}exitAnimationComplete(){this.members.forEach(e=>{const{options:n,resumingFrom:s}=e;n.onExitComplete&&n.onExitComplete(),s&&s.options.onExitComplete&&s.options.onExitComplete()})}scheduleRender(){this.members.forEach(e=>{e.instance&&e.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}const Ut={hasAnimatedSinceResize:!0,hasEverUpdated:!1},oe=["","X","Y","Z"],Rl=1e3;let Ll=0;function ae(t,e,n,s){const{latestValues:i}=e;i[t]&&(n[t]=i[t],e.setStaticValue(t,0),s&&(s[t]=0))}function Zi(t){if(t.hasCheckedOptimisedAppear=!0,t.root===t)return;const{visualElement:e}=t.options;if(!e)return;const n=yi(e);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:i,layoutId:o}=t.options;window.MotionCancelOptimisedAnimation(n,"transform",V,!(i||o))}const{parent:s}=t;s&&!s.hasCheckedOptimisedAppear&&Zi(s)}function Ji({attachResizeListener:t,defaultParent:e,measureScroll:n,checkIsScrollRoot:s,resetTransform:i}){return class{constructor(r={},a=e?.()){this.id=Ll++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(Il),this.nodes.forEach(Nl),this.nodes.forEach(Ul),this.nodes.forEach(Bl)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=r,this.root=a?a.root||a:this,this.path=a?[...a.path,a]:[],this.parent=a,this.depth=a?a.depth+1:0;for(let l=0;l<this.path.length;l++)this.path[l].shouldResetTransform=!0;this.root===this&&(this.nodes=new Dl)}addEventListener(r,a){return this.eventHandlers.has(r)||this.eventHandlers.set(r,new $e),this.eventHandlers.get(r).add(a)}notifyListeners(r,...a){const l=this.eventHandlers.get(r);l&&l.notify(...a)}hasListeners(r){return this.eventHandlers.has(r)}mount(r){if(this.instance)return;this.isSVG=Di(r)&&!Fa(r),this.instance=r;const{layoutId:a,layout:l,visualElement:c}=this.options;if(c&&!c.current&&c.mount(r),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(l||a)&&(this.isLayoutDirty=!0),t){let u,h=0;const f=()=>this.root.updateBlockedByResize=!1;V.read(()=>{h=window.innerWidth}),t(r,()=>{const d=window.innerWidth;d!==h&&(h=d,this.root.updateBlockedByResize=!0,u&&u(),u=Ml(f,250),Ut.hasAnimatedSinceResize&&(Ut.hasAnimatedSinceResize=!1,this.nodes.forEach(ds)))})}a&&this.root.registerSharedNode(a,this),this.options.animate!==!1&&c&&(a||l)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:h,hasRelativeLayoutChanged:f,layout:d})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const m=this.options.transition||c.getDefaultTransition()||Hl,{onLayoutAnimationStart:p,onLayoutAnimationComplete:x}=c.getProps(),g=!this.targetLayout||!Xi(this.targetLayout,d),T=!h&&f;if(this.options.layoutRoot||this.resumeFrom||T||h&&(g||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const v={...en(m,"layout"),onPlay:p,onComplete:x};(c.shouldReduceMotion||this.options.layoutRoot)&&(v.delay=0,v.type=!1),this.startAnimation(v),this.setAnimationOrigin(u,T)}else h||ds(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=d})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const r=this.getStack();r&&r.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),J(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(Wl),this.animationId++)}getTransformTemplate(){const{visualElement:r}=this.options;return r&&r.getProps().transformTemplate}willUpdate(r=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&Zi(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const h=this.path[u];h.shouldResetTransform=!0,h.updateScroll("snapshot"),h.options.layoutRoot&&h.willUpdate(!1)}const{layoutId:a,layout:l}=this.options;if(a===void 0&&!l)return;const c=this.getTransformTemplate();this.prevTransformTemplateValue=c?c(this.latestValues,""):void 0,this.updateSnapshot(),r&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(hs);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(fs);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(Ol),this.nodes.forEach(kl),this.nodes.forEach(Fl)):this.nodes.forEach(fs),this.clearAllSnapshots();const a=I.now();k.delta=z(0,1e3/60,a-k.timestamp),k.timestamp=a,k.isProcessing=!0,Jt.update.process(k),Jt.preRender.process(k),Jt.render.process(k),k.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,an.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(jl),this.sharedNodes.forEach(Kl)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,V.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){V.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!B(this.snapshot.measuredBox.x)&&!B(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let l=0;l<this.path.length;l++)this.path[l].updateScroll();const r=this.layout;this.layout=this.measure(!1),this.layoutVersion++,this.layoutCorrected=R(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:a}=this.options;a&&a.notify("LayoutMeasure",this.layout.layoutBox,r?r.layoutBox:void 0)}updateScroll(r="measure"){let a=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===r&&(a=!1),a&&this.instance){const l=s(this.instance);this.scroll={animationId:this.root.animationId,phase:r,isRoot:l,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:l}}}resetTransform(){if(!i)return;const r=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,a=this.projectionDelta&&!zi(this.projectionDelta),l=this.getTransformTemplate(),c=l?l(this.latestValues,""):void 0,u=c!==this.prevTransformTemplateValue;r&&this.instance&&(a||st(this.latestValues)||u)&&(i(this.instance,c),this.shouldResetTransform=!1,this.scheduleRender())}measure(r=!0){const a=this.measurePageBox();let l=this.removeElementScroll(a);return r&&(l=this.removeTransform(l)),_l(l),{animationId:this.root.animationId,measuredBox:a,layoutBox:l,latestValues:{},source:this.id}}measurePageBox(){const{visualElement:r}=this.options;if(!r)return R();const a=r.measureViewportBox();if(!(this.scroll?.wasRoot||this.path.some(zl))){const{scroll:c}=this.root;c&&(ht(a.x,c.offset.x),ht(a.y,c.offset.y))}return a}removeElementScroll(r){const a=R();if($(a,r),this.scroll?.wasRoot)return a;for(let l=0;l<this.path.length;l++){const c=this.path[l],{scroll:u,options:h}=c;c!==this.root&&u&&h.layoutScroll&&(u.wasRoot&&$(a,r),ht(a.x,u.offset.x),ht(a.y,u.offset.y))}return a}applyTransform(r,a=!1){const l=R();$(l,r);for(let c=0;c<this.path.length;c++){const u=this.path[c];!a&&u.options.layoutScroll&&u.scroll&&u!==u.root&&ft(l,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),st(u.latestValues)&&ft(l,u.latestValues)}return st(this.latestValues)&&ft(l,this.latestValues),l}removeTransform(r){const a=R();$(a,r);for(let l=0;l<this.path.length;l++){const c=this.path[l];if(!c.instance||!st(c.latestValues))continue;Le(c.latestValues)&&c.updateSnapshot();const u=R(),h=c.measurePageBox();$(u,h),ns(a,c.latestValues,c.snapshot?c.snapshot.layoutBox:void 0,u)}return st(this.latestValues)&&ns(a,this.latestValues),a}setTargetDelta(r){this.targetDelta=r,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(r){this.options={...this.options,...r,crossfade:r.crossfade!==void 0?r.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==k.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(r=!1){const a=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=a.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=a.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=a.isSharedProjectionDirty);const l=!!this.resumingFrom||this!==a;if(!(r||l&&this.isSharedProjectionDirty||this.isProjectionDirty||this.parent?.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:h}=this.options;if(!this.layout||!(u||h))return;this.resolvedRelativeTargetAt=k.timestamp;const f=this.getClosestProjectingParent();f&&this.linkedParentVersion!==f.layoutVersion&&!f.options.layoutRoot&&this.removeRelativeTarget(),!this.targetDelta&&!this.relativeTarget&&(f&&f.layout?this.createRelativeTarget(f,this.layout.layoutBox,f.layout.layoutBox):this.removeRelativeTarget()),!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=R(),this.targetWithTransforms=R()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),gl(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):$(this.target,this.layout.layoutBox),Ii(this.target,this.targetDelta)):$(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget&&(this.attemptToResolveRelativeTarget=!1,f&&!!f.resumingFrom==!!this.resumingFrom&&!f.options.layoutScroll&&f.target&&this.animationProgress!==1?this.createRelativeTarget(f,this.target,f.target):this.relativeParent=this.relativeTarget=void 0))}getClosestProjectingParent(){if(!(!this.parent||Le(this.parent.latestValues)||Fi(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}createRelativeTarget(r,a,l){this.relativeParent=r,this.linkedParentVersion=r.layoutVersion,this.forceRelativeParentToResolveTarget(),this.relativeTarget=R(),this.relativeTargetOrigin=R(),_t(this.relativeTargetOrigin,a,l),$(this.relativeTarget,this.relativeTargetOrigin)}removeRelativeTarget(){this.relativeParent=this.relativeTarget=void 0}calcProjection(){const r=this.getLead(),a=!!this.resumingFrom||this!==r;let l=!0;if((this.isProjectionDirty||this.parent?.isProjectionDirty)&&(l=!1),a&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(l=!1),this.resolvedRelativeTargetAt===k.timestamp&&(l=!1),l)return;const{layout:c,layoutId:u}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(c||u))return;$(this.layoutCorrected,this.layout.layoutBox);const h=this.treeScale.x,f=this.treeScale.y;Ha(this.layoutCorrected,this.treeScale,this.path,a),r.layout&&!r.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(r.target=r.layout.layoutBox,r.targetWithTransforms=R());const{target:d}=r;if(!d){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(qn(this.prevProjectionDelta.x,this.projectionDelta.x),qn(this.prevProjectionDelta.y,this.projectionDelta.y)),bt(this.projectionDelta,this.layoutCorrected,d,this.latestValues),(this.treeScale.x!==h||this.treeScale.y!==f||!as(this.projectionDelta.x,this.prevProjectionDelta.x)||!as(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",d))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(r=!0){if(this.options.visualElement?.scheduleRender(),r){const a=this.getStack();a&&a.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=ct(),this.projectionDelta=ct(),this.projectionDeltaWithTransform=ct()}setAnimationOrigin(r,a=!1){const l=this.snapshot,c=l?l.latestValues:{},u={...this.latestValues},h=ct();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!a;const f=R(),d=l?l.source:void 0,m=this.layout?this.layout.source:void 0,p=d!==m,x=this.getStack(),g=!x||x.members.length<=1,T=!!(p&&!g&&this.options.crossfade===!0&&!this.path.some(Gl));this.animationProgress=0;let v;this.mixTargetDelta=w=>{const S=w/1e3;ms(h.x,r.x,S),ms(h.y,r.y,S),this.setTargetDelta(h),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(_t(f,this.layout.layoutBox,this.relativeParent.layout.layoutBox),$l(this.relativeTarget,this.relativeTargetOrigin,f,S),v&&Tl(this.relativeTarget,v)&&(this.isProjectionDirty=!1),v||(v=R()),$(v,this.relativeTarget)),p&&(this.animationValues=u,bl(u,c,this.latestValues,S,T,g)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=S},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(r){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&(J(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=V.update(()=>{Ut.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=mt(0)),this.currentAnimation=Vl(this.motionValue,[0,1e3],{...r,velocity:0,isSync:!0,onUpdate:a=>{this.mixTargetDelta(a),r.onUpdate&&r.onUpdate(a)},onStop:()=>{},onComplete:()=>{r.onComplete&&r.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const r=this.getStack();r&&r.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Rl),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const r=this.getLead();let{targetWithTransforms:a,target:l,layout:c,latestValues:u}=r;if(!(!a||!l||!c)){if(this!==r&&this.layout&&c&&Qi(this.options.animationType,this.layout.layoutBox,c.layoutBox)){l=this.target||R();const h=B(this.layout.layoutBox.x);l.x.min=r.target.x.min,l.x.max=l.x.min+h;const f=B(this.layout.layoutBox.y);l.y.min=r.target.y.min,l.y.max=l.y.min+f}$(a,l),ft(a,u),bt(this.projectionDeltaWithTransform,this.layoutCorrected,a,u)}}registerSharedNode(r,a){this.sharedNodes.has(r)||this.sharedNodes.set(r,new El),this.sharedNodes.get(r).add(a);const c=a.options.initialPromotionConfig;a.promote({transition:c?c.transition:void 0,preserveFollowOpacity:c&&c.shouldPreserveFollowOpacity?c.shouldPreserveFollowOpacity(a):void 0})}isLead(){const r=this.getStack();return r?r.lead===this:!0}getLead(){const{layoutId:r}=this.options;return r?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:r}=this.options;return r?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:r}=this.options;if(r)return this.root.sharedNodes.get(r)}promote({needsReset:r,transition:a,preserveFollowOpacity:l}={}){const c=this.getStack();c&&c.promote(this,l),r&&(this.projectionDelta=void 0,this.needsReset=!0),a&&this.setOptions({transition:a})}relegate(){const r=this.getStack();return r?r.relegate(this):!1}resetSkewAndRotation(){const{visualElement:r}=this.options;if(!r)return;let a=!1;const{latestValues:l}=r;if((l.z||l.rotate||l.rotateX||l.rotateY||l.rotateZ||l.skewX||l.skewY)&&(a=!0),!a)return;const c={};l.z&&ae("z",r,c,this.animationValues);for(let u=0;u<oe.length;u++)ae(`rotate${oe[u]}`,r,c,this.animationValues),ae(`skew${oe[u]}`,r,c,this.animationValues);r.render();for(const u in c)r.setStaticValue(u,c[u]),this.animationValues&&(this.animationValues[u]=c[u]);r.scheduleRender()}applyProjectionStyles(r,a){if(!this.instance||this.isSVG)return;if(!this.isVisible){r.visibility="hidden";return}const l=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,r.visibility="",r.opacity="",r.pointerEvents=Nt(a?.pointerEvents)||"",r.transform=l?l(this.latestValues,""):"none";return}const c=this.getLead();if(!this.projectionDelta||!this.layout||!c.target){this.options.layoutId&&(r.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,r.pointerEvents=Nt(a?.pointerEvents)||""),this.hasProjected&&!st(this.latestValues)&&(r.transform=l?l({},""):"none",this.hasProjected=!1);return}r.visibility="";const u=c.animationValues||c.latestValues;this.applyTransformsToTarget();let h=Pl(this.projectionDeltaWithTransform,this.treeScale,u);l&&(h=l(u,h)),r.transform=h;const{x:f,y:d}=this.projectionDelta;r.transformOrigin=`${f.origin*100}% ${d.origin*100}% 0`,c.animationValues?r.opacity=c===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:r.opacity=c===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const m in Fe){if(u[m]===void 0)continue;const{correct:p,applyTo:x,isCSSVariable:g}=Fe[m],T=h==="none"?u[m]:p(u[m],c);if(x){const v=x.length;for(let w=0;w<v;w++)r[x[w]]=T}else g?this.options.visualElement.renderState.vars[m]=T:r[m]=T}this.options.layoutId&&(r.pointerEvents=c===this?Nt(a?.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(r=>r.currentAnimation?.stop()),this.root.nodes.forEach(hs),this.root.sharedNodes.clear()}}}function kl(t){t.updateLayout()}function Fl(t){const e=t.resumeFrom?.snapshot||t.snapshot;if(t.isLead()&&t.layout&&e&&t.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:s}=t.layout,{animationType:i}=t.options,o=e.source!==t.layout.source;i==="size"?U(u=>{const h=o?e.measuredBox[u]:e.layoutBox[u],f=B(h);h.min=n[u].min,h.max=h.min+f}):Qi(i,e.layoutBox,n)&&U(u=>{const h=o?e.measuredBox[u]:e.layoutBox[u],f=B(n[u]);h.max=h.min+f,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[u].max=t.relativeTarget[u].min+f)});const r=ct();bt(r,n,e.layoutBox);const a=ct();o?bt(a,t.applyTransform(s,!0),e.measuredBox):bt(a,n,e.layoutBox);const l=!zi(r);let c=!1;if(!t.resumeFrom){const u=t.getClosestProjectingParent();if(u&&!u.resumeFrom){const{snapshot:h,layout:f}=u;if(h&&f){const d=R();_t(d,e.layoutBox,h.layoutBox);const m=R();_t(m,n,f.layoutBox),Xi(d,m)||(c=!0),u.options.layoutRoot&&(t.relativeTarget=m,t.relativeTargetOrigin=d,t.relativeParent=u)}}}t.notifyListeners("didUpdate",{layout:n,snapshot:e,delta:a,layoutDelta:r,hasLayoutChanged:l,hasRelativeLayoutChanged:c})}else if(t.isLead()){const{onExitComplete:n}=t.options;n&&n()}t.options.transition=void 0}function Il(t){t.parent&&(t.isProjecting()||(t.isProjectionDirty=t.parent.isProjectionDirty),t.isSharedProjectionDirty||(t.isSharedProjectionDirty=!!(t.isProjectionDirty||t.parent.isProjectionDirty||t.parent.isSharedProjectionDirty)),t.isTransformDirty||(t.isTransformDirty=t.parent.isTransformDirty))}function Bl(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function jl(t){t.clearSnapshot()}function hs(t){t.clearMeasurements()}function fs(t){t.isLayoutDirty=!1}function Ol(t){const{visualElement:e}=t.options;e&&e.getProps().onBeforeLayoutMeasure&&e.notify("BeforeLayoutMeasure"),t.resetTransform()}function ds(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function Nl(t){t.resolveTargetDelta()}function Ul(t){t.calcProjection()}function Wl(t){t.resetSkewAndRotation()}function Kl(t){t.removeLeadSnapshot()}function ms(t,e,n){t.translate=C(e.translate,0,n),t.scale=C(e.scale,1,n),t.origin=e.origin,t.originPoint=e.originPoint}function ps(t,e,n,s){t.min=C(e.min,n.min,s),t.max=C(e.max,n.max,s)}function $l(t,e,n,s){ps(t.x,e.x,n.x,s),ps(t.y,e.y,n.y,s)}function Gl(t){return t.animationValues&&t.animationValues.opacityExit!==void 0}const Hl={duration:.45,ease:[.4,0,.1,1]},gs=t=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(t),ys=gs("applewebkit/")&&!gs("chrome/")?Math.round:K;function vs(t){t.min=ys(t.min),t.max=ys(t.max)}function _l(t){vs(t.x),vs(t.y)}function Qi(t,e,n){return t==="position"||t==="preserve-aspect"&&!pl(os(e),os(n),.2)}function zl(t){return t!==t.root&&t.scroll?.wasRoot}const Xl=Ji({attachResizeListener:(t,e)=>Mt(t,"resize",e),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),le={current:void 0},tr=Ji({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!le.current){const t=new Xl({});t.mount(window),t.setOptions({layoutScroll:!0}),le.current=t}return le.current},resetTransform:(t,e)=>{t.style.transform=e!==void 0?e:"none"},checkIsScrollRoot:t=>window.getComputedStyle(t).position==="fixed"}),er=P.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"});function Yl(t=!0){const e=P.useContext(Oe);if(e===null)return[!0,null];const{isPresent:n,onExitComplete:s,register:i}=e,o=P.useId();P.useEffect(()=>{if(t)return i(o)},[t]);const r=P.useCallback(()=>t&&s&&s(o),[o,s,t]);return!n&&s?[!1,r]:[!0]}const nr=P.createContext({strict:!1}),xs={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let Ts=!1;function ql(){if(Ts)return;const t={};for(const e in xs)t[e]={isEnabled:n=>xs[e].some(s=>!!n[s])};Ri(t),Ts=!0}function sr(){return ql(),Wa()}function Zl(t){const e=sr();for(const n in t)e[n]={...e[n],...t[n]};Ri(e)}const Jl=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function zt(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||Jl.has(t)}let ir=t=>!zt(t);function Ql(t){typeof t=="function"&&(ir=e=>e.startsWith("on")?!zt(e):t(e))}try{Ql(require("@emotion/is-prop-valid").default)}catch{}function tu(t,e,n){const s={};for(const i in t)i==="values"&&typeof t.values=="object"||(ir(i)||n===!0&&zt(i)||!e&&!zt(i)||t.draggable&&i.startsWith("onDrag"))&&(s[i]=t[i]);return s}const qt=P.createContext({});function eu(t,e){if(Yt(t)){const{initial:n,animate:s}=t;return{initial:n===!1||Dt(n)?n:void 0,animate:Dt(s)?s:void 0}}return t.inherit!==!1?e:{}}function nu(t){const{initial:e,animate:n}=eu(t,P.useContext(qt));return P.useMemo(()=>({initial:e,animate:n}),[Ps(e),Ps(n)])}function Ps(t){return Array.isArray(t)?t.join(" "):t}const dn=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function rr(t,e,n){for(const s in e)!F(e[s])&&!Oi(s,n)&&(t[s]=e[s])}function su({transformTemplate:t},e){return P.useMemo(()=>{const n=dn();return hn(n,e,t),Object.assign({},n.vars,n.style)},[e])}function iu(t,e){const n=t.style||{},s={};return rr(s,n,t),Object.assign(s,su(t,e)),s}function ru(t,e){const n={},s=iu(t,e);return t.drag&&t.dragListener!==!1&&(n.draggable=!1,s.userSelect=s.WebkitUserSelect=s.WebkitTouchCallout="none",s.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(n.tabIndex=0),n.style=s,n}const or=()=>({...dn(),attrs:{}});function ou(t,e,n,s){const i=P.useMemo(()=>{const o=or();return Ni(o,e,Wi(s),t.transformTemplate,t.style),{...o.attrs,style:{...o.style}}},[e]);if(t.style){const o={};rr(o,t.style,t),i.style={...o,...i.style}}return i}const au=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function mn(t){return typeof t!="string"||t.includes("-")?!1:!!(au.indexOf(t)>-1||/[A-Z]/u.test(t))}function lu(t,e,n,{latestValues:s},i,o=!1,r){const l=(r??mn(t)?ou:ru)(e,s,i,t),c=tu(e,typeof t=="string",o),u=t!==P.Fragment?{...c,...l,ref:n}:{},{children:h}=e,f=P.useMemo(()=>F(h)?h.get():h,[h]);return P.createElement(t,{...u,children:f})}function uu({scrapeMotionValuesFromProps:t,createRenderState:e},n,s,i){return{latestValues:cu(n,s,i,t),renderState:e()}}function cu(t,e,n,s){const i={},o=s(t,{});for(const f in o)i[f]=Nt(o[f]);let{initial:r,animate:a}=t;const l=Yt(t),c=Ei(t);e&&c&&!l&&t.inherit!==!1&&(r===void 0&&(r=e.initial),a===void 0&&(a=e.animate));let u=n?n.initial===!1:!1;u=u||r===!1;const h=u?a:r;if(h&&typeof h!="boolean"&&!Xt(h)){const f=Array.isArray(h)?h:[h];for(let d=0;d<f.length;d++){const m=sn(t,f[d]);if(m){const{transitionEnd:p,transition:x,...g}=m;for(const T in g){let v=g[T];if(Array.isArray(v)){const w=u?v.length-1:0;v=v[w]}v!==null&&(i[T]=v)}for(const T in p)i[T]=p[T]}}}return i}const ar=t=>(e,n)=>{const s=P.useContext(qt),i=P.useContext(Oe),o=()=>uu(t,e,s,i);return n?o():Sr(o)},hu=ar({scrapeMotionValuesFromProps:fn,createRenderState:dn}),fu=ar({scrapeMotionValuesFromProps:Ki,createRenderState:or}),du=Symbol.for("motionComponentSymbol");function mu(t,e,n){const s=P.useRef(n);P.useInsertionEffect(()=>{s.current=n});const i=P.useRef(null);return P.useCallback(o=>{o&&t.onMount?.(o),e&&(o?e.mount(o):e.unmount());const r=s.current;if(typeof r=="function")if(o){const a=r(o);typeof a=="function"&&(i.current=a)}else i.current?(i.current(),i.current=null):r(o);else r&&(r.current=o)},[e])}const lr=P.createContext({});function Tt(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function pu(t,e,n,s,i,o){const{visualElement:r}=P.useContext(qt),a=P.useContext(nr),l=P.useContext(Oe),c=P.useContext(er).reducedMotion,u=P.useRef(null);s=s||a.renderer,!u.current&&s&&(u.current=s(t,{visualState:e,parent:r,props:n,presenceContext:l,blockInitialAnimation:l?l.initial===!1:!1,reducedMotionConfig:c,isSVG:o}));const h=u.current,f=P.useContext(lr);h&&!h.projection&&i&&(h.type==="html"||h.type==="svg")&&gu(u.current,n,i,f);const d=P.useRef(!1);P.useInsertionEffect(()=>{h&&d.current&&h.update(n,l)});const m=n[gi],p=P.useRef(!!m&&!window.MotionHandoffIsComplete?.(m)&&window.MotionHasOptimisedAnimation?.(m));return br(()=>{h&&(d.current=!0,window.MotionIsMounted=!0,h.updateFeatures(),h.scheduleRenderMicrotask(),p.current&&h.animationState&&h.animationState.animateChanges())}),P.useEffect(()=>{h&&(!p.current&&h.animationState&&h.animationState.animateChanges(),p.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(m)}),p.current=!1),h.enteringChildren=void 0)}),h}function gu(t,e,n,s){const{layoutId:i,layout:o,drag:r,dragConstraints:a,layoutScroll:l,layoutRoot:c,layoutCrossfade:u}=e;t.projection=new n(t.latestValues,e["data-framer-portal-id"]?void 0:ur(t.parent)),t.projection.setOptions({layoutId:i,layout:o,alwaysMeasureLayout:!!r||a&&Tt(a),visualElement:t,animationType:typeof o=="string"?o:"both",initialPromotionConfig:s,crossfade:u,layoutScroll:l,layoutRoot:c})}function ur(t){if(t)return t.options.allowProjection!==!1?t.projection:ur(t.parent)}function ue(t,{forwardMotionProps:e=!1,type:n}={},s,i){s&&Zl(s);const o=n?n==="svg":mn(t),r=o?fu:hu;function a(c,u){let h;const f={...P.useContext(er),...c,layoutId:yu(c)},{isStatic:d}=f,m=nu(c),p=r(c,d);if(!d&&ks){vu();const x=xu(f);h=x.MeasureLayout,m.visualElement=pu(t,p,f,i,x.ProjectionNode,o)}return H.jsxs(qt.Provider,{value:m,children:[h&&m.visualElement?H.jsx(h,{visualElement:m.visualElement,...f}):null,lu(t,c,mu(p,m.visualElement,u),p,d,e,o)]})}a.displayName=`motion.${typeof t=="string"?t:`create(${t.displayName??t.name??""})`}`;const l=P.forwardRef(a);return l[du]=t,l}function yu({layoutId:t}){const e=P.useContext(Ls).id;return e&&t!==void 0?e+"-"+t:t}function vu(t,e){P.useContext(nr).strict}function xu(t){const e=sr(),{drag:n,layout:s}=e;if(!n&&!s)return{};const i={...n,...s};return{MeasureLayout:n?.isEnabled(t)||s?.isEnabled(t)?i.MeasureLayout:void 0,ProjectionNode:i.ProjectionNode}}function Tu(t,e){if(typeof Proxy>"u")return ue;const n=new Map,s=(o,r)=>ue(o,r,t,e),i=(o,r)=>s(o,r);return new Proxy(i,{get:(o,r)=>r==="create"?s:(n.has(r)||n.set(r,ue(r,void 0,t,e)),n.get(r))})}const Pu=(t,e)=>e.isSVG??mn(t)?new il(e):new Ja(e,{allowProjection:t!==P.Fragment});class Su extends tt{constructor(e){super(e),e.animationState||(e.animationState=ul(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();Xt(e)&&(this.unmountControls=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:n}=this.node.prevProps||{};e!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let bu=0;class wu extends tt{constructor(){super(...arguments),this.id=bu++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:n}=this.node.presenceContext,{isPresent:s}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===s)return;const i=this.node.animationState.setActive("exit",!e);n&&!e&&i.then(()=>{n(this.id)})}mount(){const{register:e,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),e&&(this.unmount=e(this.id))}unmount(){}}const Au={animation:{Feature:Su},exit:{Feature:wu}};function kt(t){return{point:{x:t.pageX,y:t.pageY}}}const Vu=t=>e=>ln(e)&&t(e,kt(e));function wt(t,e,n,s){return Mt(t,e,Vu(n),s)}const cr=({current:t})=>t?t.ownerDocument.defaultView:null,Ss=(t,e)=>Math.abs(t-e);function Cu(t,e){const n=Ss(t.x,e.x),s=Ss(t.y,e.y);return Math.sqrt(n**2+s**2)}const bs=new Set(["auto","scroll"]);class hr{constructor(e,n,{transformPagePoint:s,contextWindow:i=window,dragSnapToOrigin:o=!1,distanceThreshold:r=3,element:a}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=d=>{this.handleScroll(d.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const d=he(this.lastMoveEventInfo,this.history),m=this.startEvent!==null,p=Cu(d.offset,{x:0,y:0})>=this.distanceThreshold;if(!m&&!p)return;const{point:x}=d,{timestamp:g}=k;this.history.push({...x,timestamp:g});const{onStart:T,onMove:v}=this.handlers;m||(T&&T(this.lastMoveEvent,d),this.startEvent=this.lastMoveEvent),v&&v(this.lastMoveEvent,d)},this.handlePointerMove=(d,m)=>{this.lastMoveEvent=d,this.lastMoveEventInfo=ce(m,this.transformPagePoint),V.update(this.updatePoint,!0)},this.handlePointerUp=(d,m)=>{this.end();const{onEnd:p,onSessionEnd:x,resumeAnimation:g}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&g&&g(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const T=he(d.type==="pointercancel"?this.lastMoveEventInfo:ce(m,this.transformPagePoint),this.history);this.startEvent&&p&&p(d,T),x&&x(d,T)},!ln(e))return;this.dragSnapToOrigin=o,this.handlers=n,this.transformPagePoint=s,this.distanceThreshold=r,this.contextWindow=i||window;const l=kt(e),c=ce(l,this.transformPagePoint),{point:u}=c,{timestamp:h}=k;this.history=[{...u,timestamp:h}];const{onSessionStart:f}=n;f&&f(e,he(c,this.history)),this.removeListeners=Et(wt(this.contextWindow,"pointermove",this.handlePointerMove),wt(this.contextWindow,"pointerup",this.handlePointerUp),wt(this.contextWindow,"pointercancel",this.handlePointerUp)),a&&this.startScrollTracking(a)}startScrollTracking(e){let n=e.parentElement;for(;n;){const s=getComputedStyle(n);(bs.has(s.overflowX)||bs.has(s.overflowY))&&this.scrollPositions.set(n,{x:n.scrollLeft,y:n.scrollTop}),n=n.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0,passive:!0}),window.addEventListener("scroll",this.onWindowScroll,{passive:!0}),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(e){const n=this.scrollPositions.get(e);if(!n)return;const s=e===window,i=s?{x:window.scrollX,y:window.scrollY}:{x:e.scrollLeft,y:e.scrollTop},o={x:i.x-n.x,y:i.y-n.y};o.x===0&&o.y===0||(s?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=o.x,this.lastMoveEventInfo.point.y+=o.y):this.history.length>0&&(this.history[0].x-=o.x,this.history[0].y-=o.y),this.scrollPositions.set(e,i),V.update(this.updatePoint,!0))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),J(this.updatePoint)}}function ce(t,e){return e?{point:e(t.point)}:t}function ws(t,e){return{x:t.x-e.x,y:t.y-e.y}}function he({point:t},e){return{point:t,delta:ws(t,fr(e)),offset:ws(t,Du(e)),velocity:Mu(e,.1)}}function Du(t){return t[0]}function fr(t){return t[t.length-1]}function Mu(t,e){if(t.length<2)return{x:0,y:0};let n=t.length-1,s=null;const i=fr(t);for(;n>=0&&(s=t[n],!(i.timestamp-s.timestamp>X(e)));)n--;if(!s)return{x:0,y:0};const o=W(i.timestamp-s.timestamp);if(o===0)return{x:0,y:0};const r={x:(i.x-s.x)/o,y:(i.y-s.y)/o};return r.x===1/0&&(r.x=0),r.y===1/0&&(r.y=0),r}function Eu(t,{min:e,max:n},s){return e!==void 0&&t<e?t=s?C(e,t,s.min):Math.max(t,e):n!==void 0&&t>n&&(t=s?C(n,t,s.max):Math.min(t,n)),t}function As(t,e,n){return{min:e!==void 0?t.min+e:void 0,max:n!==void 0?t.max+n-(t.max-t.min):void 0}}function Ru(t,{top:e,left:n,bottom:s,right:i}){return{x:As(t.x,n,i),y:As(t.y,e,s)}}function Vs(t,e){let n=e.min-t.min,s=e.max-t.max;return e.max-e.min<t.max-t.min&&([n,s]=[s,n]),{min:n,max:s}}function Lu(t,e){return{x:Vs(t.x,e.x),y:Vs(t.y,e.y)}}function ku(t,e){let n=.5;const s=B(t),i=B(e);return i>s?n=At(e.min,e.max-s,t.min):s>i&&(n=At(t.min,t.max-i,e.min)),z(0,1,n)}function Fu(t,e){const n={};return e.min!==void 0&&(n.min=e.min-t.min),e.max!==void 0&&(n.max=e.max-t.min),n}const Ie=.35;function Iu(t=Ie){return t===!1?t=0:t===!0&&(t=Ie),{x:Cs(t,"left","right"),y:Cs(t,"top","bottom")}}function Cs(t,e,n){return{min:Ds(t,e),max:Ds(t,n)}}function Ds(t,e){return typeof t=="number"?t:t[e]||0}const Bu=new WeakMap;class ju{constructor(e){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=R(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=e}start(e,{snapToCursor:n=!1,distanceThreshold:s}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const o=h=>{n?(this.stopAnimation(),this.snapToCursor(kt(h).point)):this.pauseAnimation()},r=(h,f)=>{this.stopAnimation();const{drag:d,dragPropagation:m,onDragStart:p}=this.getProps();if(d&&!m&&(this.openDragLock&&this.openDragLock(),this.openDragLock=Ma(d),!this.openDragLock))return;this.latestPointerEvent=h,this.latestPanInfo=f,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),U(g=>{let T=this.getAxisMotionValue(g).get()||0;if(_.test(T)){const{projection:v}=this.visualElement;if(v&&v.layout){const w=v.layout.layoutBox[g];w&&(T=B(w)*(parseFloat(T)/100))}}this.originPoint[g]=T}),p&&V.postRender(()=>p(h,f)),De(this.visualElement,"transform");const{animationState:x}=this.visualElement;x&&x.setActive("whileDrag",!0)},a=(h,f)=>{this.latestPointerEvent=h,this.latestPanInfo=f;const{dragPropagation:d,dragDirectionLock:m,onDirectionLock:p,onDrag:x}=this.getProps();if(!d&&!this.openDragLock)return;const{offset:g}=f;if(m&&this.currentDirection===null){this.currentDirection=Ou(g),this.currentDirection!==null&&p&&p(this.currentDirection);return}this.updateAxis("x",f.point,g),this.updateAxis("y",f.point,g),this.visualElement.render(),x&&x(h,f)},l=(h,f)=>{this.latestPointerEvent=h,this.latestPanInfo=f,this.stop(h,f),this.latestPointerEvent=null,this.latestPanInfo=null},c=()=>U(h=>this.getAnimationState(h)==="paused"&&this.getAxisMotionValue(h).animation?.play()),{dragSnapToOrigin:u}=this.getProps();this.panSession=new hr(e,{onSessionStart:o,onStart:r,onMove:a,onSessionEnd:l,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:s,contextWindow:cr(this.visualElement),element:this.visualElement.current})}stop(e,n){const s=e||this.latestPointerEvent,i=n||this.latestPanInfo,o=this.isDragging;if(this.cancel(),!o||!i||!s)return;const{velocity:r}=i;this.startAnimation(r);const{onDragEnd:a}=this.getProps();a&&V.postRender(()=>a(s,i))}cancel(){this.isDragging=!1;const{projection:e,animationState:n}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:s}=this.getProps();!s&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(e,n,s){const{drag:i}=this.getProps();if(!s||!Bt(e,i,this.currentDirection))return;const o=this.getAxisMotionValue(e);let r=this.originPoint[e]+s[e];this.constraints&&this.constraints[e]&&(r=Eu(r,this.constraints[e],this.elastic[e])),o.set(r)}resolveConstraints(){const{dragConstraints:e,dragElastic:n}=this.getProps(),s=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,i=this.constraints;e&&Tt(e)?this.constraints||(this.constraints=this.resolveRefConstraints()):e&&s?this.constraints=Ru(s.layoutBox,e):this.constraints=!1,this.elastic=Iu(n),i!==this.constraints&&s&&this.constraints&&!this.hasMutatedConstraints&&U(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=Fu(s.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:n}=this.getProps();if(!e||!Tt(e))return!1;const s=e.current,{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const o=_a(s,i.root,this.visualElement.getTransformPagePoint());let r=Lu(i.layout.layoutBox,o);if(n){const a=n($a(r));this.hasMutatedConstraints=!!a,a&&(r=ki(a))}return r}startAnimation(e){const{drag:n,dragMomentum:s,dragElastic:i,dragTransition:o,dragSnapToOrigin:r,onDragTransitionEnd:a}=this.getProps(),l=this.constraints||{},c=U(u=>{if(!Bt(u,n,this.currentDirection))return;let h=l&&l[u]||{};r&&(h={min:0,max:0});const f=i?200:1e6,d=i?40:1e7,m={type:"inertia",velocity:s?e[u]:0,bounceStiffness:f,bounceDamping:d,timeConstant:750,restDelta:1,restSpeed:10,...o,...h};return this.startAxisValueAnimation(u,m)});return Promise.all(c).then(a)}startAxisValueAnimation(e,n){const s=this.getAxisMotionValue(e);return De(this.visualElement,e),s.start(nn(e,s,0,n,this.visualElement,!1))}stopAnimation(){U(e=>this.getAxisMotionValue(e).stop())}pauseAnimation(){U(e=>this.getAxisMotionValue(e).animation?.pause())}getAnimationState(e){return this.getAxisMotionValue(e).animation?.state}getAxisMotionValue(e){const n=`_drag${e.toUpperCase()}`,s=this.visualElement.getProps(),i=s[n];return i||this.visualElement.getValue(e,(s.initial?s.initial[e]:void 0)||0)}snapToCursor(e){U(n=>{const{drag:s}=this.getProps();if(!Bt(n,s,this.currentDirection))return;const{projection:i}=this.visualElement,o=this.getAxisMotionValue(n);if(i&&i.layout){const{min:r,max:a}=i.layout.layoutBox[n],l=o.get()||0;o.set(e[n]-C(r,a,.5)+l)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:n}=this.getProps(),{projection:s}=this.visualElement;if(!Tt(n)||!s||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};U(r=>{const a=this.getAxisMotionValue(r);if(a&&this.constraints!==!1){const l=a.get();i[r]=ku({min:l,max:l},this.constraints[r])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",s.root&&s.root.updateScroll(),s.updateLayout(),this.resolveConstraints(),U(r=>{if(!Bt(r,e,null))return;const a=this.getAxisMotionValue(r),{min:l,max:c}=this.constraints[r];a.set(C(l,c,i[r]))})}addListeners(){if(!this.visualElement.current)return;Bu.set(this.visualElement,this);const e=this.visualElement.current,n=wt(e,"pointerdown",l=>{const{drag:c,dragListener:u=!0}=this.getProps(),h=l.target,f=h!==e&&Ci(h);c&&u&&!f&&this.start(l)}),s=()=>{const{dragConstraints:l}=this.getProps();Tt(l)&&l.current&&(this.constraints=this.resolveRefConstraints())},{projection:i}=this.visualElement,o=i.addEventListener("measure",s);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),V.read(s);const r=Mt(window,"resize",()=>this.scalePositionWithinConstraints()),a=i.addEventListener("didUpdate",(({delta:l,hasLayoutChanged:c})=>{this.isDragging&&c&&(U(u=>{const h=this.getAxisMotionValue(u);h&&(this.originPoint[u]+=l[u].translate,h.set(h.get()+l[u].translate))}),this.visualElement.render())}));return()=>{r(),n(),o(),a&&a()}}getProps(){const e=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:s=!1,dragPropagation:i=!1,dragConstraints:o=!1,dragElastic:r=Ie,dragMomentum:a=!0}=e;return{...e,drag:n,dragDirectionLock:s,dragPropagation:i,dragConstraints:o,dragElastic:r,dragMomentum:a}}}function Bt(t,e,n){return(e===!0||e===t)&&(n===null||n===t)}function Ou(t,e=10){let n=null;return Math.abs(t.y)>e?n="y":Math.abs(t.x)>e&&(n="x"),n}class Nu extends tt{constructor(e){super(e),this.removeGroupControls=K,this.removeListeners=K,this.controls=new ju(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||K}update(){const{dragControls:e}=this.node.getProps(),{dragControls:n}=this.node.prevProps||{};e!==n&&(this.removeGroupControls(),e&&(this.removeGroupControls=e.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.endPanSession()}}const Ms=t=>(e,n)=>{t&&V.postRender(()=>t(e,n))};class Uu extends tt{constructor(){super(...arguments),this.removePointerDownListener=K}onPointerDown(e){this.session=new hr(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:cr(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:n,onPan:s,onPanEnd:i}=this.node.getProps();return{onSessionStart:Ms(e),onStart:Ms(n),onMove:s,onEnd:(o,r)=>{delete this.session,i&&V.postRender(()=>i(o,r))}}}mount(){this.removePointerDownListener=wt(this.node.current,"pointerdown",e=>this.onPointerDown(e))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let fe=!1;class Wu extends P.Component{componentDidMount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:s,layoutId:i}=this.props,{projection:o}=e;o&&(n.group&&n.group.add(o),s&&s.register&&i&&s.register(o),fe&&o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,onExitComplete:()=>this.safeToRemove()})),Ut.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:n,visualElement:s,drag:i,isPresent:o}=this.props,{projection:r}=s;return r&&(r.isPresent=o,fe=!0,i||e.layoutDependency!==n||n===void 0||e.isPresent!==o?r.willUpdate():this.safeToRemove(),e.isPresent!==o&&(o?r.promote():r.relegate()||V.postRender(()=>{const a=r.getStack();(!a||!a.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),an.postRender(()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:s}=this.props,{projection:i}=e;fe=!0,i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),s&&s.deregister&&s.deregister(i))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function dr(t){const[e,n]=Yl(),s=P.useContext(Ls);return H.jsx(Wu,{...t,layoutGroup:s,switchLayoutGroup:P.useContext(lr),isPresent:e,safeToRemove:n})}const Ku={pan:{Feature:Uu},drag:{Feature:Nu,ProjectionNode:tr,MeasureLayout:dr}};function Es(t,e,n){const{props:s}=t;t.animationState&&s.whileHover&&t.animationState.setActive("whileHover",n==="Start");const i="onHover"+n,o=s[i];o&&V.postRender(()=>o(e,kt(e)))}class $u extends tt{mount(){const{current:e}=this.node;e&&(this.unmount=Ea(e,(n,s)=>(Es(this.node,s,"Start"),i=>Es(this.node,i,"End"))))}unmount(){}}class Gu extends tt{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch{e=!0}!e||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=Et(Mt(this.node.current,"focus",()=>this.onFocus()),Mt(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function Rs(t,e,n){const{props:s}=t;if(t.current instanceof HTMLButtonElement&&t.current.disabled)return;t.animationState&&s.whileTap&&t.animationState.setActive("whileTap",n==="Start");const i="onTap"+(n==="End"?"":n),o=s[i];o&&V.postRender(()=>o(e,kt(e)))}class Hu extends tt{mount(){const{current:e}=this.node;e&&(this.unmount=ka(e,(n,s)=>(Rs(this.node,s,"Start"),(i,{success:o})=>Rs(this.node,i,o?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const Be=new WeakMap,de=new WeakMap,_u=t=>{const e=Be.get(t.target);e&&e(t)},zu=t=>{t.forEach(_u)};function Xu({root:t,...e}){const n=t||document;de.has(n)||de.set(n,{});const s=de.get(n),i=JSON.stringify(e);return s[i]||(s[i]=new IntersectionObserver(zu,{root:t,...e})),s[i]}function Yu(t,e,n){const s=Xu(e);return Be.set(t,n),s.observe(t),()=>{Be.delete(t),s.unobserve(t)}}const qu={some:0,all:1};class Zu extends tt{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:n,margin:s,amount:i="some",once:o}=e,r={root:n?n.current:void 0,rootMargin:s,threshold:typeof i=="number"?i:qu[i]},a=l=>{const{isIntersecting:c}=l;if(this.isInView===c||(this.isInView=c,o&&!c&&this.hasEnteredView))return;c&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",c);const{onViewportEnter:u,onViewportLeave:h}=this.node.getProps(),f=c?u:h;f&&f(l)};return Yu(this.node.current,r,a)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:e,prevProps:n}=this.node;["amount","margin","root"].some(Ju(e,n))&&this.startObserver()}unmount(){}}function Ju({viewport:t={}},{viewport:e={}}={}){return n=>t[n]!==e[n]}const Qu={inView:{Feature:Zu},tap:{Feature:Hu},focus:{Feature:Gu},hover:{Feature:$u}},tc={layout:{ProjectionNode:tr,MeasureLayout:dr}},ec={...Au,...Qu,...Ku,...tc},me=Tu(ec,Pu);function Zt(){const t=Pr(),e=xr().find(n=>n.formAction==="/progress"&&n.formData?.has("complete"));return!e||!t.progress?t.progress??null:t.progress.map(n=>{const s=e.formData?.get("complete")==="true";return e.formData?.get("lessonSlug")===n.epicLessonSlug?{...n,epicCompletedAt:s?Date.now():null}:n})}function hc(){const t=je().pathname,e=Zt();if(!e)return null;const n=a=>a.type==="workshop-instructions"?0:a.type==="workshop-finished"?1e4:a.type==="instructions"?a.exerciseNumber*100:a.type==="step"?a.exerciseNumber*100+a.stepNumber:a.type==="finished"?a.exerciseNumber*100+100:a.type==="unknown"?1e5:-1,i=e.sort((a,l)=>n(a)-n(l)).find(a=>!a.epicCompletedAt);if(!i||i.type==="unknown")return null;if(i.type==="workshop-instructions")return"/";if(i.type==="workshop-finished")return"/finished";const o=i.exerciseNumber.toString().padStart(2,"0");if(i.type==="instructions")return`/exercise/${o}`;if(i.type==="finished")return`/exercise/${o}/finished`;const r=i.stepNumber.toString().padStart(2,"0");if(i.type==="step"){const a=`/exercise/${o}/${r}/problem`,l=`/exercise/${o}/${r}/solution`;return t===a||t===l?l:a}return null}function fc(){const t=je(),e=Zt(),[n,s]=P.useState(null);return P.useEffect(()=>{if(!e){s(null);return}const i=e.filter(u=>u.type==="step"&&u.epicCompletedAt);if(i.length<2){s(null);return}const o=t.pathname,r=i.filter(u=>{if(u.type!=="step")return!1;const h=u.exerciseNumber.toString().padStart(2,"0"),f=u.stepNumber.toString().padStart(2,"0"),d=`/exercise/${h}/${f}/problem`,m=`/exercise/${h}/${f}/solution`;return o!==d&&o!==m});if(r.length===0){s(null);return}const a=r[Math.floor(Math.random()*r.length)];if(!a||a.type!=="step"){s(null);return}const l=a.exerciseNumber.toString().padStart(2,"0"),c=a.stepNumber.toString().padStart(2,"0");s(`/exercise/${l}/${c}/problem`)},[e,t.pathname]),n}const nc={0:"",1:"before:h-[10%]",2:"before:h-[20%]",3:"before:h-[30%]",4:"before:h-[40%]",5:"before:h-[50%]",6:"before:h-[60%]",7:"before:h-[70%]",8:"before:h-[80%]",9:"before:h-[90%]",10:"before:h-[100%]"};function dc(t){const e=Zt();if(!e?.length)return null;const n=e.filter(o=>(o.type==="instructions"||o.type==="step"||o.type==="finished")&&o.exerciseNumber===t);if(!n.length)return null;const s=n.reduce((o,r)=>r.epicCompletedAt?o+1:o,0)/n.length,i=Math[s>.1?"floor":"ceil"](s*10);return`relative ${nc[i]} before:bg-highlight before:absolute before:left-0 before:top-0 before:w-[4px]`}function mc(t){return mr(t)?.epicCompletedAt?"relative before:h-[100%] before:bg-highlight before:absolute before:left-0 before:top-0 before:w-[4px]":null}function mr({exerciseNumber:t,stepNumber:e,type:n}){const s=Zt();return s?.length?n==="workshop-finished"||n==="workshop-instructions"?s.find(i=>i.type===n)??null:n==="instructions"||n==="finished"?s.find(i=>i.type===n&&i.exerciseNumber===t)??null:n==="step"?s.find(i=>i.type===n&&i.exerciseNumber===t&&i.stepNumber===e)??null:null:null}function pc({className:t,...e}){const n=yr(),s=Tr(),i=mr(e),o=P.useRef(null),r=P.useRef(null),a=n.formData?.has("complete")?n.formData.get("complete")==="true":!!i?.epicCompletedAt,[l,c]=P.useState(!1),u=je(),h=vr(),f=h.location?.state?.from,d=h.location?.pathname,m=u.pathname;return P.useEffect(()=>{f==="continue next lesson button"&&m===d&&(c(!0),r.current?.focus())},[u.key,m,d,f]),P.useEffect(()=>{let p=!0;if(l)return new Promise(x=>setTimeout(x,200)).then(async()=>{if(!p||!o.current)return;const x=o.current.getAnimations().map(({finished:g})=>g);return Promise.allSettled(x).then(()=>{p&&c(!1)})}),()=>{p=!1}},[l]),ENV.EPICSHOP_DEPLOYED||!i?null:H.jsxs(n.Form,{method:"POST",action:"/progress",children:[s,H.jsx("input",{type:"hidden",name:"lessonSlug",value:i.epicLessonSlug}),H.jsx("input",{type:"hidden",name:"complete",value:(!a).toString()}),H.jsxs(me.button,{ref:r,onClick:()=>{c(!a)},type:"submit",className:vn("group relative flex w-full items-center justify-between overflow-hidden transition hover:bg-[hsl(var(--foreground)/0.02)] focus:bg-[hsl(var(--foreground)/0.02)]",t),children:[a?"Mark as incomplete":"Mark as complete",l?H.jsx(me.div,{ref:o,className:"bg-foreground/20 absolute right-0 h-20 w-20 rounded-full",initial:{scale:.5,opacity:0},animate:{scale:[.5,2],opacity:[0,1,0]},transition:{duration:1,ease:"easeInOut"}}):null,H.jsx(me.div,{"aria-hidden":!0,className:vn("relative flex h-8 w-8 items-center justify-center overflow-hidden rounded-full border transition",{"bg-foreground text-background duration-1000":a,"group-hover:bg-background duration-100":!a}),children:a?"✓":H.jsx("div",{className:"absolute -translate-y-10 opacity-25 transition group-hover:translate-y-0",children:"✓"})})]})]})}export{pc as P,Zt as a,ga as b,Sr as c,br as d,hc as e,fc as f,mc as g,me as m,ha as s,dc as u};
2
- //# sourceMappingURL=progress-BcA4i0iU.js.map
1
+ import{j as H}from"./jsx-runtime-C5WNSv3b.js";import{a as xn}from"./misc-W4055b-0.js";import{r as P}from"./index-CqIc3cxq.js";import{f as Pr,u as je,k as Sr,g as br}from"./chunk-EPOLDU6W-BCLmut3y.js";import{u as wr}from"./pe-CIZUOJMr.js";import{u as ks}from"./root-loader-BOzEMapJ.js";const Fs=P.createContext({});function Ar(t){const e=P.useRef(null);return e.current===null&&(e.current=t()),e.current}const Is=typeof window<"u",Vr=Is?P.useLayoutEffect:P.useEffect,Oe=P.createContext(null);function Ne(t,e){t.indexOf(e)===-1&&t.push(e)}function Ue(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const z=(t,e,n)=>n>e?e:n<t?t:n;let We=()=>{};const Y={},Bs=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t);function js(t){return typeof t=="object"&&t!==null}const Os=t=>/^0[^.\s]+$/u.test(t);function Ke(t){let e;return()=>(e===void 0&&(e=t()),e)}const K=t=>t,Cr=(t,e)=>n=>e(t(n)),Et=(...t)=>t.reduce(Cr),At=(t,e,n)=>{const s=e-t;return s===0?1:(n-t)/s};class $e{constructor(){this.subscriptions=[]}add(e){return Ne(this.subscriptions,e),()=>Ue(this.subscriptions,e)}notify(e,n,s){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](e,n,s);else for(let o=0;o<i;o++){const r=this.subscriptions[o];r&&r(e,n,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const X=t=>t*1e3,W=t=>t/1e3;function Ns(t,e){return e?t*(1e3/e):0}const Us=(t,e,n)=>(((1-3*n+3*e)*t+(3*n-6*e))*t+3*e)*t,Dr=1e-7,Mr=12;function Er(t,e,n,s,i){let o,r,a=0;do r=e+(n-e)/2,o=Us(r,s,i)-t,o>0?n=r:e=r;while(Math.abs(o)>Dr&&++a<Mr);return r}function Rt(t,e,n,s){if(t===e&&n===s)return K;const i=o=>Er(o,0,1,t,n);return o=>o===0||o===1?o:Us(i(o),e,s)}const Ws=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,Ks=t=>e=>1-t(1-e),$s=Rt(.33,1.53,.69,.99),Ge=Ks($s),Gs=Ws(Ge),Hs=t=>(t*=2)<1?.5*Ge(t):.5*(2-Math.pow(2,-10*(t-1))),He=t=>1-Math.sin(Math.acos(t)),_s=Ks(He),zs=Ws(He),Rr=Rt(.42,0,1,1),Lr=Rt(0,0,.58,1),Xs=Rt(.42,0,.58,1),kr=t=>Array.isArray(t)&&typeof t[0]!="number",Ys=t=>Array.isArray(t)&&typeof t[0]=="number",Fr={linear:K,easeIn:Rr,easeInOut:Xs,easeOut:Lr,circIn:He,circInOut:zs,circOut:_s,backIn:Ge,backInOut:Gs,backOut:$s,anticipate:Hs},Ir=t=>typeof t=="string",Tn=t=>{if(Ys(t)){We(t.length===4);const[e,n,s,i]=t;return Rt(e,n,s,i)}else if(Ir(t))return Fr[t];return t},Ft=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function Br(t,e){let n=new Set,s=new Set,i=!1,o=!1;const r=new WeakSet;let a={delta:0,timestamp:0,isProcessing:!1};function l(u){r.has(u)&&(c.schedule(u),t()),u(a)}const c={schedule:(u,h=!1,f=!1)=>{const m=f&&i?n:s;return h&&r.add(u),m.has(u)||m.add(u),u},cancel:u=>{s.delete(u),r.delete(u)},process:u=>{if(a=u,i){o=!0;return}i=!0,[n,s]=[s,n],n.forEach(l),n.clear(),i=!1,o&&(o=!1,c.process(u))}};return c}const jr=40;function qs(t,e){let n=!1,s=!0;const i={delta:0,timestamp:0,isProcessing:!1},o=()=>n=!0,r=Ft.reduce((v,w)=>(v[w]=Br(o),v),{}),{setup:a,read:l,resolveKeyframes:c,preUpdate:u,update:h,preRender:f,render:d,postRender:m}=r,p=()=>{const v=Y.useManualTiming?i.timestamp:performance.now();n=!1,Y.useManualTiming||(i.delta=s?1e3/60:Math.max(Math.min(v-i.timestamp,jr),1)),i.timestamp=v,i.isProcessing=!0,a.process(i),l.process(i),c.process(i),u.process(i),h.process(i),f.process(i),d.process(i),m.process(i),i.isProcessing=!1,n&&e&&(s=!1,t(p))},x=()=>{n=!0,s=!0,i.isProcessing||t(p)};return{schedule:Ft.reduce((v,w)=>{const S=r[w];return v[w]=(A,E=!1,b=!1)=>(n||x(),S.schedule(A,E,b)),v},{}),cancel:v=>{for(let w=0;w<Ft.length;w++)r[Ft[w]].cancel(v)},state:i,steps:r}}const{schedule:V,cancel:J,state:k,steps:Jt}=qs(typeof requestAnimationFrame<"u"?requestAnimationFrame:K,!0);let jt;function Or(){jt=void 0}const I={now:()=>(jt===void 0&&I.set(k.isProcessing||Y.useManualTiming?k.timestamp:performance.now()),jt),set:t=>{jt=t,queueMicrotask(Or)}},Zs=t=>e=>typeof e=="string"&&e.startsWith(t),Js=Zs("--"),Nr=Zs("var(--"),_e=t=>Nr(t)?Ur.test(t.split("/*")[0].trim()):!1,Ur=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function Pn(t){return typeof t!="string"?!1:t.split("/*")[0].includes("var(--")}const pt={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},Vt={...pt,transform:t=>z(0,1,t)},It={...pt,default:1},Pt=t=>Math.round(t*1e5)/1e5,ze=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Wr(t){return t==null}const Kr=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,Xe=(t,e)=>n=>!!(typeof n=="string"&&Kr.test(n)&&n.startsWith(t)||e&&!Wr(n)&&Object.prototype.hasOwnProperty.call(n,e)),Qs=(t,e,n)=>s=>{if(typeof s!="string")return s;const[i,o,r,a]=s.match(ze);return{[t]:parseFloat(i),[e]:parseFloat(o),[n]:parseFloat(r),alpha:a!==void 0?parseFloat(a):1}},$r=t=>z(0,255,t),Qt={...pt,transform:t=>Math.round($r(t))},it={test:Xe("rgb","red"),parse:Qs("red","green","blue"),transform:({red:t,green:e,blue:n,alpha:s=1})=>"rgba("+Qt.transform(t)+", "+Qt.transform(e)+", "+Qt.transform(n)+", "+Pt(Vt.transform(s))+")"};function Gr(t){let e="",n="",s="",i="";return t.length>5?(e=t.substring(1,3),n=t.substring(3,5),s=t.substring(5,7),i=t.substring(7,9)):(e=t.substring(1,2),n=t.substring(2,3),s=t.substring(3,4),i=t.substring(4,5),e+=e,n+=n,s+=s,i+=i),{red:parseInt(e,16),green:parseInt(n,16),blue:parseInt(s,16),alpha:i?parseInt(i,16)/255:1}}const pe={test:Xe("#"),parse:Gr,transform:it.transform},Lt=t=>({test:e=>typeof e=="string"&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),q=Lt("deg"),_=Lt("%"),y=Lt("px"),Hr=Lt("vh"),_r=Lt("vw"),Sn={..._,parse:t=>_.parse(t)/100,transform:t=>_.transform(t*100)},ut={test:Xe("hsl","hue"),parse:Qs("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:n,alpha:s=1})=>"hsla("+Math.round(t)+", "+_.transform(Pt(e))+", "+_.transform(Pt(n))+", "+Pt(Vt.transform(s))+")"},M={test:t=>it.test(t)||pe.test(t)||ut.test(t),parse:t=>it.test(t)?it.parse(t):ut.test(t)?ut.parse(t):pe.parse(t),transform:t=>typeof t=="string"?t:t.hasOwnProperty("red")?it.transform(t):ut.transform(t),getAnimatableNone:t=>{const e=M.parse(t);return e.alpha=0,M.transform(e)}},zr=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function Xr(t){return isNaN(t)&&typeof t=="string"&&(t.match(ze)?.length||0)+(t.match(zr)?.length||0)>0}const ti="number",ei="color",Yr="var",qr="var(",bn="${}",Zr=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function Ct(t){const e=t.toString(),n=[],s={color:[],number:[],var:[]},i=[];let o=0;const a=e.replace(Zr,l=>(M.test(l)?(s.color.push(o),i.push(ei),n.push(M.parse(l))):l.startsWith(qr)?(s.var.push(o),i.push(Yr),n.push(l)):(s.number.push(o),i.push(ti),n.push(parseFloat(l))),++o,bn)).split(bn);return{values:n,split:a,indexes:s,types:i}}function ni(t){return Ct(t).values}function si(t){const{split:e,types:n}=Ct(t),s=e.length;return i=>{let o="";for(let r=0;r<s;r++)if(o+=e[r],i[r]!==void 0){const a=n[r];a===ti?o+=Pt(i[r]):a===ei?o+=M.transform(i[r]):o+=i[r]}return o}}const Jr=t=>typeof t=="number"?0:M.test(t)?M.getAnimatableNone(t):t;function Qr(t){const e=ni(t);return si(t)(e.map(Jr))}const Q={test:Xr,parse:ni,createTransformer:si,getAnimatableNone:Qr};function te(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(e-t)*6*n:n<1/2?e:n<2/3?t+(e-t)*(2/3-n)*6:t}function to({hue:t,saturation:e,lightness:n,alpha:s}){t/=360,e/=100,n/=100;let i=0,o=0,r=0;if(!e)i=o=r=n;else{const a=n<.5?n*(1+e):n+e-n*e,l=2*n-a;i=te(l,a,t+1/3),o=te(l,a,t),r=te(l,a,t-1/3)}return{red:Math.round(i*255),green:Math.round(o*255),blue:Math.round(r*255),alpha:s}}function Wt(t,e){return n=>n>0?e:t}const C=(t,e,n)=>t+(e-t)*n,ee=(t,e,n)=>{const s=t*t,i=n*(e*e-s)+s;return i<0?0:Math.sqrt(i)},eo=[pe,it,ut],no=t=>eo.find(e=>e.test(t));function wn(t){const e=no(t);if(!e)return!1;let n=e.parse(t);return e===ut&&(n=to(n)),n}const An=(t,e)=>{const n=wn(t),s=wn(e);if(!n||!s)return Wt(t,e);const i={...n};return o=>(i.red=ee(n.red,s.red,o),i.green=ee(n.green,s.green,o),i.blue=ee(n.blue,s.blue,o),i.alpha=C(n.alpha,s.alpha,o),it.transform(i))},ge=new Set(["none","hidden"]);function so(t,e){return ge.has(t)?n=>n<=0?t:e:n=>n>=1?e:t}function io(t,e){return n=>C(t,e,n)}function Ye(t){return typeof t=="number"?io:typeof t=="string"?_e(t)?Wt:M.test(t)?An:ao:Array.isArray(t)?ii:typeof t=="object"?M.test(t)?An:ro:Wt}function ii(t,e){const n=[...t],s=n.length,i=t.map((o,r)=>Ye(o)(o,e[r]));return o=>{for(let r=0;r<s;r++)n[r]=i[r](o);return n}}function ro(t,e){const n={...t,...e},s={};for(const i in n)t[i]!==void 0&&e[i]!==void 0&&(s[i]=Ye(t[i])(t[i],e[i]));return i=>{for(const o in s)n[o]=s[o](i);return n}}function oo(t,e){const n=[],s={color:0,var:0,number:0};for(let i=0;i<e.values.length;i++){const o=e.types[i],r=t.indexes[o][s[o]],a=t.values[r]??0;n[i]=a,s[o]++}return n}const ao=(t,e)=>{const n=Q.createTransformer(e),s=Ct(t),i=Ct(e);return s.indexes.var.length===i.indexes.var.length&&s.indexes.color.length===i.indexes.color.length&&s.indexes.number.length>=i.indexes.number.length?ge.has(t)&&!i.values.length||ge.has(e)&&!s.values.length?so(t,e):Et(ii(oo(s,i),i.values),n):Wt(t,e)};function ri(t,e,n){return typeof t=="number"&&typeof e=="number"&&typeof n=="number"?C(t,e,n):Ye(t)(t,e)}const lo=t=>{const e=({timestamp:n})=>t(n);return{start:(n=!0)=>V.update(e,n),stop:()=>J(e),now:()=>k.isProcessing?k.timestamp:I.now()}},oi=(t,e,n=10)=>{let s="";const i=Math.max(Math.round(e/n),2);for(let o=0;o<i;o++)s+=Math.round(t(o/(i-1))*1e4)/1e4+", ";return`linear(${s.substring(0,s.length-2)})`},Kt=2e4;function qe(t){let e=0;const n=50;let s=t.next(e);for(;!s.done&&e<Kt;)e+=n,s=t.next(e);return e>=Kt?1/0:e}function uo(t,e=100,n){const s=n({...t,keyframes:[0,e]}),i=Math.min(qe(s),Kt);return{type:"keyframes",ease:o=>s.next(i*o).value/e,duration:W(i)}}const co=5;function ai(t,e,n){const s=Math.max(e-co,0);return Ns(n-t(s),e-s)}const D={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},ne=.001;function ho({duration:t=D.duration,bounce:e=D.bounce,velocity:n=D.velocity,mass:s=D.mass}){let i,o,r=1-e;r=z(D.minDamping,D.maxDamping,r),t=z(D.minDuration,D.maxDuration,W(t)),r<1?(i=c=>{const u=c*r,h=u*t,f=u-n,d=ye(c,r),m=Math.exp(-h);return ne-f/d*m},o=c=>{const h=c*r*t,f=h*n+n,d=Math.pow(r,2)*Math.pow(c,2)*t,m=Math.exp(-h),p=ye(Math.pow(c,2),r);return(-i(c)+ne>0?-1:1)*((f-d)*m)/p}):(i=c=>{const u=Math.exp(-c*t),h=(c-n)*t+1;return-ne+u*h},o=c=>{const u=Math.exp(-c*t),h=(n-c)*(t*t);return u*h});const a=5/t,l=mo(i,o,a);if(t=X(t),isNaN(l))return{stiffness:D.stiffness,damping:D.damping,duration:t};{const c=Math.pow(l,2)*s;return{stiffness:c,damping:r*2*Math.sqrt(s*c),duration:t}}}const fo=12;function mo(t,e,n){let s=n;for(let i=1;i<fo;i++)s=s-t(s)/e(s);return s}function ye(t,e){return t*Math.sqrt(1-e*e)}const po=["duration","bounce"],go=["stiffness","damping","mass"];function Vn(t,e){return e.some(n=>t[n]!==void 0)}function yo(t){let e={velocity:D.velocity,stiffness:D.stiffness,damping:D.damping,mass:D.mass,isResolvedFromDuration:!1,...t};if(!Vn(t,go)&&Vn(t,po))if(t.visualDuration){const n=t.visualDuration,s=2*Math.PI/(n*1.2),i=s*s,o=2*z(.05,1,1-(t.bounce||0))*Math.sqrt(i);e={...e,mass:D.mass,stiffness:i,damping:o}}else{const n=ho(t);e={...e,...n,mass:D.mass},e.isResolvedFromDuration=!0}return e}function $t(t=D.visualDuration,e=D.bounce){const n=typeof t!="object"?{visualDuration:t,keyframes:[0,1],bounce:e}:t;let{restSpeed:s,restDelta:i}=n;const o=n.keyframes[0],r=n.keyframes[n.keyframes.length-1],a={done:!1,value:o},{stiffness:l,damping:c,mass:u,duration:h,velocity:f,isResolvedFromDuration:d}=yo({...n,velocity:-W(n.velocity||0)}),m=f||0,p=c/(2*Math.sqrt(l*u)),x=r-o,g=W(Math.sqrt(l/u)),T=Math.abs(x)<5;s||(s=T?D.restSpeed.granular:D.restSpeed.default),i||(i=T?D.restDelta.granular:D.restDelta.default);let v;if(p<1){const S=ye(g,p);v=A=>{const E=Math.exp(-p*g*A);return r-E*((m+p*g*x)/S*Math.sin(S*A)+x*Math.cos(S*A))}}else if(p===1)v=S=>r-Math.exp(-g*S)*(x+(m+g*x)*S);else{const S=g*Math.sqrt(p*p-1);v=A=>{const E=Math.exp(-p*g*A),b=Math.min(S*A,300);return r-E*((m+p*g*x)*Math.sinh(b)+S*x*Math.cosh(b))/S}}const w={calculatedDuration:d&&h||null,next:S=>{const A=v(S);if(d)a.done=S>=h;else{let E=S===0?m:0;p<1&&(E=S===0?X(m):ai(v,S,A));const b=Math.abs(E)<=s,j=Math.abs(r-A)<=i;a.done=b&&j}return a.value=a.done?r:A,a},toString:()=>{const S=Math.min(qe(w),Kt),A=oi(E=>w.next(S*E).value,S,30);return S+"ms "+A},toTransition:()=>{}};return w}$t.applyToOptions=t=>{const e=uo(t,100,$t);return t.ease=e.ease,t.duration=X(e.duration),t.type="keyframes",t};function ve({keyframes:t,velocity:e=0,power:n=.8,timeConstant:s=325,bounceDamping:i=10,bounceStiffness:o=500,modifyTarget:r,min:a,max:l,restDelta:c=.5,restSpeed:u}){const h=t[0],f={done:!1,value:h},d=b=>a!==void 0&&b<a||l!==void 0&&b>l,m=b=>a===void 0?l:l===void 0||Math.abs(a-b)<Math.abs(l-b)?a:l;let p=n*e;const x=h+p,g=r===void 0?x:r(x);g!==x&&(p=g-h);const T=b=>-p*Math.exp(-b/s),v=b=>g+T(b),w=b=>{const j=T(b),O=v(b);f.done=Math.abs(j)<=c,f.value=f.done?g:O};let S,A;const E=b=>{d(f.value)&&(S=b,A=$t({keyframes:[f.value,m(f.value)],velocity:ai(v,b,f.value),damping:i,stiffness:o,restDelta:c,restSpeed:u}))};return E(0),{calculatedDuration:null,next:b=>{let j=!1;return!A&&S===void 0&&(j=!0,w(b),E(b)),S!==void 0&&b>=S?A.next(b-S):(!j&&w(b),f)}}}function vo(t,e,n){const s=[],i=n||Y.mix||ri,o=t.length-1;for(let r=0;r<o;r++){let a=i(t[r],t[r+1]);if(e){const l=Array.isArray(e)?e[r]||K:e;a=Et(l,a)}s.push(a)}return s}function xo(t,e,{clamp:n=!0,ease:s,mixer:i}={}){const o=t.length;if(We(o===e.length),o===1)return()=>e[0];if(o===2&&e[0]===e[1])return()=>e[1];const r=t[0]===t[1];t[0]>t[o-1]&&(t=[...t].reverse(),e=[...e].reverse());const a=vo(e,s,i),l=a.length,c=u=>{if(r&&u<t[0])return e[0];let h=0;if(l>1)for(;h<t.length-2&&!(u<t[h+1]);h++);const f=At(t[h],t[h+1],u);return a[h](f)};return n?u=>c(z(t[0],t[o-1],u)):c}function To(t,e){const n=t[t.length-1];for(let s=1;s<=e;s++){const i=At(0,e,s);t.push(C(n,1,i))}}function Po(t){const e=[0];return To(e,t.length-1),e}function So(t,e){return t.map(n=>n*e)}function bo(t,e){return t.map(()=>e||Xs).splice(0,t.length-1)}function St({duration:t=300,keyframes:e,times:n,ease:s="easeInOut"}){const i=kr(s)?s.map(Tn):Tn(s),o={done:!1,value:e[0]},r=So(n&&n.length===e.length?n:Po(e),t),a=xo(r,e,{ease:Array.isArray(i)?i:bo(e,i)});return{calculatedDuration:t,next:l=>(o.value=a(l),o.done=l>=t,o)}}const wo=t=>t!==null;function Ze(t,{repeat:e,repeatType:n="loop"},s,i=1){const o=t.filter(wo),a=i<0||e&&n!=="loop"&&e%2===1?0:o.length-1;return!a||s===void 0?o[a]:s}const Ao={decay:ve,inertia:ve,tween:St,keyframes:St,spring:$t};function li(t){typeof t.type=="string"&&(t.type=Ao[t.type])}class Je{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,n){return this.finished.then(e,n)}}const Vo=t=>t/100;class Qe extends Je{constructor(e){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==I.now()&&this.tick(I.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=e,this.initAnimation(),this.play(),e.autoplay===!1&&this.pause()}initAnimation(){const{options:e}=this;li(e);const{type:n=St,repeat:s=0,repeatDelay:i=0,repeatType:o,velocity:r=0}=e;let{keyframes:a}=e;const l=n||St;l!==St&&typeof a[0]!="number"&&(this.mixKeyframes=Et(Vo,ri(a[0],a[1])),a=[0,100]);const c=l({...e,keyframes:a});o==="mirror"&&(this.mirroredGenerator=l({...e,keyframes:[...a].reverse(),velocity:-r})),c.calculatedDuration===null&&(c.calculatedDuration=qe(c));const{calculatedDuration:u}=c;this.calculatedDuration=u,this.resolvedDuration=u+i,this.totalDuration=this.resolvedDuration*(s+1)-i,this.generator=c}updateTime(e){const n=Math.round(e-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(e,n=!1){const{generator:s,totalDuration:i,mixKeyframes:o,mirroredGenerator:r,resolvedDuration:a,calculatedDuration:l}=this;if(this.startTime===null)return s.next(0);const{delay:c=0,keyframes:u,repeat:h,repeatType:f,repeatDelay:d,type:m,onUpdate:p,finalKeyframe:x}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-i/this.speed,this.startTime)),n?this.currentTime=e:this.updateTime(e);const g=this.currentTime-c*(this.playbackSpeed>=0?1:-1),T=this.playbackSpeed>=0?g<0:g>i;this.currentTime=Math.max(g,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=i);let v=this.currentTime,w=s;if(h){const b=Math.min(this.currentTime,i)/a;let j=Math.floor(b),O=b%1;!O&&b>=1&&(O=1),O===1&&j--,j=Math.min(j,h+1),!!(j%2)&&(f==="reverse"?(O=1-O,d&&(O-=d/a)):f==="mirror"&&(w=r)),v=z(0,1,O)*a}const S=T?{done:!1,value:u[0]}:w.next(v);o&&(S.value=o(S.value));let{done:A}=S;!T&&l!==null&&(A=this.playbackSpeed>=0?this.currentTime>=i:this.currentTime<=0);const E=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&A);return E&&m!==ve&&(S.value=Ze(u,this.options,x,this.speed)),p&&p(S.value),E&&this.finish(),S}then(e,n){return this.finished.then(e,n)}get duration(){return W(this.calculatedDuration)}get iterationDuration(){const{delay:e=0}=this.options||{};return this.duration+W(e)}get time(){return W(this.currentTime)}set time(e){e=X(e),this.currentTime=e,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=e:this.driver&&(this.startTime=this.driver.now()-e/this.playbackSpeed),this.driver?.start(!1)}get speed(){return this.playbackSpeed}set speed(e){this.updateTime(I.now());const n=this.playbackSpeed!==e;this.playbackSpeed=e,n&&(this.time=W(this.currentTime))}play(){if(this.isStopped)return;const{driver:e=lo,startTime:n}=this.options;this.driver||(this.driver=e(i=>this.tick(i))),this.options.onPlay?.();const s=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=s):this.holdTime!==null?this.startTime=s-this.holdTime:this.startTime||(this.startTime=n??s),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(I.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(e){return this.startTime=0,this.tick(e,!0)}attachTimeline(e){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),e.observe(this)}}function Co(t){for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}const rt=t=>t*180/Math.PI,xe=t=>{const e=rt(Math.atan2(t[1],t[0]));return Te(e)},Do={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:xe,rotateZ:xe,skewX:t=>rt(Math.atan(t[1])),skewY:t=>rt(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},Te=t=>(t=t%360,t<0&&(t+=360),t),Cn=xe,Dn=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),Mn=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),Mo={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:Dn,scaleY:Mn,scale:t=>(Dn(t)+Mn(t))/2,rotateX:t=>Te(rt(Math.atan2(t[6],t[5]))),rotateY:t=>Te(rt(Math.atan2(-t[2],t[0]))),rotateZ:Cn,rotate:Cn,skewX:t=>rt(Math.atan(t[4])),skewY:t=>rt(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function Pe(t){return t.includes("scale")?1:0}function Se(t,e){if(!t||t==="none")return Pe(e);const n=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let s,i;if(n)s=Mo,i=n;else{const a=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);s=Do,i=a}if(!i)return Pe(e);const o=s[e],r=i[1].split(",").map(Ro);return typeof o=="function"?o(r):r[o]}const Eo=(t,e)=>{const{transform:n="none"}=getComputedStyle(t);return Se(n,e)};function Ro(t){return parseFloat(t.trim())}const gt=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],yt=new Set(gt),En=t=>t===pt||t===y,Lo=new Set(["x","y","z"]),ko=gt.filter(t=>!Lo.has(t));function Fo(t){const e=[];return ko.forEach(n=>{const s=t.getValue(n);s!==void 0&&(e.push([n,s.get()]),s.set(n.startsWith("scale")?1:0))}),e}const Z={width:({x:t},{paddingLeft:e="0",paddingRight:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),height:({y:t},{paddingTop:e="0",paddingBottom:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>Se(e,"x"),y:(t,{transform:e})=>Se(e,"y")};Z.translateX=Z.x;Z.translateY=Z.y;const ot=new Set;let be=!1,we=!1,Ae=!1;function ui(){if(we){const t=Array.from(ot).filter(s=>s.needsMeasurement),e=new Set(t.map(s=>s.element)),n=new Map;e.forEach(s=>{const i=Fo(s);i.length&&(n.set(s,i),s.render())}),t.forEach(s=>s.measureInitialState()),e.forEach(s=>{s.render();const i=n.get(s);i&&i.forEach(([o,r])=>{s.getValue(o)?.set(r)})}),t.forEach(s=>s.measureEndState()),t.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}we=!1,be=!1,ot.forEach(t=>t.complete(Ae)),ot.clear()}function ci(){ot.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(we=!0)})}function Io(){Ae=!0,ci(),ui(),Ae=!1}class tn{constructor(e,n,s,i,o,r=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=n,this.name=s,this.motionValue=i,this.element=o,this.isAsync=r}scheduleResolve(){this.state="scheduled",this.isAsync?(ot.add(this),be||(be=!0,V.read(ci),V.resolveKeyframes(ui))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:n,element:s,motionValue:i}=this;if(e[0]===null){const o=i?.get(),r=e[e.length-1];if(o!==void 0)e[0]=o;else if(s&&n){const a=s.readValue(n,r);a!=null&&(e[0]=a)}e[0]===void 0&&(e[0]=r),i&&o===void 0&&i.set(e[0])}Co(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),ot.delete(this)}cancel(){this.state==="scheduled"&&(ot.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const Bo=t=>t.startsWith("--");function jo(t,e,n){Bo(e)?t.style.setProperty(e,n):t.style[e]=n}const Oo=Ke(()=>window.ScrollTimeline!==void 0),No={};function Uo(t,e){const n=Ke(t);return()=>No[e]??n()}const hi=Uo(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),xt=([t,e,n,s])=>`cubic-bezier(${t}, ${e}, ${n}, ${s})`,Rn={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:xt([0,.65,.55,1]),circOut:xt([.55,0,1,.45]),backIn:xt([.31,.01,.66,-.59]),backOut:xt([.33,1.53,.69,.99])};function fi(t,e){if(t)return typeof t=="function"?hi()?oi(t,e):"ease-out":Ys(t)?xt(t):Array.isArray(t)?t.map(n=>fi(n,e)||Rn.easeOut):Rn[t]}function Wo(t,e,n,{delay:s=0,duration:i=300,repeat:o=0,repeatType:r="loop",ease:a="easeOut",times:l}={},c=void 0){const u={[e]:n};l&&(u.offset=l);const h=fi(a,i);Array.isArray(h)&&(u.easing=h);const f={delay:s,duration:i,easing:Array.isArray(h)?"linear":h,fill:"both",iterations:o+1,direction:r==="reverse"?"alternate":"normal"};return c&&(f.pseudoElement=c),t.animate(u,f)}function di(t){return typeof t=="function"&&"applyToOptions"in t}function Ko({type:t,...e}){return di(t)&&hi()?t.applyToOptions(e):(e.duration??(e.duration=300),e.ease??(e.ease="easeOut"),e)}class $o extends Je{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!e)return;const{element:n,name:s,keyframes:i,pseudoElement:o,allowFlatten:r=!1,finalKeyframe:a,onComplete:l}=e;this.isPseudoElement=!!o,this.allowFlatten=r,this.options=e,We(typeof e.type!="string");const c=Ko(e);this.animation=Wo(n,s,i,c,o),c.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!o){const u=Ze(i,this.options,a,this.speed);this.updateMotionValue?this.updateMotionValue(u):jo(n,s,u),this.animation.cancel()}l?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:e}=this;e==="idle"||e==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){this.isPseudoElement||this.animation.commitStyles?.()}get duration(){const e=this.animation.effect?.getComputedTiming?.().duration||0;return W(Number(e))}get iterationDuration(){const{delay:e=0}=this.options||{};return this.duration+W(e)}get time(){return W(Number(this.animation.currentTime)||0)}set time(e){this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=X(e)}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(e){this.manualStartTime=this.animation.startTime=e}attachTimeline({timeline:e,observe:n}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,e&&Oo()?(this.animation.timeline=e,K):n(this)}}const mi={anticipate:Hs,backInOut:Gs,circInOut:zs};function Go(t){return t in mi}function Ho(t){typeof t.ease=="string"&&Go(t.ease)&&(t.ease=mi[t.ease])}const se=10;class _o extends $o{constructor(e){Ho(e),li(e),super(e),e.startTime!==void 0&&(this.startTime=e.startTime),this.options=e}updateMotionValue(e){const{motionValue:n,onUpdate:s,onComplete:i,element:o,...r}=this.options;if(!n)return;if(e!==void 0){n.set(e);return}const a=new Qe({...r,autoplay:!1}),l=Math.max(se,I.now()-this.startTime),c=z(0,se,l-se);n.setWithVelocity(a.sample(Math.max(0,l-c)).value,a.sample(l).value,c),a.stop()}}const Ln=(t,e)=>e==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&(Q.test(t)||t==="0")&&!t.startsWith("url("));function zo(t){const e=t[0];if(t.length===1)return!0;for(let n=0;n<t.length;n++)if(t[n]!==e)return!0}function Xo(t,e,n,s){const i=t[0];if(i===null)return!1;if(e==="display"||e==="visibility")return!0;const o=t[t.length-1],r=Ln(i,e),a=Ln(o,e);return!r||!a?!1:zo(t)||(n==="spring"||di(n))&&s}function Ve(t){t.duration=0,t.type="keyframes"}const Yo=new Set(["opacity","clipPath","filter","transform"]),qo=Ke(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function Zo(t){const{motionValue:e,name:n,repeatDelay:s,repeatType:i,damping:o,type:r}=t;if(!(e?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:l,transformTemplate:c}=e.owner.getProps();return qo()&&n&&Yo.has(n)&&(n!=="transform"||!c)&&!l&&!s&&i!=="mirror"&&o!==0&&r!=="inertia"}const Jo=40;class Qo extends Je{constructor({autoplay:e=!0,delay:n=0,type:s="keyframes",repeat:i=0,repeatDelay:o=0,repeatType:r="loop",keyframes:a,name:l,motionValue:c,element:u,...h}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=I.now();const f={autoplay:e,delay:n,type:s,repeat:i,repeatDelay:o,repeatType:r,name:l,motionValue:c,element:u,...h},d=u?.KeyframeResolver||tn;this.keyframeResolver=new d(a,(m,p,x)=>this.onKeyframesResolved(m,p,f,!x),l,c,u),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(e,n,s,i){this.keyframeResolver=void 0;const{name:o,type:r,velocity:a,delay:l,isHandoff:c,onUpdate:u}=s;this.resolvedAt=I.now(),Xo(e,o,r,a)||((Y.instantAnimations||!l)&&u?.(Ze(e,s,n)),e[0]=e[e.length-1],Ve(s),s.repeat=0);const f={startTime:i?this.resolvedAt?this.resolvedAt-this.createdAt>Jo?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...s,keyframes:e},d=!c&&Zo(f),m=f.motionValue?.owner?.current,p=d?new _o({...f,element:m}):new Qe(f);p.finished.then(()=>{this.notifyFinished()}).catch(K),this.pendingTimeline&&(this.stopTimeline=p.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=p}get finished(){return this._animation?this.animation.finished:this._finished}then(e,n){return this.finished.finally(e).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),Io()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(e){this.animation.time=e}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(e){this.animation.speed=e}get startTime(){return this.animation.startTime}attachTimeline(e){return this._animation?this.stopTimeline=this.animation.attachTimeline(e):this.pendingTimeline=e,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}function pi(t,e,n,s=0,i=1){const o=Array.from(t).sort((c,u)=>c.sortNodePosition(u)).indexOf(e),r=t.size,a=(r-1)*s;return typeof n=="function"?n(o,r):i===1?o*s:a-o*s}const ta=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function ea(t){const e=ta.exec(t);if(!e)return[,];const[,n,s,i]=e;return[`--${n??s}`,i]}function gi(t,e,n=1){const[s,i]=ea(t);if(!s)return;const o=window.getComputedStyle(e).getPropertyValue(s);if(o){const r=o.trim();return Bs(r)?parseFloat(r):r}return _e(i)?gi(i,e,n+1):i}const na={type:"spring",stiffness:500,damping:25,restSpeed:10},sa=t=>({type:"spring",stiffness:550,damping:t===0?2*Math.sqrt(550):30,restSpeed:10}),ia={type:"keyframes",duration:.8},ra={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},oa=(t,{keyframes:e})=>e.length>2?ia:yt.has(t)?t.startsWith("scale")?sa(e[1]):na:ra,aa=t=>t!==null;function la(t,{repeat:e,repeatType:n="loop"},s){const i=t.filter(aa),o=e&&n!=="loop"&&e%2===1?0:i.length-1;return i[o]}function en(t,e){return t?.[e]??t?.default??t}function ua({when:t,delay:e,delayChildren:n,staggerChildren:s,staggerDirection:i,repeat:o,repeatType:r,repeatDelay:a,from:l,elapsed:c,...u}){return!!Object.keys(u).length}const nn=(t,e,n,s={},i,o)=>r=>{const a=en(s,t)||{},l=a.delay||s.delay||0;let{elapsed:c=0}=s;c=c-X(l);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:e.getVelocity(),...a,delay:-c,onUpdate:f=>{e.set(f),a.onUpdate&&a.onUpdate(f)},onComplete:()=>{r(),a.onComplete&&a.onComplete()},name:t,motionValue:e,element:o?void 0:i};ua(a)||Object.assign(u,oa(t,u)),u.duration&&(u.duration=X(u.duration)),u.repeatDelay&&(u.repeatDelay=X(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let h=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(Ve(u),u.delay===0&&(h=!0)),(Y.instantAnimations||Y.skipAnimations)&&(h=!0,Ve(u),u.delay=0),u.allowFlatten=!a.type&&!a.ease,h&&!o&&e.get()!==void 0){const f=la(u.keyframes,a);if(f!==void 0){V.update(()=>{u.onUpdate(f),u.onComplete()});return}}return a.isSync?new Qe(u):new Qo(u)};function kn(t){const e=[{},{}];return t?.values.forEach((n,s)=>{e[0][s]=n.get(),e[1][s]=n.getVelocity()}),e}function sn(t,e,n,s){if(typeof e=="function"){const[i,o]=kn(s);e=e(n!==void 0?n:t.custom,i,o)}if(typeof e=="string"&&(e=t.variants&&t.variants[e]),typeof e=="function"){const[i,o]=kn(s);e=e(n!==void 0?n:t.custom,i,o)}return e}function dt(t,e,n){const s=t.getProps();return sn(s,e,n!==void 0?n:s.custom,t)}const yi=new Set(["width","height","top","left","right","bottom",...gt]),Fn=30,ca=t=>!isNaN(parseFloat(t));class ha{constructor(e,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=s=>{const i=I.now();if(this.updatedAt!==i&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const o of this.dependents)o.dirty()},this.hasAnimated=!1,this.setCurrent(e),this.owner=n.owner}setCurrent(e){this.current=e,this.updatedAt=I.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=ca(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,n){this.events[e]||(this.events[e]=new $e);const s=this.events[e].add(n);return e==="change"?()=>{s(),V.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,n){this.passiveEffect=e,this.stopPassiveEffect=n}set(e){this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e)}setWithVelocity(e,n,s){this.set(n),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-s}jump(e,n=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(e){this.dependents||(this.dependents=new Set),this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const e=I.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>Fn)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,Fn);return Ns(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(e){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=e(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function mt(t,e){return new ha(t,e)}const Ce=t=>Array.isArray(t);function fa(t,e,n){t.hasValue(e)?t.getValue(e).set(n):t.addValue(e,mt(n))}function da(t){return Ce(t)?t[t.length-1]||0:t}function ma(t,e){const n=dt(t,e);let{transitionEnd:s={},transition:i={},...o}=n||{};o={...o,...s};for(const r in o){const a=da(o[r]);fa(t,r,a)}}const F=t=>!!(t&&t.getVelocity);function pa(t){return!!(F(t)&&t.add)}function De(t,e){const n=t.getValue("willChange");if(pa(n))return n.add(e);if(!n&&Y.WillChange){const s=new Y.WillChange("auto");t.addValue("willChange",s),s.add(e)}}function rn(t){return t.replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`)}const ga="framerAppearId",vi="data-"+rn(ga);function xi(t){return t.props[vi]}function ya({protectedKeys:t,needsAnimating:e},n){const s=t.hasOwnProperty(n)&&e[n]!==!0;return e[n]=!1,s}function Ti(t,e,{delay:n=0,transitionOverride:s,type:i}={}){let{transition:o=t.getDefaultTransition(),transitionEnd:r,...a}=e;s&&(o=s);const l=[],c=i&&t.animationState&&t.animationState.getState()[i];for(const u in a){const h=t.getValue(u,t.latestValues[u]??null),f=a[u];if(f===void 0||c&&ya(c,u))continue;const d={delay:n,...en(o||{},u)},m=h.get();if(m!==void 0&&!h.isAnimating&&!Array.isArray(f)&&f===m&&!d.velocity)continue;let p=!1;if(window.MotionHandoffAnimation){const g=xi(t);if(g){const T=window.MotionHandoffAnimation(g,u,V);T!==null&&(d.startTime=T,p=!0)}}De(t,u),h.start(nn(u,h,f,t.shouldReduceMotion&&yi.has(u)?{type:!1}:d,t,p));const x=h.animation;x&&l.push(x)}return r&&Promise.all(l).then(()=>{V.update(()=>{r&&ma(t,r)})}),l}function Me(t,e,n={}){const s=dt(t,e,n.type==="exit"?t.presenceContext?.custom:void 0);let{transition:i=t.getDefaultTransition()||{}}=s||{};n.transitionOverride&&(i=n.transitionOverride);const o=s?()=>Promise.all(Ti(t,s,n)):()=>Promise.resolve(),r=t.variantChildren&&t.variantChildren.size?(l=0)=>{const{delayChildren:c=0,staggerChildren:u,staggerDirection:h}=i;return va(t,e,l,c,u,h,n)}:()=>Promise.resolve(),{when:a}=i;if(a){const[l,c]=a==="beforeChildren"?[o,r]:[r,o];return l().then(()=>c())}else return Promise.all([o(),r(n.delay)])}function va(t,e,n=0,s=0,i=0,o=1,r){const a=[];for(const l of t.variantChildren)l.notify("AnimationStart",e),a.push(Me(l,e,{...r,delay:n+(typeof s=="function"?0:s)+pi(t.variantChildren,l,s,i,o)}).then(()=>l.notify("AnimationComplete",e)));return Promise.all(a)}function xa(t,e,n={}){t.notify("AnimationStart",e);let s;if(Array.isArray(e)){const i=e.map(o=>Me(t,o,n));s=Promise.all(i)}else if(typeof e=="string")s=Me(t,e,n);else{const i=typeof e=="function"?dt(t,e,n.custom):e;s=Promise.all(Ti(t,i,n))}return s.then(()=>{t.notify("AnimationComplete",e)})}const Ta={test:t=>t==="auto",parse:t=>t},Pi=t=>e=>e.test(t),Si=[pt,y,_,q,_r,Hr,Ta],In=t=>Si.find(Pi(t));function Pa(t){return typeof t=="number"?t===0:t!==null?t==="none"||t==="0"||Os(t):!0}const Sa=new Set(["brightness","contrast","saturate","opacity"]);function ba(t){const[e,n]=t.slice(0,-1).split("(");if(e==="drop-shadow")return t;const[s]=n.match(ze)||[];if(!s)return t;const i=n.replace(s,"");let o=Sa.has(e)?1:0;return s!==n&&(o*=100),e+"("+o+i+")"}const wa=/\b([a-z-]*)\(.*?\)/gu,Ee={...Q,getAnimatableNone:t=>{const e=t.match(wa);return e?e.map(ba).join(" "):t}},Bn={...pt,transform:Math.round},Aa={rotate:q,rotateX:q,rotateY:q,rotateZ:q,scale:It,scaleX:It,scaleY:It,scaleZ:It,skew:q,skewX:q,skewY:q,distance:y,translateX:y,translateY:y,translateZ:y,x:y,y,z:y,perspective:y,transformPerspective:y,opacity:Vt,originX:Sn,originY:Sn,originZ:y},on={borderWidth:y,borderTopWidth:y,borderRightWidth:y,borderBottomWidth:y,borderLeftWidth:y,borderRadius:y,radius:y,borderTopLeftRadius:y,borderTopRightRadius:y,borderBottomRightRadius:y,borderBottomLeftRadius:y,width:y,maxWidth:y,height:y,maxHeight:y,top:y,right:y,bottom:y,left:y,inset:y,insetBlock:y,insetBlockStart:y,insetBlockEnd:y,insetInline:y,insetInlineStart:y,insetInlineEnd:y,padding:y,paddingTop:y,paddingRight:y,paddingBottom:y,paddingLeft:y,paddingBlock:y,paddingBlockStart:y,paddingBlockEnd:y,paddingInline:y,paddingInlineStart:y,paddingInlineEnd:y,margin:y,marginTop:y,marginRight:y,marginBottom:y,marginLeft:y,marginBlock:y,marginBlockStart:y,marginBlockEnd:y,marginInline:y,marginInlineStart:y,marginInlineEnd:y,backgroundPositionX:y,backgroundPositionY:y,...Aa,zIndex:Bn,fillOpacity:Vt,strokeOpacity:Vt,numOctaves:Bn},Va={...on,color:M,backgroundColor:M,outlineColor:M,fill:M,stroke:M,borderColor:M,borderTopColor:M,borderRightColor:M,borderBottomColor:M,borderLeftColor:M,filter:Ee,WebkitFilter:Ee},bi=t=>Va[t];function wi(t,e){let n=bi(t);return n!==Ee&&(n=Q),n.getAnimatableNone?n.getAnimatableNone(e):void 0}const Ca=new Set(["auto","none","0"]);function Da(t,e,n){let s=0,i;for(;s<t.length&&!i;){const o=t[s];typeof o=="string"&&!Ca.has(o)&&Ct(o).values.length&&(i=t[s]),s++}if(i&&n)for(const o of e)t[o]=wi(n,i)}class Ma extends tn{constructor(e,n,s,i,o){super(e,n,s,i,o,!0)}readKeyframes(){const{unresolvedKeyframes:e,element:n,name:s}=this;if(!n||!n.current)return;super.readKeyframes();for(let u=0;u<e.length;u++){let h=e[u];if(typeof h=="string"&&(h=h.trim(),_e(h))){const f=gi(h,n.current);f!==void 0&&(e[u]=f),u===e.length-1&&(this.finalKeyframe=h)}}if(this.resolveNoneKeyframes(),!yi.has(s)||e.length!==2)return;const[i,o]=e,r=In(i),a=In(o),l=Pn(i),c=Pn(o);if(l!==c&&Z[s]){this.needsMeasurement=!0;return}if(r!==a)if(En(r)&&En(a))for(let u=0;u<e.length;u++){const h=e[u];typeof h=="string"&&(e[u]=parseFloat(h))}else Z[s]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:e,name:n}=this,s=[];for(let i=0;i<e.length;i++)(e[i]===null||Pa(e[i]))&&s.push(i);s.length&&Da(e,s,n)}measureInitialState(){const{element:e,unresolvedKeyframes:n,name:s}=this;if(!e||!e.current)return;s==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=Z[s](e.measureViewportBox(),window.getComputedStyle(e.current)),n[0]=this.measuredOrigin;const i=n[n.length-1];i!==void 0&&e.getValue(s,i).jump(i,!1)}measureEndState(){const{element:e,name:n,unresolvedKeyframes:s}=this;if(!e||!e.current)return;const i=e.getValue(n);i&&i.jump(this.measuredOrigin,!1);const o=s.length-1,r=s[o];s[o]=Z[n](e.measureViewportBox(),window.getComputedStyle(e.current)),r!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=r),this.removedTransforms?.length&&this.removedTransforms.forEach(([a,l])=>{e.getValue(a).set(l)}),this.resolveNoneKeyframes()}}function Ea(t,e,n){if(t==null)return[];if(t instanceof EventTarget)return[t];if(typeof t=="string"){let s=document;const i=n?.[t]??s.querySelectorAll(t);return i?Array.from(i):[]}return Array.from(t).filter(s=>s!=null)}const Ai=(t,e)=>e&&typeof t=="number"?e.transform(t):t;function Ra(t){return js(t)&&"offsetHeight"in t}const{schedule:an}=qs(queueMicrotask,!1),G={x:!1,y:!1};function Vi(){return G.x||G.y}function La(t){return t==="x"||t==="y"?G[t]?null:(G[t]=!0,()=>{G[t]=!1}):G.x||G.y?null:(G.x=G.y=!0,()=>{G.x=G.y=!1})}function Ci(t,e){const n=Ea(t),s=new AbortController,i={passive:!0,...e,signal:s.signal};return[n,i,()=>s.abort()]}function jn(t){return!(t.pointerType==="touch"||Vi())}function ka(t,e,n={}){const[s,i,o]=Ci(t,n),r=a=>{if(!jn(a))return;const{target:l}=a,c=e(l,a);if(typeof c!="function"||!l)return;const u=h=>{jn(h)&&(c(h),l.removeEventListener("pointerleave",u))};l.addEventListener("pointerleave",u,i)};return s.forEach(a=>{a.addEventListener("pointerenter",r,i)}),o}const Di=(t,e)=>e?t===e?!0:Di(t,e.parentElement):!1,ln=t=>t.pointerType==="mouse"?typeof t.button!="number"||t.button<=0:t.isPrimary!==!1,Fa=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function Mi(t){return Fa.has(t.tagName)||t.isContentEditable===!0}const Ot=new WeakSet;function On(t){return e=>{e.key==="Enter"&&t(e)}}function ie(t,e){t.dispatchEvent(new PointerEvent("pointer"+e,{isPrimary:!0,bubbles:!0}))}const Ia=(t,e)=>{const n=t.currentTarget;if(!n)return;const s=On(()=>{if(Ot.has(n))return;ie(n,"down");const i=On(()=>{ie(n,"up")}),o=()=>ie(n,"cancel");n.addEventListener("keyup",i,e),n.addEventListener("blur",o,e)});n.addEventListener("keydown",s,e),n.addEventListener("blur",()=>n.removeEventListener("keydown",s),e)};function Nn(t){return ln(t)&&!Vi()}function Ba(t,e,n={}){const[s,i,o]=Ci(t,n),r=a=>{const l=a.currentTarget;if(!Nn(a))return;Ot.add(l);const c=e(l,a),u=(d,m)=>{window.removeEventListener("pointerup",h),window.removeEventListener("pointercancel",f),Ot.has(l)&&Ot.delete(l),Nn(d)&&typeof c=="function"&&c(d,{success:m})},h=d=>{u(d,l===window||l===document||n.useGlobalTarget||Di(l,d.target))},f=d=>{u(d,!1)};window.addEventListener("pointerup",h,i),window.addEventListener("pointercancel",f,i)};return s.forEach(a=>{(n.useGlobalTarget?window:a).addEventListener("pointerdown",r,i),Ra(a)&&(a.addEventListener("focus",c=>Ia(c,i)),!Mi(a)&&!a.hasAttribute("tabindex")&&(a.tabIndex=0))}),o}function Ei(t){return js(t)&&"ownerSVGElement"in t}function ja(t){return Ei(t)&&t.tagName==="svg"}const Oa=[...Si,M,Q],Na=t=>Oa.find(Pi(t)),Un=()=>({translate:0,scale:1,origin:0,originPoint:0}),ct=()=>({x:Un(),y:Un()}),Wn=()=>({min:0,max:0}),R=()=>({x:Wn(),y:Wn()}),Re={current:null},Ri={current:!1},Ua=typeof window<"u";function Wa(){if(Ri.current=!0,!!Ua)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),e=()=>Re.current=t.matches;t.addEventListener("change",e),e()}else Re.current=!1}const Ka=new WeakMap;function Xt(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}function Dt(t){return typeof t=="string"||Array.isArray(t)}const un=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],cn=["initial",...un];function Yt(t){return Xt(t.animate)||cn.some(e=>Dt(t[e]))}function Li(t){return!!(Yt(t)||t.variants)}function $a(t,e,n){for(const s in e){const i=e[s],o=n[s];if(F(i))t.addValue(s,i);else if(F(o))t.addValue(s,mt(i,{owner:t}));else if(o!==i)if(t.hasValue(s)){const r=t.getValue(s);r.liveStyle===!0?r.jump(i):r.hasAnimated||r.set(i)}else{const r=t.getStaticValue(s);t.addValue(s,mt(r!==void 0?r:i,{owner:t}))}}for(const s in n)e[s]===void 0&&t.removeValue(s);return e}const Kn=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let Gt={};function ki(t){Gt=t}function Ga(){return Gt}class Ha{scrapeMotionValuesFromProps(e,n,s){return{}}constructor({parent:e,props:n,presenceContext:s,reducedMotionConfig:i,blockInitialAnimation:o,visualState:r},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=tn,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const f=I.now();this.renderScheduledAt<f&&(this.renderScheduledAt=f,V.render(this.render,!1,!0))};const{latestValues:l,renderState:c}=r;this.latestValues=l,this.baseTarget={...l},this.initialValues=n.initial?{...l}:{},this.renderState=c,this.parent=e,this.props=n,this.presenceContext=s,this.depth=e?e.depth+1:0,this.reducedMotionConfig=i,this.options=a,this.blockInitialAnimation=!!o,this.isControllingVariants=Yt(n),this.isVariantNode=Li(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);const{willChange:u,...h}=this.scrapeMotionValuesFromProps(n,{},this);for(const f in h){const d=h[f];l[f]!==void 0&&F(d)&&d.set(l[f])}}mount(e){this.current=e,Ka.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((n,s)=>this.bindToMotionValue(s,n)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(Ri.current||Wa(),this.shouldReduceMotion=Re.current),this.parent?.addChild(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),J(this.notifyUpdate),J(this.render),this.valueSubscriptions.forEach(e=>e()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const e in this.events)this.events[e].clear();for(const e in this.features){const n=this.features[e];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(e){this.children.add(e),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(e)}removeChild(e){this.children.delete(e),this.enteringChildren&&this.enteringChildren.delete(e)}bindToMotionValue(e,n){this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)();const s=yt.has(e);s&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",r=>{this.latestValues[e]=r,this.props.onUpdate&&V.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let o;typeof window<"u"&&window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,e,n)),this.valueSubscriptions.set(e,()=>{i(),o&&o(),n.owner&&n.stop()})}sortNodePosition(e){return!this.current||!this.sortInstanceNodePosition||this.type!==e.type?0:this.sortInstanceNodePosition(this.current,e.current)}updateFeatures(){let e="animation";for(e in Gt){const n=Gt[e];if(!n)continue;const{isEnabled:s,Feature:i}=n;if(!this.features[e]&&i&&s(this.props)&&(this.features[e]=new i(this)),this.features[e]){const o=this.features[e];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):R()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,n){this.latestValues[e]=n}update(e,n){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let s=0;s<Kn.length;s++){const i=Kn[s];this.propEventSubscriptions[i]&&(this.propEventSubscriptions[i](),delete this.propEventSubscriptions[i]);const o="on"+i,r=e[o];r&&(this.propEventSubscriptions[i]=this.on(i,r))}this.prevMotionValues=$a(this,this.scrapeMotionValuesFromProps(e,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(e){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(e),()=>n.variantChildren.delete(e)}addValue(e,n){const s=this.values.get(e);n!==s&&(s&&this.removeValue(e),this.bindToMotionValue(e,n),this.values.set(e,n),this.latestValues[e]=n.get())}removeValue(e){this.values.delete(e);const n=this.valueSubscriptions.get(e);n&&(n(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,n){if(this.props.values&&this.props.values[e])return this.props.values[e];let s=this.values.get(e);return s===void 0&&n!==void 0&&(s=mt(n===null?void 0:n,{owner:this}),this.addValue(e,s)),s}readValue(e,n){let s=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return s!=null&&(typeof s=="string"&&(Bs(s)||Os(s))?s=parseFloat(s):!Na(s)&&Q.test(n)&&(s=wi(e,n)),this.setBaseTarget(e,F(s)?s.get():s)),F(s)?s.get():s}setBaseTarget(e,n){this.baseTarget[e]=n}getBaseTarget(e){const{initial:n}=this.props;let s;if(typeof n=="string"||typeof n=="object"){const o=sn(this.props,n,this.presenceContext?.custom);o&&(s=o[e])}if(n&&s!==void 0)return s;const i=this.getBaseTargetFromProps(this.props,e);return i!==void 0&&!F(i)?i:this.initialValues[e]!==void 0&&s===void 0?void 0:this.baseTarget[e]}on(e,n){return this.events[e]||(this.events[e]=new $e),this.events[e].add(n)}notify(e,...n){this.events[e]&&this.events[e].notify(...n)}scheduleRenderMicrotask(){an.render(this.render)}}class Fi extends Ha{constructor(){super(...arguments),this.KeyframeResolver=Ma}sortInstanceNodePosition(e,n){return e.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(e,n){const s=e.style;return s?s[n]:void 0}removeValueFromRenderState(e,{vars:n,style:s}){delete n[e],delete s[e]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:e}=this.props;F(e)&&(this.childSubscription=e.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}class tt{constructor(e){this.isMounted=!1,this.node=e}update(){}}function Ii({top:t,left:e,right:n,bottom:s}){return{x:{min:e,max:n},y:{min:t,max:s}}}function _a({x:t,y:e}){return{top:e.min,right:t.max,bottom:e.max,left:t.min}}function za(t,e){if(!e)return t;const n=e({x:t.left,y:t.top}),s=e({x:t.right,y:t.bottom});return{top:n.y,left:n.x,bottom:s.y,right:s.x}}function re(t){return t===void 0||t===1}function Le({scale:t,scaleX:e,scaleY:n}){return!re(t)||!re(e)||!re(n)}function st(t){return Le(t)||Bi(t)||t.z||t.rotate||t.rotateX||t.rotateY||t.skewX||t.skewY}function Bi(t){return $n(t.x)||$n(t.y)}function $n(t){return t&&t!=="0%"}function Ht(t,e,n){const s=t-n,i=e*s;return n+i}function Gn(t,e,n,s,i){return i!==void 0&&(t=Ht(t,i,s)),Ht(t,n,s)+e}function ke(t,e=0,n=1,s,i){t.min=Gn(t.min,e,n,s,i),t.max=Gn(t.max,e,n,s,i)}function ji(t,{x:e,y:n}){ke(t.x,e.translate,e.scale,e.originPoint),ke(t.y,n.translate,n.scale,n.originPoint)}const Hn=.999999999999,_n=1.0000000000001;function Xa(t,e,n,s=!1){const i=n.length;if(!i)return;e.x=e.y=1;let o,r;for(let a=0;a<i;a++){o=n[a],r=o.projectionDelta;const{visualElement:l}=o.options;l&&l.props.style&&l.props.style.display==="contents"||(s&&o.options.layoutScroll&&o.scroll&&o!==o.root&&ft(t,{x:-o.scroll.offset.x,y:-o.scroll.offset.y}),r&&(e.x*=r.x.scale,e.y*=r.y.scale,ji(t,r)),s&&st(o.latestValues)&&ft(t,o.latestValues))}e.x<_n&&e.x>Hn&&(e.x=1),e.y<_n&&e.y>Hn&&(e.y=1)}function ht(t,e){t.min=t.min+e,t.max=t.max+e}function zn(t,e,n,s,i=.5){const o=C(t.min,t.max,i);ke(t,e,n,o,s)}function ft(t,e){zn(t.x,e.x,e.scaleX,e.scale,e.originX),zn(t.y,e.y,e.scaleY,e.scale,e.originY)}function Oi(t,e){return Ii(za(t.getBoundingClientRect(),e))}function Ya(t,e,n){const s=Oi(t,n),{scroll:i}=e;return i&&(ht(s.x,i.offset.x),ht(s.y,i.offset.y)),s}const qa={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Za=gt.length;function Ja(t,e,n){let s="",i=!0;for(let o=0;o<Za;o++){const r=gt[o],a=t[r];if(a===void 0)continue;let l=!0;if(typeof a=="number")l=a===(r.startsWith("scale")?1:0);else{const c=parseFloat(a);l=r.startsWith("scale")?c===1:c===0}if(!l||n){const c=Ai(a,on[r]);if(!l){i=!1;const u=qa[r]||r;s+=`${u}(${c}) `}n&&(e[r]=c)}}return s=s.trim(),n?s=n(e,i?"":s):i&&(s="none"),s}function hn(t,e,n){const{style:s,vars:i,transformOrigin:o}=t;let r=!1,a=!1;for(const l in e){const c=e[l];if(yt.has(l)){r=!0;continue}else if(Js(l)){i[l]=c;continue}else{const u=Ai(c,on[l]);l.startsWith("origin")?(a=!0,o[l]=u):s[l]=u}}if(e.transform||(r||n?s.transform=Ja(e,t.transform,n):s.transform&&(s.transform="none")),a){const{originX:l="50%",originY:c="50%",originZ:u=0}=o;s.transformOrigin=`${l} ${c} ${u}`}}function Ni(t,{style:e,vars:n},s,i){const o=t.style;let r;for(r in e)o[r]=e[r];i?.applyProjectionStyles(o,s);for(r in n)o.setProperty(r,n[r])}function Xn(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}const vt={correct:(t,e)=>{if(!e.target)return t;if(typeof t=="string")if(y.test(t))t=parseFloat(t);else return t;const n=Xn(t,e.target.x),s=Xn(t,e.target.y);return`${n}% ${s}%`}},Qa={correct:(t,{treeScale:e,projectionDelta:n})=>{const s=t,i=Q.parse(t);if(i.length>5)return s;const o=Q.createTransformer(t),r=typeof i[0]!="number"?1:0,a=n.x.scale*e.x,l=n.y.scale*e.y;i[0+r]/=a,i[1+r]/=l;const c=C(a,l,.5);return typeof i[2+r]=="number"&&(i[2+r]/=c),typeof i[3+r]=="number"&&(i[3+r]/=c),o(i)}},Fe={borderRadius:{...vt,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:vt,borderTopRightRadius:vt,borderBottomLeftRadius:vt,borderBottomRightRadius:vt,boxShadow:Qa};function Ui(t,{layout:e,layoutId:n}){return yt.has(t)||t.startsWith("origin")||(e||n!==void 0)&&(!!Fe[t]||t==="opacity")}function fn(t,e,n){const s=t.style,i=e?.style,o={};if(!s)return o;for(const r in s)(F(s[r])||i&&F(i[r])||Ui(r,t)||n?.getValue(r)?.liveStyle!==void 0)&&(o[r]=s[r]);return o}function tl(t){return window.getComputedStyle(t)}class el extends Fi{constructor(){super(...arguments),this.type="html",this.renderInstance=Ni}readValueFromInstance(e,n){if(yt.has(n))return this.projection?.isProjecting?Pe(n):Eo(e,n);{const s=tl(e),i=(Js(n)?s.getPropertyValue(n):s[n])||0;return typeof i=="string"?i.trim():i}}measureInstanceViewportBox(e,{transformPagePoint:n}){return Oi(e,n)}build(e,n,s){hn(e,n,s.transformTemplate)}scrapeMotionValuesFromProps(e,n,s){return fn(e,n,s)}}const nl={offset:"stroke-dashoffset",array:"stroke-dasharray"},sl={offset:"strokeDashoffset",array:"strokeDasharray"};function il(t,e,n=1,s=0,i=!0){t.pathLength=1;const o=i?nl:sl;t[o.offset]=`${-s}`,t[o.array]=`${e} ${n}`}const rl=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function Wi(t,{attrX:e,attrY:n,attrScale:s,pathLength:i,pathSpacing:o=1,pathOffset:r=0,...a},l,c,u){if(hn(t,a,c),l){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:h,style:f}=t;h.transform&&(f.transform=h.transform,delete h.transform),(f.transform||h.transformOrigin)&&(f.transformOrigin=h.transformOrigin??"50% 50%",delete h.transformOrigin),f.transform&&(f.transformBox=u?.transformBox??"fill-box",delete h.transformBox);for(const d of rl)h[d]!==void 0&&(f[d]=h[d],delete h[d]);e!==void 0&&(h.x=e),n!==void 0&&(h.y=n),s!==void 0&&(h.scale=s),i!==void 0&&il(h,i,o,r,!1)}const Ki=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),$i=t=>typeof t=="string"&&t.toLowerCase()==="svg";function ol(t,e,n,s){Ni(t,e,void 0,s);for(const i in e.attrs)t.setAttribute(Ki.has(i)?i:rn(i),e.attrs[i])}function Gi(t,e,n){const s=fn(t,e,n);for(const i in t)if(F(t[i])||F(e[i])){const o=gt.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;s[o]=t[i]}return s}class al extends Fi{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=R}getBaseTargetFromProps(e,n){return e[n]}readValueFromInstance(e,n){if(yt.has(n)){const s=bi(n);return s&&s.default||0}return n=Ki.has(n)?n:rn(n),e.getAttribute(n)}scrapeMotionValuesFromProps(e,n,s){return Gi(e,n,s)}build(e,n,s){Wi(e,n,this.isSVGTag,s.transformTemplate,s.style)}renderInstance(e,n,s,i){ol(e,n,s,i)}mount(e){this.isSVGTag=$i(e.tagName),super.mount(e)}}const ll=cn.length;function Hi(t){if(!t)return;if(!t.isControllingVariants){const n=t.parent?Hi(t.parent)||{}:{};return t.props.initial!==void 0&&(n.initial=t.props.initial),n}const e={};for(let n=0;n<ll;n++){const s=cn[n],i=t.props[s];(Dt(i)||i===!1)&&(e[s]=i)}return e}function _i(t,e){if(!Array.isArray(e))return!1;const n=e.length;if(n!==t.length)return!1;for(let s=0;s<n;s++)if(e[s]!==t[s])return!1;return!0}const ul=[...un].reverse(),cl=un.length;function hl(t){return e=>Promise.all(e.map(({animation:n,options:s})=>xa(t,n,s)))}function fl(t){let e=hl(t),n=Yn(),s=!0;const i=l=>(c,u)=>{const h=dt(t,u,l==="exit"?t.presenceContext?.custom:void 0);if(h){const{transition:f,transitionEnd:d,...m}=h;c={...c,...m,...d}}return c};function o(l){e=l(t)}function r(l){const{props:c}=t,u=Hi(t.parent)||{},h=[],f=new Set;let d={},m=1/0;for(let x=0;x<cl;x++){const g=ul[x],T=n[g],v=c[g]!==void 0?c[g]:u[g],w=Dt(v),S=g===l?T.isActive:null;S===!1&&(m=x);let A=v===u[g]&&v!==c[g]&&w;if(A&&s&&t.manuallyAnimateOnMount&&(A=!1),T.protectedKeys={...d},!T.isActive&&S===null||!v&&!T.prevProp||Xt(v)||typeof v=="boolean")continue;const E=dl(T.prevProp,v);let b=E||g===l&&T.isActive&&!A&&w||x>m&&w,j=!1;const O=Array.isArray(v)?v:[v];let at=O.reduce(i(g),{});S===!1&&(at={});const{prevResolvedValues:gn={}}=T,xr={...gn,...at},yn=L=>{b=!0,f.has(L)&&(j=!0,f.delete(L)),T.needsAnimating[L]=!0;const N=t.getValue(L);N&&(N.liveStyle=!1)};for(const L in xr){const N=at[L],et=gn[L];if(d.hasOwnProperty(L))continue;let lt=!1;Ce(N)&&Ce(et)?lt=!_i(N,et):lt=N!==et,lt?N!=null?yn(L):f.add(L):N!==void 0&&f.has(L)?yn(L):T.protectedKeys[L]=!0}T.prevProp=v,T.prevResolvedValues=at,T.isActive&&(d={...d,...at}),s&&t.blockInitialAnimation&&(b=!1);const vn=A&&E;b&&(!vn||j)&&h.push(...O.map(L=>{const N={type:g};if(typeof L=="string"&&s&&!vn&&t.manuallyAnimateOnMount&&t.parent){const{parent:et}=t,lt=dt(et,L);if(et.enteringChildren&&lt){const{delayChildren:Tr}=lt.transition||{};N.delay=pi(et.enteringChildren,t,Tr)}}return{animation:L,options:N}}))}if(f.size){const x={};if(typeof c.initial!="boolean"){const g=dt(t,Array.isArray(c.initial)?c.initial[0]:c.initial);g&&g.transition&&(x.transition=g.transition)}f.forEach(g=>{const T=t.getBaseTarget(g),v=t.getValue(g);v&&(v.liveStyle=!0),x[g]=T??null}),h.push({animation:x})}let p=!!h.length;return s&&(c.initial===!1||c.initial===c.animate)&&!t.manuallyAnimateOnMount&&(p=!1),s=!1,p?e(h):Promise.resolve()}function a(l,c){if(n[l].isActive===c)return Promise.resolve();t.variantChildren?.forEach(h=>h.animationState?.setActive(l,c)),n[l].isActive=c;const u=r(l);for(const h in n)n[h].protectedKeys={};return u}return{animateChanges:r,setActive:a,setAnimateFunction:o,getState:()=>n,reset:()=>{n=Yn()}}}function dl(t,e){return typeof e=="string"?e!==t:Array.isArray(e)?!_i(e,t):!1}function nt(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Yn(){return{animate:nt(!0),whileInView:nt(),whileHover:nt(),whileTap:nt(),whileDrag:nt(),whileFocus:nt(),exit:nt()}}function qn(t,e){t.min=e.min,t.max=e.max}function $(t,e){qn(t.x,e.x),qn(t.y,e.y)}function Zn(t,e){t.translate=e.translate,t.scale=e.scale,t.originPoint=e.originPoint,t.origin=e.origin}const zi=1e-4,ml=1-zi,pl=1+zi,Xi=.01,gl=0-Xi,yl=0+Xi;function B(t){return t.max-t.min}function vl(t,e,n){return Math.abs(t-e)<=n}function Jn(t,e,n,s=.5){t.origin=s,t.originPoint=C(e.min,e.max,t.origin),t.scale=B(n)/B(e),t.translate=C(n.min,n.max,t.origin)-t.originPoint,(t.scale>=ml&&t.scale<=pl||isNaN(t.scale))&&(t.scale=1),(t.translate>=gl&&t.translate<=yl||isNaN(t.translate))&&(t.translate=0)}function bt(t,e,n,s){Jn(t.x,e.x,n.x,s?s.originX:void 0),Jn(t.y,e.y,n.y,s?s.originY:void 0)}function Qn(t,e,n){t.min=n.min+e.min,t.max=t.min+B(e)}function xl(t,e,n){Qn(t.x,e.x,n.x),Qn(t.y,e.y,n.y)}function ts(t,e,n){t.min=e.min-n.min,t.max=t.min+B(e)}function _t(t,e,n){ts(t.x,e.x,n.x),ts(t.y,e.y,n.y)}function es(t,e,n,s,i){return t-=e,t=Ht(t,1/n,s),i!==void 0&&(t=Ht(t,1/i,s)),t}function Tl(t,e=0,n=1,s=.5,i,o=t,r=t){if(_.test(e)&&(e=parseFloat(e),e=C(r.min,r.max,e/100)-r.min),typeof e!="number")return;let a=C(o.min,o.max,s);t===o&&(a-=e),t.min=es(t.min,e,n,a,i),t.max=es(t.max,e,n,a,i)}function ns(t,e,[n,s,i],o,r){Tl(t,e[n],e[s],e[i],e.scale,o,r)}const Pl=["x","scaleX","originX"],Sl=["y","scaleY","originY"];function ss(t,e,n,s){ns(t.x,e,Pl,n?n.x:void 0,s?s.x:void 0),ns(t.y,e,Sl,n?n.y:void 0,s?s.y:void 0)}function is(t){return t.translate===0&&t.scale===1}function Yi(t){return is(t.x)&&is(t.y)}function rs(t,e){return t.min===e.min&&t.max===e.max}function bl(t,e){return rs(t.x,e.x)&&rs(t.y,e.y)}function os(t,e){return Math.round(t.min)===Math.round(e.min)&&Math.round(t.max)===Math.round(e.max)}function qi(t,e){return os(t.x,e.x)&&os(t.y,e.y)}function as(t){return B(t.x)/B(t.y)}function ls(t,e){return t.translate===e.translate&&t.scale===e.scale&&t.originPoint===e.originPoint}function U(t){return[t("x"),t("y")]}function wl(t,e,n){let s="";const i=t.x.translate/e.x,o=t.y.translate/e.y,r=n?.z||0;if((i||o||r)&&(s=`translate3d(${i}px, ${o}px, ${r}px) `),(e.x!==1||e.y!==1)&&(s+=`scale(${1/e.x}, ${1/e.y}) `),n){const{transformPerspective:c,rotate:u,rotateX:h,rotateY:f,skewX:d,skewY:m}=n;c&&(s=`perspective(${c}px) ${s}`),u&&(s+=`rotate(${u}deg) `),h&&(s+=`rotateX(${h}deg) `),f&&(s+=`rotateY(${f}deg) `),d&&(s+=`skewX(${d}deg) `),m&&(s+=`skewY(${m}deg) `)}const a=t.x.scale*e.x,l=t.y.scale*e.y;return(a!==1||l!==1)&&(s+=`scale(${a}, ${l})`),s||"none"}const Zi=["TopLeft","TopRight","BottomLeft","BottomRight"],Al=Zi.length,us=t=>typeof t=="string"?parseFloat(t):t,cs=t=>typeof t=="number"||y.test(t);function Vl(t,e,n,s,i,o){i?(t.opacity=C(0,n.opacity??1,Cl(s)),t.opacityExit=C(e.opacity??1,0,Dl(s))):o&&(t.opacity=C(e.opacity??1,n.opacity??1,s));for(let r=0;r<Al;r++){const a=`border${Zi[r]}Radius`;let l=hs(e,a),c=hs(n,a);if(l===void 0&&c===void 0)continue;l||(l=0),c||(c=0),l===0||c===0||cs(l)===cs(c)?(t[a]=Math.max(C(us(l),us(c),s),0),(_.test(c)||_.test(l))&&(t[a]+="%")):t[a]=c}(e.rotate||n.rotate)&&(t.rotate=C(e.rotate||0,n.rotate||0,s))}function hs(t,e){return t[e]!==void 0?t[e]:t.borderRadius}const Cl=Ji(0,.5,_s),Dl=Ji(.5,.95,K);function Ji(t,e,n){return s=>s<t?0:s>e?1:n(At(t,e,s))}function Ml(t,e,n){const s=F(t)?t:mt(t);return s.start(nn("",s,e,n)),s.animation}function Mt(t,e,n,s={passive:!0}){return t.addEventListener(e,n,s),()=>t.removeEventListener(e,n)}const El=(t,e)=>t.depth-e.depth;class Rl{constructor(){this.children=[],this.isDirty=!1}add(e){Ne(this.children,e),this.isDirty=!0}remove(e){Ue(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(El),this.isDirty=!1,this.children.forEach(e)}}function Ll(t,e){const n=I.now(),s=({timestamp:i})=>{const o=i-n;o>=e&&(J(s),t(o-e))};return V.setup(s,!0),()=>J(s)}function Nt(t){return F(t)?t.get():t}class kl{constructor(){this.members=[]}add(e){Ne(this.members,e),e.scheduleRender()}remove(e){if(Ue(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(e){const n=this.members.findIndex(i=>e===i);if(n===0)return!1;let s;for(let i=n;i>=0;i--){const o=this.members[i];if(o.isPresent!==!1){s=o;break}}return s?(this.promote(s),!0):!1}promote(e,n){const s=this.lead;if(e!==s&&(this.prevLead=s,this.lead=e,e.show(),s)){s.instance&&s.scheduleRender(),e.scheduleRender(),e.resumeFrom=s,n&&(e.resumeFrom.preserveOpacity=!0),s.snapshot&&(e.snapshot=s.snapshot,e.snapshot.latestValues=s.animationValues||s.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:i}=e.options;i===!1&&s.hide()}}exitAnimationComplete(){this.members.forEach(e=>{const{options:n,resumingFrom:s}=e;n.onExitComplete&&n.onExitComplete(),s&&s.options.onExitComplete&&s.options.onExitComplete()})}scheduleRender(){this.members.forEach(e=>{e.instance&&e.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}const Ut={hasAnimatedSinceResize:!0,hasEverUpdated:!1},oe=["","X","Y","Z"],Fl=1e3;let Il=0;function ae(t,e,n,s){const{latestValues:i}=e;i[t]&&(n[t]=i[t],e.setStaticValue(t,0),s&&(s[t]=0))}function Qi(t){if(t.hasCheckedOptimisedAppear=!0,t.root===t)return;const{visualElement:e}=t.options;if(!e)return;const n=xi(e);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:i,layoutId:o}=t.options;window.MotionCancelOptimisedAnimation(n,"transform",V,!(i||o))}const{parent:s}=t;s&&!s.hasCheckedOptimisedAppear&&Qi(s)}function tr({attachResizeListener:t,defaultParent:e,measureScroll:n,checkIsScrollRoot:s,resetTransform:i}){return class{constructor(r={},a=e?.()){this.id=Il++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(Ol),this.nodes.forEach(Kl),this.nodes.forEach($l),this.nodes.forEach(Nl)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=r,this.root=a?a.root||a:this,this.path=a?[...a.path,a]:[],this.parent=a,this.depth=a?a.depth+1:0;for(let l=0;l<this.path.length;l++)this.path[l].shouldResetTransform=!0;this.root===this&&(this.nodes=new Rl)}addEventListener(r,a){return this.eventHandlers.has(r)||this.eventHandlers.set(r,new $e),this.eventHandlers.get(r).add(a)}notifyListeners(r,...a){const l=this.eventHandlers.get(r);l&&l.notify(...a)}hasListeners(r){return this.eventHandlers.has(r)}mount(r){if(this.instance)return;this.isSVG=Ei(r)&&!ja(r),this.instance=r;const{layoutId:a,layout:l,visualElement:c}=this.options;if(c&&!c.current&&c.mount(r),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(l||a)&&(this.isLayoutDirty=!0),t){let u,h=0;const f=()=>this.root.updateBlockedByResize=!1;V.read(()=>{h=window.innerWidth}),t(r,()=>{const d=window.innerWidth;d!==h&&(h=d,this.root.updateBlockedByResize=!0,u&&u(),u=Ll(f,250),Ut.hasAnimatedSinceResize&&(Ut.hasAnimatedSinceResize=!1,this.nodes.forEach(ms)))})}a&&this.root.registerSharedNode(a,this),this.options.animate!==!1&&c&&(a||l)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:h,hasRelativeLayoutChanged:f,layout:d})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const m=this.options.transition||c.getDefaultTransition()||Xl,{onLayoutAnimationStart:p,onLayoutAnimationComplete:x}=c.getProps(),g=!this.targetLayout||!qi(this.targetLayout,d),T=!h&&f;if(this.options.layoutRoot||this.resumeFrom||T||h&&(g||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const v={...en(m,"layout"),onPlay:p,onComplete:x};(c.shouldReduceMotion||this.options.layoutRoot)&&(v.delay=0,v.type=!1),this.startAnimation(v),this.setAnimationOrigin(u,T)}else h||ms(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=d})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const r=this.getStack();r&&r.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),J(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(Gl),this.animationId++)}getTransformTemplate(){const{visualElement:r}=this.options;return r&&r.getProps().transformTemplate}willUpdate(r=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&Qi(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const h=this.path[u];h.shouldResetTransform=!0,h.updateScroll("snapshot"),h.options.layoutRoot&&h.willUpdate(!1)}const{layoutId:a,layout:l}=this.options;if(a===void 0&&!l)return;const c=this.getTransformTemplate();this.prevTransformTemplateValue=c?c(this.latestValues,""):void 0,this.updateSnapshot(),r&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(fs);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(ds);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(Wl),this.nodes.forEach(Bl),this.nodes.forEach(jl)):this.nodes.forEach(ds),this.clearAllSnapshots();const a=I.now();k.delta=z(0,1e3/60,a-k.timestamp),k.timestamp=a,k.isProcessing=!0,Jt.update.process(k),Jt.preRender.process(k),Jt.render.process(k),k.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,an.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(Ul),this.sharedNodes.forEach(Hl)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,V.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){V.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!B(this.snapshot.measuredBox.x)&&!B(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let l=0;l<this.path.length;l++)this.path[l].updateScroll();const r=this.layout;this.layout=this.measure(!1),this.layoutVersion++,this.layoutCorrected=R(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:a}=this.options;a&&a.notify("LayoutMeasure",this.layout.layoutBox,r?r.layoutBox:void 0)}updateScroll(r="measure"){let a=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===r&&(a=!1),a&&this.instance){const l=s(this.instance);this.scroll={animationId:this.root.animationId,phase:r,isRoot:l,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:l}}}resetTransform(){if(!i)return;const r=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,a=this.projectionDelta&&!Yi(this.projectionDelta),l=this.getTransformTemplate(),c=l?l(this.latestValues,""):void 0,u=c!==this.prevTransformTemplateValue;r&&this.instance&&(a||st(this.latestValues)||u)&&(i(this.instance,c),this.shouldResetTransform=!1,this.scheduleRender())}measure(r=!0){const a=this.measurePageBox();let l=this.removeElementScroll(a);return r&&(l=this.removeTransform(l)),Yl(l),{animationId:this.root.animationId,measuredBox:a,layoutBox:l,latestValues:{},source:this.id}}measurePageBox(){const{visualElement:r}=this.options;if(!r)return R();const a=r.measureViewportBox();if(!(this.scroll?.wasRoot||this.path.some(ql))){const{scroll:c}=this.root;c&&(ht(a.x,c.offset.x),ht(a.y,c.offset.y))}return a}removeElementScroll(r){const a=R();if($(a,r),this.scroll?.wasRoot)return a;for(let l=0;l<this.path.length;l++){const c=this.path[l],{scroll:u,options:h}=c;c!==this.root&&u&&h.layoutScroll&&(u.wasRoot&&$(a,r),ht(a.x,u.offset.x),ht(a.y,u.offset.y))}return a}applyTransform(r,a=!1){const l=R();$(l,r);for(let c=0;c<this.path.length;c++){const u=this.path[c];!a&&u.options.layoutScroll&&u.scroll&&u!==u.root&&ft(l,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),st(u.latestValues)&&ft(l,u.latestValues)}return st(this.latestValues)&&ft(l,this.latestValues),l}removeTransform(r){const a=R();$(a,r);for(let l=0;l<this.path.length;l++){const c=this.path[l];if(!c.instance||!st(c.latestValues))continue;Le(c.latestValues)&&c.updateSnapshot();const u=R(),h=c.measurePageBox();$(u,h),ss(a,c.latestValues,c.snapshot?c.snapshot.layoutBox:void 0,u)}return st(this.latestValues)&&ss(a,this.latestValues),a}setTargetDelta(r){this.targetDelta=r,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(r){this.options={...this.options,...r,crossfade:r.crossfade!==void 0?r.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==k.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(r=!1){const a=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=a.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=a.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=a.isSharedProjectionDirty);const l=!!this.resumingFrom||this!==a;if(!(r||l&&this.isSharedProjectionDirty||this.isProjectionDirty||this.parent?.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:h}=this.options;if(!this.layout||!(u||h))return;this.resolvedRelativeTargetAt=k.timestamp;const f=this.getClosestProjectingParent();f&&this.linkedParentVersion!==f.layoutVersion&&!f.options.layoutRoot&&this.removeRelativeTarget(),!this.targetDelta&&!this.relativeTarget&&(f&&f.layout?this.createRelativeTarget(f,this.layout.layoutBox,f.layout.layoutBox):this.removeRelativeTarget()),!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=R(),this.targetWithTransforms=R()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),xl(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):$(this.target,this.layout.layoutBox),ji(this.target,this.targetDelta)):$(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget&&(this.attemptToResolveRelativeTarget=!1,f&&!!f.resumingFrom==!!this.resumingFrom&&!f.options.layoutScroll&&f.target&&this.animationProgress!==1?this.createRelativeTarget(f,this.target,f.target):this.relativeParent=this.relativeTarget=void 0))}getClosestProjectingParent(){if(!(!this.parent||Le(this.parent.latestValues)||Bi(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}createRelativeTarget(r,a,l){this.relativeParent=r,this.linkedParentVersion=r.layoutVersion,this.forceRelativeParentToResolveTarget(),this.relativeTarget=R(),this.relativeTargetOrigin=R(),_t(this.relativeTargetOrigin,a,l),$(this.relativeTarget,this.relativeTargetOrigin)}removeRelativeTarget(){this.relativeParent=this.relativeTarget=void 0}calcProjection(){const r=this.getLead(),a=!!this.resumingFrom||this!==r;let l=!0;if((this.isProjectionDirty||this.parent?.isProjectionDirty)&&(l=!1),a&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(l=!1),this.resolvedRelativeTargetAt===k.timestamp&&(l=!1),l)return;const{layout:c,layoutId:u}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(c||u))return;$(this.layoutCorrected,this.layout.layoutBox);const h=this.treeScale.x,f=this.treeScale.y;Xa(this.layoutCorrected,this.treeScale,this.path,a),r.layout&&!r.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(r.target=r.layout.layoutBox,r.targetWithTransforms=R());const{target:d}=r;if(!d){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(Zn(this.prevProjectionDelta.x,this.projectionDelta.x),Zn(this.prevProjectionDelta.y,this.projectionDelta.y)),bt(this.projectionDelta,this.layoutCorrected,d,this.latestValues),(this.treeScale.x!==h||this.treeScale.y!==f||!ls(this.projectionDelta.x,this.prevProjectionDelta.x)||!ls(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",d))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(r=!0){if(this.options.visualElement?.scheduleRender(),r){const a=this.getStack();a&&a.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=ct(),this.projectionDelta=ct(),this.projectionDeltaWithTransform=ct()}setAnimationOrigin(r,a=!1){const l=this.snapshot,c=l?l.latestValues:{},u={...this.latestValues},h=ct();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!a;const f=R(),d=l?l.source:void 0,m=this.layout?this.layout.source:void 0,p=d!==m,x=this.getStack(),g=!x||x.members.length<=1,T=!!(p&&!g&&this.options.crossfade===!0&&!this.path.some(zl));this.animationProgress=0;let v;this.mixTargetDelta=w=>{const S=w/1e3;ps(h.x,r.x,S),ps(h.y,r.y,S),this.setTargetDelta(h),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(_t(f,this.layout.layoutBox,this.relativeParent.layout.layoutBox),_l(this.relativeTarget,this.relativeTargetOrigin,f,S),v&&bl(this.relativeTarget,v)&&(this.isProjectionDirty=!1),v||(v=R()),$(v,this.relativeTarget)),p&&(this.animationValues=u,Vl(u,c,this.latestValues,S,T,g)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=S},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(r){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&(J(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=V.update(()=>{Ut.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=mt(0)),this.currentAnimation=Ml(this.motionValue,[0,1e3],{...r,velocity:0,isSync:!0,onUpdate:a=>{this.mixTargetDelta(a),r.onUpdate&&r.onUpdate(a)},onStop:()=>{},onComplete:()=>{r.onComplete&&r.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const r=this.getStack();r&&r.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Fl),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const r=this.getLead();let{targetWithTransforms:a,target:l,layout:c,latestValues:u}=r;if(!(!a||!l||!c)){if(this!==r&&this.layout&&c&&er(this.options.animationType,this.layout.layoutBox,c.layoutBox)){l=this.target||R();const h=B(this.layout.layoutBox.x);l.x.min=r.target.x.min,l.x.max=l.x.min+h;const f=B(this.layout.layoutBox.y);l.y.min=r.target.y.min,l.y.max=l.y.min+f}$(a,l),ft(a,u),bt(this.projectionDeltaWithTransform,this.layoutCorrected,a,u)}}registerSharedNode(r,a){this.sharedNodes.has(r)||this.sharedNodes.set(r,new kl),this.sharedNodes.get(r).add(a);const c=a.options.initialPromotionConfig;a.promote({transition:c?c.transition:void 0,preserveFollowOpacity:c&&c.shouldPreserveFollowOpacity?c.shouldPreserveFollowOpacity(a):void 0})}isLead(){const r=this.getStack();return r?r.lead===this:!0}getLead(){const{layoutId:r}=this.options;return r?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:r}=this.options;return r?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:r}=this.options;if(r)return this.root.sharedNodes.get(r)}promote({needsReset:r,transition:a,preserveFollowOpacity:l}={}){const c=this.getStack();c&&c.promote(this,l),r&&(this.projectionDelta=void 0,this.needsReset=!0),a&&this.setOptions({transition:a})}relegate(){const r=this.getStack();return r?r.relegate(this):!1}resetSkewAndRotation(){const{visualElement:r}=this.options;if(!r)return;let a=!1;const{latestValues:l}=r;if((l.z||l.rotate||l.rotateX||l.rotateY||l.rotateZ||l.skewX||l.skewY)&&(a=!0),!a)return;const c={};l.z&&ae("z",r,c,this.animationValues);for(let u=0;u<oe.length;u++)ae(`rotate${oe[u]}`,r,c,this.animationValues),ae(`skew${oe[u]}`,r,c,this.animationValues);r.render();for(const u in c)r.setStaticValue(u,c[u]),this.animationValues&&(this.animationValues[u]=c[u]);r.scheduleRender()}applyProjectionStyles(r,a){if(!this.instance||this.isSVG)return;if(!this.isVisible){r.visibility="hidden";return}const l=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,r.visibility="",r.opacity="",r.pointerEvents=Nt(a?.pointerEvents)||"",r.transform=l?l(this.latestValues,""):"none";return}const c=this.getLead();if(!this.projectionDelta||!this.layout||!c.target){this.options.layoutId&&(r.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,r.pointerEvents=Nt(a?.pointerEvents)||""),this.hasProjected&&!st(this.latestValues)&&(r.transform=l?l({},""):"none",this.hasProjected=!1);return}r.visibility="";const u=c.animationValues||c.latestValues;this.applyTransformsToTarget();let h=wl(this.projectionDeltaWithTransform,this.treeScale,u);l&&(h=l(u,h)),r.transform=h;const{x:f,y:d}=this.projectionDelta;r.transformOrigin=`${f.origin*100}% ${d.origin*100}% 0`,c.animationValues?r.opacity=c===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:r.opacity=c===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const m in Fe){if(u[m]===void 0)continue;const{correct:p,applyTo:x,isCSSVariable:g}=Fe[m],T=h==="none"?u[m]:p(u[m],c);if(x){const v=x.length;for(let w=0;w<v;w++)r[x[w]]=T}else g?this.options.visualElement.renderState.vars[m]=T:r[m]=T}this.options.layoutId&&(r.pointerEvents=c===this?Nt(a?.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(r=>r.currentAnimation?.stop()),this.root.nodes.forEach(fs),this.root.sharedNodes.clear()}}}function Bl(t){t.updateLayout()}function jl(t){const e=t.resumeFrom?.snapshot||t.snapshot;if(t.isLead()&&t.layout&&e&&t.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:s}=t.layout,{animationType:i}=t.options,o=e.source!==t.layout.source;i==="size"?U(u=>{const h=o?e.measuredBox[u]:e.layoutBox[u],f=B(h);h.min=n[u].min,h.max=h.min+f}):er(i,e.layoutBox,n)&&U(u=>{const h=o?e.measuredBox[u]:e.layoutBox[u],f=B(n[u]);h.max=h.min+f,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[u].max=t.relativeTarget[u].min+f)});const r=ct();bt(r,n,e.layoutBox);const a=ct();o?bt(a,t.applyTransform(s,!0),e.measuredBox):bt(a,n,e.layoutBox);const l=!Yi(r);let c=!1;if(!t.resumeFrom){const u=t.getClosestProjectingParent();if(u&&!u.resumeFrom){const{snapshot:h,layout:f}=u;if(h&&f){const d=R();_t(d,e.layoutBox,h.layoutBox);const m=R();_t(m,n,f.layoutBox),qi(d,m)||(c=!0),u.options.layoutRoot&&(t.relativeTarget=m,t.relativeTargetOrigin=d,t.relativeParent=u)}}}t.notifyListeners("didUpdate",{layout:n,snapshot:e,delta:a,layoutDelta:r,hasLayoutChanged:l,hasRelativeLayoutChanged:c})}else if(t.isLead()){const{onExitComplete:n}=t.options;n&&n()}t.options.transition=void 0}function Ol(t){t.parent&&(t.isProjecting()||(t.isProjectionDirty=t.parent.isProjectionDirty),t.isSharedProjectionDirty||(t.isSharedProjectionDirty=!!(t.isProjectionDirty||t.parent.isProjectionDirty||t.parent.isSharedProjectionDirty)),t.isTransformDirty||(t.isTransformDirty=t.parent.isTransformDirty))}function Nl(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function Ul(t){t.clearSnapshot()}function fs(t){t.clearMeasurements()}function ds(t){t.isLayoutDirty=!1}function Wl(t){const{visualElement:e}=t.options;e&&e.getProps().onBeforeLayoutMeasure&&e.notify("BeforeLayoutMeasure"),t.resetTransform()}function ms(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function Kl(t){t.resolveTargetDelta()}function $l(t){t.calcProjection()}function Gl(t){t.resetSkewAndRotation()}function Hl(t){t.removeLeadSnapshot()}function ps(t,e,n){t.translate=C(e.translate,0,n),t.scale=C(e.scale,1,n),t.origin=e.origin,t.originPoint=e.originPoint}function gs(t,e,n,s){t.min=C(e.min,n.min,s),t.max=C(e.max,n.max,s)}function _l(t,e,n,s){gs(t.x,e.x,n.x,s),gs(t.y,e.y,n.y,s)}function zl(t){return t.animationValues&&t.animationValues.opacityExit!==void 0}const Xl={duration:.45,ease:[.4,0,.1,1]},ys=t=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(t),vs=ys("applewebkit/")&&!ys("chrome/")?Math.round:K;function xs(t){t.min=vs(t.min),t.max=vs(t.max)}function Yl(t){xs(t.x),xs(t.y)}function er(t,e,n){return t==="position"||t==="preserve-aspect"&&!vl(as(e),as(n),.2)}function ql(t){return t!==t.root&&t.scroll?.wasRoot}const Zl=tr({attachResizeListener:(t,e)=>Mt(t,"resize",e),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),le={current:void 0},nr=tr({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!le.current){const t=new Zl({});t.mount(window),t.setOptions({layoutScroll:!0}),le.current=t}return le.current},resetTransform:(t,e)=>{t.style.transform=e!==void 0?e:"none"},checkIsScrollRoot:t=>window.getComputedStyle(t).position==="fixed"}),sr=P.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"});function Jl(t=!0){const e=P.useContext(Oe);if(e===null)return[!0,null];const{isPresent:n,onExitComplete:s,register:i}=e,o=P.useId();P.useEffect(()=>{if(t)return i(o)},[t]);const r=P.useCallback(()=>t&&s&&s(o),[o,s,t]);return!n&&s?[!1,r]:[!0]}const ir=P.createContext({strict:!1}),Ts={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let Ps=!1;function Ql(){if(Ps)return;const t={};for(const e in Ts)t[e]={isEnabled:n=>Ts[e].some(s=>!!n[s])};ki(t),Ps=!0}function rr(){return Ql(),Ga()}function tu(t){const e=rr();for(const n in t)e[n]={...e[n],...t[n]};ki(e)}const eu=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function zt(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||eu.has(t)}let or=t=>!zt(t);function nu(t){typeof t=="function"&&(or=e=>e.startsWith("on")?!zt(e):t(e))}try{nu(require("@emotion/is-prop-valid").default)}catch{}function su(t,e,n){const s={};for(const i in t)i==="values"&&typeof t.values=="object"||(or(i)||n===!0&&zt(i)||!e&&!zt(i)||t.draggable&&i.startsWith("onDrag"))&&(s[i]=t[i]);return s}const qt=P.createContext({});function iu(t,e){if(Yt(t)){const{initial:n,animate:s}=t;return{initial:n===!1||Dt(n)?n:void 0,animate:Dt(s)?s:void 0}}return t.inherit!==!1?e:{}}function ru(t){const{initial:e,animate:n}=iu(t,P.useContext(qt));return P.useMemo(()=>({initial:e,animate:n}),[Ss(e),Ss(n)])}function Ss(t){return Array.isArray(t)?t.join(" "):t}const dn=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function ar(t,e,n){for(const s in e)!F(e[s])&&!Ui(s,n)&&(t[s]=e[s])}function ou({transformTemplate:t},e){return P.useMemo(()=>{const n=dn();return hn(n,e,t),Object.assign({},n.vars,n.style)},[e])}function au(t,e){const n=t.style||{},s={};return ar(s,n,t),Object.assign(s,ou(t,e)),s}function lu(t,e){const n={},s=au(t,e);return t.drag&&t.dragListener!==!1&&(n.draggable=!1,s.userSelect=s.WebkitUserSelect=s.WebkitTouchCallout="none",s.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(n.tabIndex=0),n.style=s,n}const lr=()=>({...dn(),attrs:{}});function uu(t,e,n,s){const i=P.useMemo(()=>{const o=lr();return Wi(o,e,$i(s),t.transformTemplate,t.style),{...o.attrs,style:{...o.style}}},[e]);if(t.style){const o={};ar(o,t.style,t),i.style={...o,...i.style}}return i}const cu=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function mn(t){return typeof t!="string"||t.includes("-")?!1:!!(cu.indexOf(t)>-1||/[A-Z]/u.test(t))}function hu(t,e,n,{latestValues:s},i,o=!1,r){const l=(r??mn(t)?uu:lu)(e,s,i,t),c=su(e,typeof t=="string",o),u=t!==P.Fragment?{...c,...l,ref:n}:{},{children:h}=e,f=P.useMemo(()=>F(h)?h.get():h,[h]);return P.createElement(t,{...u,children:f})}function fu({scrapeMotionValuesFromProps:t,createRenderState:e},n,s,i){return{latestValues:du(n,s,i,t),renderState:e()}}function du(t,e,n,s){const i={},o=s(t,{});for(const f in o)i[f]=Nt(o[f]);let{initial:r,animate:a}=t;const l=Yt(t),c=Li(t);e&&c&&!l&&t.inherit!==!1&&(r===void 0&&(r=e.initial),a===void 0&&(a=e.animate));let u=n?n.initial===!1:!1;u=u||r===!1;const h=u?a:r;if(h&&typeof h!="boolean"&&!Xt(h)){const f=Array.isArray(h)?h:[h];for(let d=0;d<f.length;d++){const m=sn(t,f[d]);if(m){const{transitionEnd:p,transition:x,...g}=m;for(const T in g){let v=g[T];if(Array.isArray(v)){const w=u?v.length-1:0;v=v[w]}v!==null&&(i[T]=v)}for(const T in p)i[T]=p[T]}}}return i}const ur=t=>(e,n)=>{const s=P.useContext(qt),i=P.useContext(Oe),o=()=>fu(t,e,s,i);return n?o():Ar(o)},mu=ur({scrapeMotionValuesFromProps:fn,createRenderState:dn}),pu=ur({scrapeMotionValuesFromProps:Gi,createRenderState:lr}),gu=Symbol.for("motionComponentSymbol");function yu(t,e,n){const s=P.useRef(n);P.useInsertionEffect(()=>{s.current=n});const i=P.useRef(null);return P.useCallback(o=>{o&&t.onMount?.(o),e&&(o?e.mount(o):e.unmount());const r=s.current;if(typeof r=="function")if(o){const a=r(o);typeof a=="function"&&(i.current=a)}else i.current?(i.current(),i.current=null):r(o);else r&&(r.current=o)},[e])}const cr=P.createContext({});function Tt(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function vu(t,e,n,s,i,o){const{visualElement:r}=P.useContext(qt),a=P.useContext(ir),l=P.useContext(Oe),c=P.useContext(sr).reducedMotion,u=P.useRef(null);s=s||a.renderer,!u.current&&s&&(u.current=s(t,{visualState:e,parent:r,props:n,presenceContext:l,blockInitialAnimation:l?l.initial===!1:!1,reducedMotionConfig:c,isSVG:o}));const h=u.current,f=P.useContext(cr);h&&!h.projection&&i&&(h.type==="html"||h.type==="svg")&&xu(u.current,n,i,f);const d=P.useRef(!1);P.useInsertionEffect(()=>{h&&d.current&&h.update(n,l)});const m=n[vi],p=P.useRef(!!m&&!window.MotionHandoffIsComplete?.(m)&&window.MotionHasOptimisedAnimation?.(m));return Vr(()=>{h&&(d.current=!0,window.MotionIsMounted=!0,h.updateFeatures(),h.scheduleRenderMicrotask(),p.current&&h.animationState&&h.animationState.animateChanges())}),P.useEffect(()=>{h&&(!p.current&&h.animationState&&h.animationState.animateChanges(),p.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(m)}),p.current=!1),h.enteringChildren=void 0)}),h}function xu(t,e,n,s){const{layoutId:i,layout:o,drag:r,dragConstraints:a,layoutScroll:l,layoutRoot:c,layoutCrossfade:u}=e;t.projection=new n(t.latestValues,e["data-framer-portal-id"]?void 0:hr(t.parent)),t.projection.setOptions({layoutId:i,layout:o,alwaysMeasureLayout:!!r||a&&Tt(a),visualElement:t,animationType:typeof o=="string"?o:"both",initialPromotionConfig:s,crossfade:u,layoutScroll:l,layoutRoot:c})}function hr(t){if(t)return t.options.allowProjection!==!1?t.projection:hr(t.parent)}function ue(t,{forwardMotionProps:e=!1,type:n}={},s,i){s&&tu(s);const o=n?n==="svg":mn(t),r=o?pu:mu;function a(c,u){let h;const f={...P.useContext(sr),...c,layoutId:Tu(c)},{isStatic:d}=f,m=ru(c),p=r(c,d);if(!d&&Is){Pu();const x=Su(f);h=x.MeasureLayout,m.visualElement=vu(t,p,f,i,x.ProjectionNode,o)}return H.jsxs(qt.Provider,{value:m,children:[h&&m.visualElement?H.jsx(h,{visualElement:m.visualElement,...f}):null,hu(t,c,yu(p,m.visualElement,u),p,d,e,o)]})}a.displayName=`motion.${typeof t=="string"?t:`create(${t.displayName??t.name??""})`}`;const l=P.forwardRef(a);return l[gu]=t,l}function Tu({layoutId:t}){const e=P.useContext(Fs).id;return e&&t!==void 0?e+"-"+t:t}function Pu(t,e){P.useContext(ir).strict}function Su(t){const e=rr(),{drag:n,layout:s}=e;if(!n&&!s)return{};const i={...n,...s};return{MeasureLayout:n?.isEnabled(t)||s?.isEnabled(t)?i.MeasureLayout:void 0,ProjectionNode:i.ProjectionNode}}function bu(t,e){if(typeof Proxy>"u")return ue;const n=new Map,s=(o,r)=>ue(o,r,t,e),i=(o,r)=>s(o,r);return new Proxy(i,{get:(o,r)=>r==="create"?s:(n.has(r)||n.set(r,ue(r,void 0,t,e)),n.get(r))})}const wu=(t,e)=>e.isSVG??mn(t)?new al(e):new el(e,{allowProjection:t!==P.Fragment});class Au extends tt{constructor(e){super(e),e.animationState||(e.animationState=fl(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();Xt(e)&&(this.unmountControls=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:n}=this.node.prevProps||{};e!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let Vu=0;class Cu extends tt{constructor(){super(...arguments),this.id=Vu++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:n}=this.node.presenceContext,{isPresent:s}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===s)return;const i=this.node.animationState.setActive("exit",!e);n&&!e&&i.then(()=>{n(this.id)})}mount(){const{register:e,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),e&&(this.unmount=e(this.id))}unmount(){}}const Du={animation:{Feature:Au},exit:{Feature:Cu}};function kt(t){return{point:{x:t.pageX,y:t.pageY}}}const Mu=t=>e=>ln(e)&&t(e,kt(e));function wt(t,e,n,s){return Mt(t,e,Mu(n),s)}const fr=({current:t})=>t?t.ownerDocument.defaultView:null,bs=(t,e)=>Math.abs(t-e);function Eu(t,e){const n=bs(t.x,e.x),s=bs(t.y,e.y);return Math.sqrt(n**2+s**2)}const ws=new Set(["auto","scroll"]);class dr{constructor(e,n,{transformPagePoint:s,contextWindow:i=window,dragSnapToOrigin:o=!1,distanceThreshold:r=3,element:a}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=d=>{this.handleScroll(d.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const d=he(this.lastMoveEventInfo,this.history),m=this.startEvent!==null,p=Eu(d.offset,{x:0,y:0})>=this.distanceThreshold;if(!m&&!p)return;const{point:x}=d,{timestamp:g}=k;this.history.push({...x,timestamp:g});const{onStart:T,onMove:v}=this.handlers;m||(T&&T(this.lastMoveEvent,d),this.startEvent=this.lastMoveEvent),v&&v(this.lastMoveEvent,d)},this.handlePointerMove=(d,m)=>{this.lastMoveEvent=d,this.lastMoveEventInfo=ce(m,this.transformPagePoint),V.update(this.updatePoint,!0)},this.handlePointerUp=(d,m)=>{this.end();const{onEnd:p,onSessionEnd:x,resumeAnimation:g}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&g&&g(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const T=he(d.type==="pointercancel"?this.lastMoveEventInfo:ce(m,this.transformPagePoint),this.history);this.startEvent&&p&&p(d,T),x&&x(d,T)},!ln(e))return;this.dragSnapToOrigin=o,this.handlers=n,this.transformPagePoint=s,this.distanceThreshold=r,this.contextWindow=i||window;const l=kt(e),c=ce(l,this.transformPagePoint),{point:u}=c,{timestamp:h}=k;this.history=[{...u,timestamp:h}];const{onSessionStart:f}=n;f&&f(e,he(c,this.history)),this.removeListeners=Et(wt(this.contextWindow,"pointermove",this.handlePointerMove),wt(this.contextWindow,"pointerup",this.handlePointerUp),wt(this.contextWindow,"pointercancel",this.handlePointerUp)),a&&this.startScrollTracking(a)}startScrollTracking(e){let n=e.parentElement;for(;n;){const s=getComputedStyle(n);(ws.has(s.overflowX)||ws.has(s.overflowY))&&this.scrollPositions.set(n,{x:n.scrollLeft,y:n.scrollTop}),n=n.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0,passive:!0}),window.addEventListener("scroll",this.onWindowScroll,{passive:!0}),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(e){const n=this.scrollPositions.get(e);if(!n)return;const s=e===window,i=s?{x:window.scrollX,y:window.scrollY}:{x:e.scrollLeft,y:e.scrollTop},o={x:i.x-n.x,y:i.y-n.y};o.x===0&&o.y===0||(s?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=o.x,this.lastMoveEventInfo.point.y+=o.y):this.history.length>0&&(this.history[0].x-=o.x,this.history[0].y-=o.y),this.scrollPositions.set(e,i),V.update(this.updatePoint,!0))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),J(this.updatePoint)}}function ce(t,e){return e?{point:e(t.point)}:t}function As(t,e){return{x:t.x-e.x,y:t.y-e.y}}function he({point:t},e){return{point:t,delta:As(t,mr(e)),offset:As(t,Ru(e)),velocity:Lu(e,.1)}}function Ru(t){return t[0]}function mr(t){return t[t.length-1]}function Lu(t,e){if(t.length<2)return{x:0,y:0};let n=t.length-1,s=null;const i=mr(t);for(;n>=0&&(s=t[n],!(i.timestamp-s.timestamp>X(e)));)n--;if(!s)return{x:0,y:0};const o=W(i.timestamp-s.timestamp);if(o===0)return{x:0,y:0};const r={x:(i.x-s.x)/o,y:(i.y-s.y)/o};return r.x===1/0&&(r.x=0),r.y===1/0&&(r.y=0),r}function ku(t,{min:e,max:n},s){return e!==void 0&&t<e?t=s?C(e,t,s.min):Math.max(t,e):n!==void 0&&t>n&&(t=s?C(n,t,s.max):Math.min(t,n)),t}function Vs(t,e,n){return{min:e!==void 0?t.min+e:void 0,max:n!==void 0?t.max+n-(t.max-t.min):void 0}}function Fu(t,{top:e,left:n,bottom:s,right:i}){return{x:Vs(t.x,n,i),y:Vs(t.y,e,s)}}function Cs(t,e){let n=e.min-t.min,s=e.max-t.max;return e.max-e.min<t.max-t.min&&([n,s]=[s,n]),{min:n,max:s}}function Iu(t,e){return{x:Cs(t.x,e.x),y:Cs(t.y,e.y)}}function Bu(t,e){let n=.5;const s=B(t),i=B(e);return i>s?n=At(e.min,e.max-s,t.min):s>i&&(n=At(t.min,t.max-i,e.min)),z(0,1,n)}function ju(t,e){const n={};return e.min!==void 0&&(n.min=e.min-t.min),e.max!==void 0&&(n.max=e.max-t.min),n}const Ie=.35;function Ou(t=Ie){return t===!1?t=0:t===!0&&(t=Ie),{x:Ds(t,"left","right"),y:Ds(t,"top","bottom")}}function Ds(t,e,n){return{min:Ms(t,e),max:Ms(t,n)}}function Ms(t,e){return typeof t=="number"?t:t[e]||0}const Nu=new WeakMap;class Uu{constructor(e){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=R(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=e}start(e,{snapToCursor:n=!1,distanceThreshold:s}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const o=h=>{n?(this.stopAnimation(),this.snapToCursor(kt(h).point)):this.pauseAnimation()},r=(h,f)=>{this.stopAnimation();const{drag:d,dragPropagation:m,onDragStart:p}=this.getProps();if(d&&!m&&(this.openDragLock&&this.openDragLock(),this.openDragLock=La(d),!this.openDragLock))return;this.latestPointerEvent=h,this.latestPanInfo=f,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),U(g=>{let T=this.getAxisMotionValue(g).get()||0;if(_.test(T)){const{projection:v}=this.visualElement;if(v&&v.layout){const w=v.layout.layoutBox[g];w&&(T=B(w)*(parseFloat(T)/100))}}this.originPoint[g]=T}),p&&V.postRender(()=>p(h,f)),De(this.visualElement,"transform");const{animationState:x}=this.visualElement;x&&x.setActive("whileDrag",!0)},a=(h,f)=>{this.latestPointerEvent=h,this.latestPanInfo=f;const{dragPropagation:d,dragDirectionLock:m,onDirectionLock:p,onDrag:x}=this.getProps();if(!d&&!this.openDragLock)return;const{offset:g}=f;if(m&&this.currentDirection===null){this.currentDirection=Wu(g),this.currentDirection!==null&&p&&p(this.currentDirection);return}this.updateAxis("x",f.point,g),this.updateAxis("y",f.point,g),this.visualElement.render(),x&&x(h,f)},l=(h,f)=>{this.latestPointerEvent=h,this.latestPanInfo=f,this.stop(h,f),this.latestPointerEvent=null,this.latestPanInfo=null},c=()=>U(h=>this.getAnimationState(h)==="paused"&&this.getAxisMotionValue(h).animation?.play()),{dragSnapToOrigin:u}=this.getProps();this.panSession=new dr(e,{onSessionStart:o,onStart:r,onMove:a,onSessionEnd:l,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:s,contextWindow:fr(this.visualElement),element:this.visualElement.current})}stop(e,n){const s=e||this.latestPointerEvent,i=n||this.latestPanInfo,o=this.isDragging;if(this.cancel(),!o||!i||!s)return;const{velocity:r}=i;this.startAnimation(r);const{onDragEnd:a}=this.getProps();a&&V.postRender(()=>a(s,i))}cancel(){this.isDragging=!1;const{projection:e,animationState:n}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:s}=this.getProps();!s&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(e,n,s){const{drag:i}=this.getProps();if(!s||!Bt(e,i,this.currentDirection))return;const o=this.getAxisMotionValue(e);let r=this.originPoint[e]+s[e];this.constraints&&this.constraints[e]&&(r=ku(r,this.constraints[e],this.elastic[e])),o.set(r)}resolveConstraints(){const{dragConstraints:e,dragElastic:n}=this.getProps(),s=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,i=this.constraints;e&&Tt(e)?this.constraints||(this.constraints=this.resolveRefConstraints()):e&&s?this.constraints=Fu(s.layoutBox,e):this.constraints=!1,this.elastic=Ou(n),i!==this.constraints&&s&&this.constraints&&!this.hasMutatedConstraints&&U(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=ju(s.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:n}=this.getProps();if(!e||!Tt(e))return!1;const s=e.current,{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const o=Ya(s,i.root,this.visualElement.getTransformPagePoint());let r=Iu(i.layout.layoutBox,o);if(n){const a=n(_a(r));this.hasMutatedConstraints=!!a,a&&(r=Ii(a))}return r}startAnimation(e){const{drag:n,dragMomentum:s,dragElastic:i,dragTransition:o,dragSnapToOrigin:r,onDragTransitionEnd:a}=this.getProps(),l=this.constraints||{},c=U(u=>{if(!Bt(u,n,this.currentDirection))return;let h=l&&l[u]||{};r&&(h={min:0,max:0});const f=i?200:1e6,d=i?40:1e7,m={type:"inertia",velocity:s?e[u]:0,bounceStiffness:f,bounceDamping:d,timeConstant:750,restDelta:1,restSpeed:10,...o,...h};return this.startAxisValueAnimation(u,m)});return Promise.all(c).then(a)}startAxisValueAnimation(e,n){const s=this.getAxisMotionValue(e);return De(this.visualElement,e),s.start(nn(e,s,0,n,this.visualElement,!1))}stopAnimation(){U(e=>this.getAxisMotionValue(e).stop())}pauseAnimation(){U(e=>this.getAxisMotionValue(e).animation?.pause())}getAnimationState(e){return this.getAxisMotionValue(e).animation?.state}getAxisMotionValue(e){const n=`_drag${e.toUpperCase()}`,s=this.visualElement.getProps(),i=s[n];return i||this.visualElement.getValue(e,(s.initial?s.initial[e]:void 0)||0)}snapToCursor(e){U(n=>{const{drag:s}=this.getProps();if(!Bt(n,s,this.currentDirection))return;const{projection:i}=this.visualElement,o=this.getAxisMotionValue(n);if(i&&i.layout){const{min:r,max:a}=i.layout.layoutBox[n],l=o.get()||0;o.set(e[n]-C(r,a,.5)+l)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:n}=this.getProps(),{projection:s}=this.visualElement;if(!Tt(n)||!s||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};U(r=>{const a=this.getAxisMotionValue(r);if(a&&this.constraints!==!1){const l=a.get();i[r]=Bu({min:l,max:l},this.constraints[r])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",s.root&&s.root.updateScroll(),s.updateLayout(),this.resolveConstraints(),U(r=>{if(!Bt(r,e,null))return;const a=this.getAxisMotionValue(r),{min:l,max:c}=this.constraints[r];a.set(C(l,c,i[r]))})}addListeners(){if(!this.visualElement.current)return;Nu.set(this.visualElement,this);const e=this.visualElement.current,n=wt(e,"pointerdown",l=>{const{drag:c,dragListener:u=!0}=this.getProps(),h=l.target,f=h!==e&&Mi(h);c&&u&&!f&&this.start(l)}),s=()=>{const{dragConstraints:l}=this.getProps();Tt(l)&&l.current&&(this.constraints=this.resolveRefConstraints())},{projection:i}=this.visualElement,o=i.addEventListener("measure",s);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),V.read(s);const r=Mt(window,"resize",()=>this.scalePositionWithinConstraints()),a=i.addEventListener("didUpdate",(({delta:l,hasLayoutChanged:c})=>{this.isDragging&&c&&(U(u=>{const h=this.getAxisMotionValue(u);h&&(this.originPoint[u]+=l[u].translate,h.set(h.get()+l[u].translate))}),this.visualElement.render())}));return()=>{r(),n(),o(),a&&a()}}getProps(){const e=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:s=!1,dragPropagation:i=!1,dragConstraints:o=!1,dragElastic:r=Ie,dragMomentum:a=!0}=e;return{...e,drag:n,dragDirectionLock:s,dragPropagation:i,dragConstraints:o,dragElastic:r,dragMomentum:a}}}function Bt(t,e,n){return(e===!0||e===t)&&(n===null||n===t)}function Wu(t,e=10){let n=null;return Math.abs(t.y)>e?n="y":Math.abs(t.x)>e&&(n="x"),n}class Ku extends tt{constructor(e){super(e),this.removeGroupControls=K,this.removeListeners=K,this.controls=new Uu(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||K}update(){const{dragControls:e}=this.node.getProps(),{dragControls:n}=this.node.prevProps||{};e!==n&&(this.removeGroupControls(),e&&(this.removeGroupControls=e.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.endPanSession()}}const Es=t=>(e,n)=>{t&&V.postRender(()=>t(e,n))};class $u extends tt{constructor(){super(...arguments),this.removePointerDownListener=K}onPointerDown(e){this.session=new dr(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:fr(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:n,onPan:s,onPanEnd:i}=this.node.getProps();return{onSessionStart:Es(e),onStart:Es(n),onMove:s,onEnd:(o,r)=>{delete this.session,i&&V.postRender(()=>i(o,r))}}}mount(){this.removePointerDownListener=wt(this.node.current,"pointerdown",e=>this.onPointerDown(e))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let fe=!1;class Gu extends P.Component{componentDidMount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:s,layoutId:i}=this.props,{projection:o}=e;o&&(n.group&&n.group.add(o),s&&s.register&&i&&s.register(o),fe&&o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,onExitComplete:()=>this.safeToRemove()})),Ut.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:n,visualElement:s,drag:i,isPresent:o}=this.props,{projection:r}=s;return r&&(r.isPresent=o,fe=!0,i||e.layoutDependency!==n||n===void 0||e.isPresent!==o?r.willUpdate():this.safeToRemove(),e.isPresent!==o&&(o?r.promote():r.relegate()||V.postRender(()=>{const a=r.getStack();(!a||!a.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),an.postRender(()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:s}=this.props,{projection:i}=e;fe=!0,i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),s&&s.deregister&&s.deregister(i))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function pr(t){const[e,n]=Jl(),s=P.useContext(Fs);return H.jsx(Gu,{...t,layoutGroup:s,switchLayoutGroup:P.useContext(cr),isPresent:e,safeToRemove:n})}const Hu={pan:{Feature:$u},drag:{Feature:Ku,ProjectionNode:nr,MeasureLayout:pr}};function Rs(t,e,n){const{props:s}=t;t.animationState&&s.whileHover&&t.animationState.setActive("whileHover",n==="Start");const i="onHover"+n,o=s[i];o&&V.postRender(()=>o(e,kt(e)))}class _u extends tt{mount(){const{current:e}=this.node;e&&(this.unmount=ka(e,(n,s)=>(Rs(this.node,s,"Start"),i=>Rs(this.node,i,"End"))))}unmount(){}}class zu extends tt{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch{e=!0}!e||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=Et(Mt(this.node.current,"focus",()=>this.onFocus()),Mt(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function Ls(t,e,n){const{props:s}=t;if(t.current instanceof HTMLButtonElement&&t.current.disabled)return;t.animationState&&s.whileTap&&t.animationState.setActive("whileTap",n==="Start");const i="onTap"+(n==="End"?"":n),o=s[i];o&&V.postRender(()=>o(e,kt(e)))}class Xu extends tt{mount(){const{current:e}=this.node;e&&(this.unmount=Ba(e,(n,s)=>(Ls(this.node,s,"Start"),(i,{success:o})=>Ls(this.node,i,o?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const Be=new WeakMap,de=new WeakMap,Yu=t=>{const e=Be.get(t.target);e&&e(t)},qu=t=>{t.forEach(Yu)};function Zu({root:t,...e}){const n=t||document;de.has(n)||de.set(n,{});const s=de.get(n),i=JSON.stringify(e);return s[i]||(s[i]=new IntersectionObserver(qu,{root:t,...e})),s[i]}function Ju(t,e,n){const s=Zu(e);return Be.set(t,n),s.observe(t),()=>{Be.delete(t),s.unobserve(t)}}const Qu={some:0,all:1};class tc extends tt{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:n,margin:s,amount:i="some",once:o}=e,r={root:n?n.current:void 0,rootMargin:s,threshold:typeof i=="number"?i:Qu[i]},a=l=>{const{isIntersecting:c}=l;if(this.isInView===c||(this.isInView=c,o&&!c&&this.hasEnteredView))return;c&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",c);const{onViewportEnter:u,onViewportLeave:h}=this.node.getProps(),f=c?u:h;f&&f(l)};return Ju(this.node.current,r,a)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:e,prevProps:n}=this.node;["amount","margin","root"].some(ec(e,n))&&this.startObserver()}unmount(){}}function ec({viewport:t={}},{viewport:e={}}={}){return n=>t[n]!==e[n]}const nc={inView:{Feature:tc},tap:{Feature:Xu},focus:{Feature:zu},hover:{Feature:_u}},sc={layout:{ProjectionNode:nr,MeasureLayout:pr}},ic={...Du,...nc,...Hu,...sc},me=bu(ic,wu);function gr(t){const e=[];for(const n of t)n.type!=="step"||!n.epicCompletedAt||typeof n.exerciseNumber!="number"||typeof n.stepNumber!="number"||e.push({exerciseNumber:n.exerciseNumber,stepNumber:n.stepNumber});return e}function pn(t){const e=t.exerciseNumber.toString().padStart(2,"0"),n=t.stepNumber.toString().padStart(2,"0"),s=`/exercise/${e}/${n}`;return{id:`${e}/${n}`,problemRoute:`${s}/problem`,solutionRoute:`${s}/solution`}}function yr(t,e){return t.filter(n=>{const{problemRoute:s,solutionRoute:i}=pn(n);return e!==s&&e!==i})}function rc({progress:t,currentPath:e}){if(!t)return null;const n=gr(t);if(n.length<2)return null;const s=yr(n,e);if(s.length===0)return null;const i=s.map(o=>pn(o).id).sort().join(",");return`${e}::${i}`}function oc({progress:t,currentPath:e},n=Math.random){if(!t)return null;const s=gr(t);if(s.length<2)return null;const i=yr(s,e);if(i.length===0)return null;const o=i[Math.floor(n()*i.length)];return o?pn(o).problemRoute:null}function Zt(){const t=ks(),e=br().find(n=>n.formAction==="/progress"&&n.formData?.has("complete"));return!e||!t.progress?t.progress??null:t.progress.map(n=>{const s=e.formData?.get("complete")==="true";return e.formData?.get("lessonSlug")===n.epicLessonSlug?{...n,epicCompletedAt:s?Date.now():null}:n})}function gc(){const t=je().pathname,e=Zt();if(!e)return null;const n=a=>a.type==="workshop-instructions"?0:a.type==="workshop-finished"?1e4:a.type==="instructions"?a.exerciseNumber*100:a.type==="step"?a.exerciseNumber*100+a.stepNumber:a.type==="finished"?a.exerciseNumber*100+100:a.type==="unknown"?1e5:-1,i=e.sort((a,l)=>n(a)-n(l)).find(a=>!a.epicCompletedAt);if(!i||i.type==="unknown")return null;if(i.type==="workshop-instructions")return"/";if(i.type==="workshop-finished")return"/finished";const o=i.exerciseNumber.toString().padStart(2,"0");if(i.type==="instructions")return`/exercise/${o}`;if(i.type==="finished")return`/exercise/${o}/finished`;const r=i.stepNumber.toString().padStart(2,"0");if(i.type==="step"){const a=`/exercise/${o}/${r}/problem`,l=`/exercise/${o}/${r}/solution`;return t===a||t===l?l:a}return null}function yc(){const t=je(),e=Zt(),{practicePastLesson:n}=ks(),[s,i]=P.useState(n?.route??null),o=P.useRef(n?.key??null);return P.useEffect(()=>{const r=rc({progress:e,currentPath:t.pathname});r!==o.current&&(o.current=r,i(r?oc({progress:e,currentPath:t.pathname}):null))},[e,t.pathname]),s}const ac={0:"",1:"before:h-[10%]",2:"before:h-[20%]",3:"before:h-[30%]",4:"before:h-[40%]",5:"before:h-[50%]",6:"before:h-[60%]",7:"before:h-[70%]",8:"before:h-[80%]",9:"before:h-[90%]",10:"before:h-[100%]"};function vc(t){const e=Zt();if(!e?.length)return null;const n=e.filter(o=>(o.type==="instructions"||o.type==="step"||o.type==="finished")&&o.exerciseNumber===t);if(!n.length)return null;const s=n.reduce((o,r)=>r.epicCompletedAt?o+1:o,0)/n.length,i=Math[s>.1?"floor":"ceil"](s*10);return`relative ${ac[i]} before:bg-highlight before:absolute before:left-0 before:top-0 before:w-[4px]`}function xc(t){return vr(t)?.epicCompletedAt?"relative before:h-[100%] before:bg-highlight before:absolute before:left-0 before:top-0 before:w-[4px]":null}function vr({exerciseNumber:t,stepNumber:e,type:n}){const s=Zt();return s?.length?n==="workshop-finished"||n==="workshop-instructions"?s.find(i=>i.type===n)??null:n==="instructions"||n==="finished"?s.find(i=>i.type===n&&i.exerciseNumber===t)??null:n==="step"?s.find(i=>i.type===n&&i.exerciseNumber===t&&i.stepNumber===e)??null:null:null}function Tc({className:t,...e}){const n=Pr(),s=wr(),i=vr(e),o=P.useRef(null),r=P.useRef(null),a=n.formData?.has("complete")?n.formData.get("complete")==="true":!!i?.epicCompletedAt,[l,c]=P.useState(!1),u=je(),h=Sr(),f=h.location?.state?.from,d=h.location?.pathname,m=u.pathname;return P.useEffect(()=>{f==="continue next lesson button"&&m===d&&(c(!0),r.current?.focus())},[u.key,m,d,f]),P.useEffect(()=>{let p=!0;if(l)return new Promise(x=>setTimeout(x,200)).then(async()=>{if(!p||!o.current)return;const x=o.current.getAnimations().map(({finished:g})=>g);return Promise.allSettled(x).then(()=>{p&&c(!1)})}),()=>{p=!1}},[l]),ENV.EPICSHOP_DEPLOYED||!i?null:H.jsxs(n.Form,{method:"POST",action:"/progress",children:[s,H.jsx("input",{type:"hidden",name:"lessonSlug",value:i.epicLessonSlug}),H.jsx("input",{type:"hidden",name:"complete",value:(!a).toString()}),H.jsxs(me.button,{ref:r,onClick:()=>{c(!a)},type:"submit",className:xn("group relative flex w-full items-center justify-between overflow-hidden transition hover:bg-[hsl(var(--foreground)/0.02)] focus:bg-[hsl(var(--foreground)/0.02)]",t),children:[a?"Mark as incomplete":"Mark as complete",l?H.jsx(me.div,{ref:o,className:"bg-foreground/20 absolute right-0 h-20 w-20 rounded-full",initial:{scale:.5,opacity:0},animate:{scale:[.5,2],opacity:[0,1,0]},transition:{duration:1,ease:"easeInOut"}}):null,H.jsx(me.div,{"aria-hidden":!0,className:xn("relative flex h-8 w-8 items-center justify-center overflow-hidden rounded-full border transition",{"bg-foreground text-background duration-1000":a,"group-hover:bg-background duration-100":!a}),children:a?"✓":H.jsx("div",{className:"absolute -translate-y-10 opacity-25 transition group-hover:translate-y-0",children:"✓"})})]})]})}export{Tc as P,Zt as a,xa as b,Ar as c,Vr as d,gc as e,yc as f,xc as g,me as m,ma as s,vc as u};
2
+ //# sourceMappingURL=progress-Bby-ybMA.js.map