import{r as s,g as Xe}from"./vendor-react-Ci7aBfa0.js";var be=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,je=/^[\\/]{2}/;function bt(e,t){return t+e.replace(/\\/g,"/")}var Me="popstate";function _e(e){return typeof e=="object"&&e!=null&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function Rt(e={}){function t(n,a){let o=a.state?.masked,{pathname:i,search:l,hash:u}=o||n.location;return me("",{pathname:i,search:l,hash:u},a.state&&a.state.usr||null,a.state&&a.state.key||"default",o?{pathname:n.location.pathname,search:n.location.search,hash:n.location.hash}:void 0)}function r(n,a){return typeof a=="string"?a:q(a)}return Et(t,r,null,e)}function w(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function P(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function wt(){return Math.random().toString(36).substring(2,10)}function Ne(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function me(e,t,r=null,n,a){return{pathname:typeof e=="string"?e:e.pathname,search:"",hash:"",...typeof t=="string"?U(t):t,state:r,key:t&&t.key||n||wt(),mask:a}}function q({pathname:e="/",search:t="",hash:r=""}){return t&&t!=="?"&&(e+=t.charAt(0)==="?"?t:"?"+t),r&&r!=="#"&&(e+=r.charAt(0)==="#"?r:"#"+r),e}function U(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substring(r),e=e.substring(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substring(n),e=e.substring(0,n)),e&&(t.pathname=e)}return t}function Et(e,t,r,n={}){let{window:a=document.defaultView,v5Compat:o=!1}=n,i=a.history,l="POP",u=null,c=f();c==null&&(c=0,i.replaceState({...i.state,idx:c},""));function f(){return(i.state||{idx:null}).idx}function d(){l="POP";let h=f(),v=h==null?null:h-c;c=h,u&&u({action:l,location:g.location,delta:v})}function m(h,v){l="PUSH";let b=_e(h)?h:me(g.location,h,v);c=f()+1;let R=Ne(b,c),x=g.createHref(b.mask||b);try{i.pushState(R,"",x)}catch(E){if(E instanceof DOMException&&E.name==="DataCloneError")throw E;a.location.assign(x)}o&&u&&u({action:l,location:g.location,delta:1})}function p(h,v){l="REPLACE";let b=_e(h)?h:me(g.location,h,v);c=f();let R=Ne(b,c),x=g.createHref(b.mask||b);i.replaceState(R,"",x),o&&u&&u({action:l,location:g.location,delta:0})}function y(h){return xt(a,h)}let g={get action(){return l},get location(){return e(a,i)},listen(h){if(u)throw new Error("A history only accepts one active listener");return a.addEventListener(Me,d),u=h,()=>{a.removeEventListener(Me,d),u=null}},createHref(h){return t(a,h)},createURL:y,encodeLocation(h){let v=y(h);return{pathname:v.pathname,search:v.search,hash:v.hash}},push:m,replace:p,go(h){return i.go(h)}};return g}function xt(e,t,r=!1){let n="http://localhost";e&&(n=e.location.origin!=="null"?e.location.origin:e.location.href),w(n,"No window.location.(origin|href) available to create URL");let a=typeof t=="string"?t:q(t);return a=a.replace(/ $/,"%20"),!r&&je.test(a)&&(a=n+a),new URL(a,n)}function Ke(e,t,r="/"){return St(e,t,r,!1)}function St(e,t,r,n,a){let o=typeof t=="string"?U(t):t,i=T(o.pathname||"/",r);if(i==null)return null;let l=Ct(e),u=null,c=Dt(i);for(let f=0;u==null&&f<l.length;++f)u=Nt(l[f],c,n);return u}function Ct(e){let t=ze(e);return Pt(t),t}function ze(e,t=[],r=[],n="",a=!1){let o=(i,l,u=a,c)=>{let f={relativePath:c===void 0?i.path||"":c,caseSensitive:i.caseSensitive===!0,childrenIndex:l,route:i};if(f.relativePath.startsWith("/")){if(!f.relativePath.startsWith(n)&&u)return;w(f.relativePath.startsWith(n),`Absolute route path "${f.relativePath}" nested under path "${n}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),f.relativePath=f.relativePath.slice(n.length)}let d=L([n,f.relativePath]),m=r.concat(f);i.children&&i.children.length>0&&(w(i.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${d}".`),ze(i.children,t,m,d,u)),!(i.path==null&&!i.index)&&t.push({path:d,score:Mt(d,i.index),routesMeta:m.map((p,y)=>{let[g,h]=Ge(p.relativePath,p.caseSensitive,y===m.length-1);return{...p,matcher:g,compiledParams:h}})})};return e.forEach((i,l)=>{if(i.path===""||!i.path?.includes("?"))o(i,l);else for(let u of Je(i.path))o(i,l,!0,u)}),t}function Je(e){let t=e.split("/");if(t.length===0)return[];let[r,...n]=t,a=r.endsWith("?"),o=r.replace(/\?$/,"");if(n.length===0)return a?[o,""]:[o];let i=Je(n.join("/")),l=[];return l.push(...i.map(u=>u===""?o:[o,u].join("/"))),a&&l.push(...i),l.map(u=>e.startsWith("/")&&u===""?"/":u)}function Pt(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:_t(t.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}var kt=/^:[\w-]+$/,Lt=3,$t=2,Ft=1,Tt=10,Ot=-2,De=e=>e==="*";function Mt(e,t){let r=e.split("/"),n=r.length;return r.some(De)&&(n+=Ot),t&&(n+=$t),r.filter(a=>!De(a)).reduce((a,o)=>a+(kt.test(o)?Lt:o===""?Ft:Tt),n)}function _t(e,t){return e.length===t.length&&e.slice(0,-1).every((n,a)=>n===t[a])?e[e.length-1]-t[t.length-1]:0}function Nt(e,t,r=!1){let{routesMeta:n}=e,a={},o="/",i=[];for(let l=0;l<n.length;++l){let u=n[l],c=l===n.length-1,f=o==="/"?t:t.slice(o.length)||"/",d={path:u.relativePath,caseSensitive:u.caseSensitive,end:c},m=u.matcher&&u.compiledParams?Ze(d,f,u.matcher,u.compiledParams):te(d,f),p=u.route;if(!m&&c&&r&&!n[n.length-1].route.index&&(m=te({path:u.relativePath,caseSensitive:u.caseSensitive,end:!1},f)),!m)return null;Object.assign(a,m.params),i.push({params:a,pathname:L([o,m.pathname]),pathnameBase:Ut(L([o,m.pathnameBase])),route:p}),m.pathnameBase!=="/"&&(o=L([o,m.pathnameBase]))}return i}function te(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[r,n]=Ge(e.path,e.caseSensitive,e.end);return Ze(e,t,r,n)}function Ze(e,t,r,n){let a=t.match(r);if(!a)return null;let o=a[0],i=o.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:n.reduce((c,{paramName:f,isOptional:d},m)=>{if(f==="*"){let y=l[m]||"";i=o.slice(0,o.length-y.length).replace(/(.)\/+$/,"$1")}const p=l[m];return d&&!p?c[f]=void 0:c[f]=(p||"").replace(/%2F/g,"/"),c},{}),pathname:o,pathnameBase:i,pattern:e}}function Ge(e,t=!1,r=!0){P(e==="*"||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let n=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(i,l,u,c,f)=>{if(n.push({paramName:l,isOptional:u!=null}),u){let d=f.charAt(c+i.length);return d&&d!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(n.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),n]}function Dt(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return P(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function T(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&n!=="/"?null:e.slice(r)||"/"}function It(e,t="/"){let{pathname:r,search:n="",hash:a=""}=typeof e=="string"?U(e):e,o;return r?(r=Qe(r),r.startsWith("/")?o=Ie(r.substring(1),"/"):o=Ie(r,t)):o=t,{pathname:o,search:Ht(n),hash:Bt(a)}}function Ie(e,t){let r=re(t).split("/");return e.split("/").forEach(a=>{a===".."?r.length>1&&r.pop():a!=="."&&r.push(a)}),r.length>1?r.join("/"):"/"}function se(e,t,r,n){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(n)}].  Please separate it out to the \`to.${r}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function At(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function Re(e){let t=At(e);return t.map((r,n)=>n===t.length-1?r.pathname:r.pathnameBase)}function ne(e,t,r,n=!1){let a;typeof e=="string"?a=U(e):(a={...e},w(!a.pathname||!a.pathname.includes("?"),se("?","pathname","search",a)),w(!a.pathname||!a.pathname.includes("#"),se("#","pathname","hash",a)),w(!a.search||!a.search.includes("#"),se("#","search","hash",a)));let o=e===""||a.pathname==="",i=o?"/":a.pathname,l;if(i==null)l=r;else{let d=t.length-1;if(!n&&i.startsWith("..")){let m=i.split("/");for(;m[0]==="..";)m.shift(),d-=1;a.pathname=m.join("/")}l=d>=0?t[d]:"/"}let u=It(a,l),c=i&&i!=="/"&&i.endsWith("/"),f=(o||i===".")&&r.endsWith("/");return!u.pathname.endsWith("/")&&(c||f)&&(u.pathname+="/"),u}var Qe=e=>e.replace(/[\\/]{2,}/g,"/"),L=e=>Qe(e.join("/")),re=e=>e.replace(/\/+$/,""),Ut=e=>re(e).replace(/^\/*/,"/"),Ht=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Bt=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e,Wt=class{constructor(e,t,r,n=!1){this.status=e,this.statusText=t||"",this.internal=n,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}};function Yt(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}function Vt(e){let t=e.map(r=>r.route.path).filter(Boolean);return L(t)||"/"}var et=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function tt(e,t){let r=e;if(typeof r!="string"||!be.test(r))return{absoluteURL:void 0,isExternal:!1,to:r};let n=r,a=!1;if(et)try{let o=new URL(window.location.href),i=je.test(r)?new URL(bt(r,o.protocol)):new URL(r),l=T(i.pathname,t);i.origin===o.origin&&l!=null?r=l+i.search+i.hash:a=!0}catch{P(!1,`<Link to="${r}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:n,isExternal:a,to:r}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var rt=["POST","PUT","PATCH","DELETE"];new Set(rt);var qt=["GET",...rt];new Set(qt);var Xt=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];function jt(e){try{return Xt.includes(new URL(e).protocol)}catch{return!1}}var H=s.createContext(null);H.displayName="DataRouter";var ae=s.createContext(null);ae.displayName="DataRouterState";var nt=s.createContext(!1);function Kt(){return s.useContext(nt)}var at=s.createContext({isTransitioning:!1});at.displayName="ViewTransition";var zt=s.createContext(new Map);zt.displayName="Fetchers";var Jt=s.createContext(null);Jt.displayName="Await";var S=s.createContext(null);S.displayName="Navigation";var X=s.createContext(null);X.displayName="Location";var k=s.createContext({outlet:null,matches:[],isDataRoute:!1});k.displayName="Route";var we=s.createContext(null);we.displayName="RouteError";var ot="REACT_ROUTER_ERROR",Zt="REDIRECT",Gt="ROUTE_ERROR_RESPONSE";function Qt(e){if(e.startsWith(`${ot}:${Zt}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.location=="string"&&typeof t.reloadDocument=="boolean"&&typeof t.replace=="boolean")return t}catch{}}function er(e){if(e.startsWith(`${ot}:${Gt}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string")return new Wt(t.status,t.statusText,t.data)}catch{}}function tr(e,{relative:t}={}){w(B(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:n}=s.useContext(S),{hash:a,pathname:o,search:i}=j(e,{relative:t}),l=o;return r!=="/"&&(l=o==="/"?r:L([r,o])),n.createHref({pathname:l,search:i,hash:a})}function B(){return s.useContext(X)!=null}function $(){return w(B(),"useLocation() may be used only in the context of a <Router> component."),s.useContext(X).location}var it="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function lt(e){s.useContext(S).static||s.useLayoutEffect(e)}function Ee(){let{isDataRoute:e}=s.useContext(k);return e?gr():rr()}function rr(){w(B(),"useNavigate() may be used only in the context of a <Router> component.");let e=s.useContext(H),{basename:t,navigator:r}=s.useContext(S),{matches:n}=s.useContext(k),{pathname:a}=$(),o=JSON.stringify(Re(n)),i=s.useRef(!1);return lt(()=>{i.current=!0}),s.useCallback((u,c={})=>{if(P(i.current,it),!i.current)return;if(typeof u=="number"){r.go(u);return}let f=ne(u,JSON.parse(o),a,c.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:L([t,f.pathname])),(c.replace?r.replace:r.push)(f,c.state,c)},[t,r,o,a,e])}var nr=s.createContext(null);function ar(e){let t=s.useContext(k).outlet;return s.useMemo(()=>t&&s.createElement(nr.Provider,{value:e},t),[t,e])}function Fn(){let{matches:e}=s.useContext(k);return e[e.length-1]?.params??{}}function j(e,{relative:t}={}){let{matches:r}=s.useContext(k),{pathname:n}=$(),a=JSON.stringify(Re(r));return s.useMemo(()=>ne(e,JSON.parse(a),n,t==="path"),[e,a,n,t])}function or(e,t){return st(e,t)}function st(e,t,r){w(B(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:n}=s.useContext(S),{matches:a}=s.useContext(k),o=a[a.length-1],i=o?o.params:{},l=o?o.pathname:"/",u=o?o.pathnameBase:"/",c=o&&o.route;{let h=c&&c.path||"";ct(l,!c||h.endsWith("*")||h.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${l}" (under <Route path="${h}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.

Please change the parent <Route path="${h}"> to <Route path="${h==="/"?"*":`${h}/*`}">.`)}let f=$(),d;if(t){let h=typeof t=="string"?U(t):t;w(u==="/"||h.pathname?.startsWith(u),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${u}" but pathname "${h.pathname}" was given in the \`location\` prop.`),d=h}else d=f;let m=d.pathname||"/",p=m;if(u!=="/"){let h=u.replace(/^\//,"").split("/");p="/"+m.replace(/^\//,"").split("/").slice(h.length).join("/")}let y=r&&r.state.matches.length?r.state.matches.map(h=>Object.assign(h,{route:r.manifest[h.route.id]||h.route})):Ke(e,{pathname:p});P(c||y!=null,`No routes matched location "${d.pathname}${d.search}${d.hash}" `),P(y==null||y[y.length-1].route.element!==void 0||y[y.length-1].route.Component!==void 0||y[y.length-1].route.lazy!==void 0,`Matched leaf route at location "${d.pathname}${d.search}${d.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let g=cr(y&&y.map(h=>Object.assign({},h,{params:Object.assign({},i,h.params),pathname:L([u,n.encodeLocation?n.encodeLocation(h.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:h.pathname]),pathnameBase:h.pathnameBase==="/"?u:L([u,n.encodeLocation?n.encodeLocation(h.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:h.pathnameBase])})),a,r);return t&&g?s.createElement(X.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",mask:void 0,...d},navigationType:"POP"}},g):g}function ir(){let e=pr(),t=Yt(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,n="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:n},o={padding:"2px 4px",backgroundColor:n},i=null;return console.error("Error handled by React Router default ErrorBoundary:",e),i=s.createElement(s.Fragment,null,s.createElement("p",null,"💿 Hey developer 👋"),s.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",s.createElement("code",{style:o},"ErrorBoundary")," or"," ",s.createElement("code",{style:o},"errorElement")," prop on your route.")),s.createElement(s.Fragment,null,s.createElement("h2",null,"Unexpected Application Error!"),s.createElement("h3",{style:{fontStyle:"italic"}},t),r?s.createElement("pre",{style:a},r):null,i)}var lr=s.createElement(ir,null),ut=class extends s.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&typeof e=="object"&&e&&"digest"in e&&typeof e.digest=="string"){const r=er(e.digest);r&&(e=r)}let t=e!==void 0?s.createElement(k.Provider,{value:this.props.routeContext},s.createElement(we.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?s.createElement(sr,{error:e},t):t}};ut.contextType=nt;var ue=new WeakMap;function sr({children:e,error:t}){let{basename:r}=s.useContext(S);if(typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){let n=Qt(t.digest);if(n){let a=ue.get(t);if(a)throw a;let o=tt(n.location,r),i=o.absoluteURL||o.to;if(jt(i))throw new Error("Invalid redirect location");if(et&&!ue.get(t))if(o.isExternal||n.reloadDocument)window.location.href=i;else{const l=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:n.replace}));throw ue.set(t,l),l}return s.createElement("meta",{httpEquiv:"refresh",content:`0;url=${i}`})}}return e}function ur({routeContext:e,match:t,children:r}){let n=s.useContext(H);return n&&n.static&&n.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(n.staticContext._deepestRenderedBoundaryId=t.route.id),s.createElement(k.Provider,{value:e},r)}function cr(e,t=[],r){let n=r?.state;if(e==null){if(!n)return null;if(n.errors)e=n.matches;else if(t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let a=e,o=n?.errors;if(o!=null){let f=a.findIndex(d=>d.route.id&&o?.[d.route.id]!==void 0);w(f>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(o).join(",")}`),a=a.slice(0,Math.min(a.length,f+1))}let i=!1,l=-1;if(r&&n){i=n.renderFallback;for(let f=0;f<a.length;f++){let d=a[f];if((d.route.HydrateFallback||d.route.hydrateFallbackElement)&&(l=f),d.route.id){let{loaderData:m,errors:p}=n,y=d.route.loader&&!m.hasOwnProperty(d.route.id)&&(!p||p[d.route.id]===void 0);if(d.route.lazy||y){r.isStatic&&(i=!0),l>=0?a=a.slice(0,l+1):a=[a[0]];break}}}}let u=r?.onError,c=n&&u?(f,d)=>{u(f,{location:n.location,params:n.matches?.[0]?.params??{},pattern:Vt(n.matches),errorInfo:d})}:void 0;return a.reduceRight((f,d,m)=>{let p,y=!1,g=null,h=null;n&&(p=o&&d.route.id?o[d.route.id]:void 0,g=d.route.errorElement||lr,i&&(l<0&&m===0?(ct("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),y=!0,h=null):l===m&&(y=!0,h=d.route.hydrateFallbackElement||null)));let v=t.concat(a.slice(0,m+1)),b=()=>{let R;return p?R=g:y?R=h:d.route.Component?R=s.createElement(d.route.Component,null):d.route.element?R=d.route.element:R=f,s.createElement(ur,{match:d,routeContext:{outlet:f,matches:v,isDataRoute:n!=null},children:R})};return n&&(d.route.ErrorBoundary||d.route.errorElement||m===0)?s.createElement(ut,{location:n.location,revalidation:n.revalidation,component:g,error:p,children:b(),routeContext:{outlet:null,matches:v,isDataRoute:!0},onError:c}):b()},null)}function xe(e){return`${e} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function fr(e){let t=s.useContext(H);return w(t,xe(e)),t}function dr(e){let t=s.useContext(ae);return w(t,xe(e)),t}function hr(e){let t=s.useContext(k);return w(t,xe(e)),t}function Se(e){let t=hr(e),r=t.matches[t.matches.length-1];return w(r.route.id,`${e} can only be used on routes that contain a unique "id"`),r.route.id}function mr(){return Se("useRouteId")}function pr(){let e=s.useContext(we),t=dr("useRouteError"),r=Se("useRouteError");return e!==void 0?e:t.errors?.[r]}function gr(){let{router:e}=fr("useNavigate"),t=Se("useNavigate"),r=s.useRef(!1);return lt(()=>{r.current=!0}),s.useCallback(async(a,o={})=>{P(r.current,it),r.current&&(typeof a=="number"?await e.navigate(a):await e.navigate(a,{fromRouteId:t,...o}))},[e,t])}var Ae={};function ct(e,t,r){!t&&!Ae[e]&&(Ae[e]=!0,P(!1,r))}s.memo(yr);function yr({routes:e,manifest:t,future:r,state:n,isStatic:a,onError:o}){return st(e,void 0,{manifest:t,state:n,isStatic:a,onError:o})}function Tn({to:e,replace:t,state:r,relative:n}){w(B(),"<Navigate> may be used only in the context of a <Router> component.");let{static:a}=s.useContext(S);P(!a,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:o}=s.useContext(k),{pathname:i}=$(),l=Ee(),u=ne(e,Re(o),i,n==="path"),c=JSON.stringify(u);return s.useEffect(()=>{l(JSON.parse(c),{replace:t,state:r,relative:n})},[l,c,n,t,r]),null}function On(e){return ar(e.context)}function vr(e){w(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function br({basename:e="/",children:t=null,location:r,navigationType:n="POP",navigator:a,static:o=!1,useTransitions:i}){w(!B(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let l=e.replace(/^\/*/,"/"),u=s.useMemo(()=>({basename:l,navigator:a,static:o,useTransitions:i,future:{}}),[l,a,o,i]);typeof r=="string"&&(r=U(r));let{pathname:c="/",search:f="",hash:d="",state:m=null,key:p="default",mask:y}=r,g=s.useMemo(()=>{let h=T(c,l);return h==null?null:{location:{pathname:h,search:f,hash:d,state:m,key:p,mask:y},navigationType:n}},[l,c,f,d,m,p,n,y]);return P(g!=null,`<Router basename="${l}"> is not able to match the URL "${c}${f}${d}" because it does not start with the basename, so the <Router> won't render anything.`),g==null?null:s.createElement(S.Provider,{value:u},s.createElement(X.Provider,{children:t,value:g}))}function Mn({children:e,location:t}){return or(pe(e),t)}function pe(e,t=[]){let r=[];return s.Children.forEach(e,(n,a)=>{if(!s.isValidElement(n))return;let o=[...t,a];if(n.type===s.Fragment){r.push.apply(r,pe(n.props.children,o));return}w(n.type===vr,`[${typeof n.type=="string"?n.type:n.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),w(!n.props.index||!n.props.children,"An index route cannot have child routes.");let i={id:n.props.id||o.join("-"),caseSensitive:n.props.caseSensitive,element:n.props.element,Component:n.props.Component,index:n.props.index,path:n.props.path,middleware:n.props.middleware,loader:n.props.loader,action:n.props.action,hydrateFallbackElement:n.props.hydrateFallbackElement,HydrateFallback:n.props.HydrateFallback,errorElement:n.props.errorElement,ErrorBoundary:n.props.ErrorBoundary,hasErrorBoundary:n.props.hasErrorBoundary===!0||n.props.ErrorBoundary!=null||n.props.errorElement!=null,shouldRevalidate:n.props.shouldRevalidate,handle:n.props.handle,lazy:n.props.lazy};n.props.children&&(i.children=pe(n.props.children,o)),r.push(i)}),r}var Q="get",ee="application/x-www-form-urlencoded";function oe(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement}function Rr(e){return oe(e)&&e.tagName.toLowerCase()==="button"}function wr(e){return oe(e)&&e.tagName.toLowerCase()==="form"}function Er(e){return oe(e)&&e.tagName.toLowerCase()==="input"}function xr(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Sr(e,t){return e.button===0&&(!t||t==="_self")&&!xr(e)}function ge(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,r)=>{let n=e[r];return t.concat(Array.isArray(n)?n.map(a=>[r,a]):[[r,n]])},[]))}function Cr(e,t){let r=ge(e);return t&&t.forEach((n,a)=>{r.has(a)||t.getAll(a).forEach(o=>{r.append(a,o)})}),r}var z=null;function Pr(){if(z===null)try{new FormData(document.createElement("form"),0),z=!1}catch{z=!0}return z}var kr=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ce(e){return e!=null&&!kr.has(e)?(P(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${ee}"`),null):e}function Lr(e,t){let r,n,a,o,i;if(wr(e)){let l=e.getAttribute("action");n=l?T(l,t):null,r=e.getAttribute("method")||Q,a=ce(e.getAttribute("enctype"))||ee,o=new FormData(e)}else if(Rr(e)||Er(e)&&(e.type==="submit"||e.type==="image")){let l=e.form;if(l==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let u=e.getAttribute("formaction")||l.getAttribute("action");if(n=u?T(u,t):null,r=e.getAttribute("formmethod")||l.getAttribute("method")||Q,a=ce(e.getAttribute("formenctype"))||ce(l.getAttribute("enctype"))||ee,o=new FormData(l,e),!Pr()){let{name:c,type:f,value:d}=e;if(f==="image"){let m=c?`${c}.`:"";o.append(`${m}x`,"0"),o.append(`${m}y`,"0")}else c&&o.append(c,d)}}else{if(oe(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r=Q,n=null,a=ee,i=e}return o&&a==="text/plain"&&(i=o,o=void 0),{action:n,method:r.toLowerCase(),encType:a,formData:o,body:i}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function Ce(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function ft(e,t,r,n){let a=typeof e=="string"?new URL(e,typeof window>"u"?"server://singlefetch/":window.location.origin):e;return r?a.pathname.endsWith("/")?a.pathname=`${a.pathname}_.${n}`:a.pathname=`${a.pathname}.${n}`:a.pathname==="/"?a.pathname=`_root.${n}`:t&&T(a.pathname,t)==="/"?a.pathname=`${re(t)}/_root.${n}`:a.pathname=`${re(a.pathname)}.${n}`,a}async function $r(e,t){if(e.id in t)return t[e.id];try{let r=await import(e.module);return t[e.id]=r,r}catch(r){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(r),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Fr(e){return e==null?!1:e.href==null?e.rel==="preload"&&typeof e.imageSrcSet=="string"&&typeof e.imageSizes=="string":typeof e.rel=="string"&&typeof e.href=="string"}async function Tr(e,t,r){let n=await Promise.all(e.map(async a=>{let o=t.routes[a.route.id];if(o){let i=await $r(o,r);return i.links?i.links():[]}return[]}));return Nr(n.flat(1).filter(Fr).filter(a=>a.rel==="stylesheet"||a.rel==="preload").map(a=>a.rel==="stylesheet"?{...a,rel:"prefetch",as:"style"}:{...a,rel:"prefetch"}))}function Ue(e,t,r,n,a,o){let i=(u,c)=>r[c]?u.route.id!==r[c].route.id:!0,l=(u,c)=>r[c].pathname!==u.pathname||r[c].route.path?.endsWith("*")&&r[c].params["*"]!==u.params["*"];return o==="assets"?t.filter((u,c)=>i(u,c)||l(u,c)):o==="data"?t.filter((u,c)=>{let f=n.routes[u.route.id];if(!f||!f.hasLoader)return!1;if(i(u,c)||l(u,c))return!0;if(u.route.shouldRevalidate){let d=u.route.shouldRevalidate({currentUrl:new URL(a.pathname+a.search+a.hash,window.origin),currentParams:r[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:u.params,defaultShouldRevalidate:!0});if(typeof d=="boolean")return d}return!0}):[]}function Or(e,t,{includeHydrateFallback:r}={}){return Mr(e.map(n=>{let a=t.routes[n.route.id];if(!a)return[];let o=[a.module];return a.clientActionModule&&(o=o.concat(a.clientActionModule)),a.clientLoaderModule&&(o=o.concat(a.clientLoaderModule)),r&&a.hydrateFallbackModule&&(o=o.concat(a.hydrateFallbackModule)),a.imports&&(o=o.concat(a.imports)),o}).flat(1))}function Mr(e){return[...new Set(e)]}function _r(e){let t={},r=Object.keys(e).sort();for(let n of r)t[n]=e[n];return t}function Nr(e,t){let r=new Set;return new Set(t),e.reduce((n,a)=>{let o=JSON.stringify(_r(a));return r.has(o)||(r.add(o),n.push({key:o,link:a})),n},[])}function Pe(){let e=s.useContext(H);return Ce(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}function Dr(){let e=s.useContext(ae);return Ce(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}var ke=s.createContext(void 0);ke.displayName="FrameworkContext";function ie(){let e=s.useContext(ke);return Ce(e,"You must render this element inside a <HydratedRouter> element"),e}function Ir(e,t){let r=s.useContext(ke),[n,a]=s.useState(!1),[o,i]=s.useState(!1),{onFocus:l,onBlur:u,onMouseEnter:c,onMouseLeave:f,onTouchStart:d}=t,m=s.useRef(null);s.useEffect(()=>{if(e==="render"&&i(!0),e==="viewport"){let g=v=>{v.forEach(b=>{i(b.isIntersecting)})},h=new IntersectionObserver(g,{threshold:.5});return m.current&&h.observe(m.current),()=>{h.disconnect()}}},[e]),s.useEffect(()=>{if(n){let g=setTimeout(()=>{i(!0)},100);return()=>{clearTimeout(g)}}},[n]);let p=()=>{a(!0)},y=()=>{a(!1),i(!1)};return r?e!=="intent"?[o,m,{}]:[o,m,{onFocus:Y(l,p),onBlur:Y(u,y),onMouseEnter:Y(c,p),onMouseLeave:Y(f,y),onTouchStart:Y(d,p)}]:[!1,m,{}]}function Y(e,t){return r=>{e&&e(r),r.defaultPrevented||t(r)}}function Ar({page:e,...t}){let r=Kt(),{nonce:n}=ie(),{router:a}=Pe(),o=s.useMemo(()=>Ke(a.routes,e,a.basename),[a.routes,e,a.basename]);return o?(t.nonce==null&&n&&(t={...t,nonce:n}),r?s.createElement(Hr,{page:e,matches:o,...t}):s.createElement(Br,{page:e,matches:o,...t})):null}function Ur(e){let{manifest:t,routeModules:r}=ie(),[n,a]=s.useState([]);return s.useEffect(()=>{let o=!1;return Tr(e,t,r).then(i=>{o||a(i)}),()=>{o=!0}},[e,t,r]),n}function Hr({page:e,matches:t,...r}){let n=$(),{future:a}=ie(),{basename:o}=Pe(),i=s.useMemo(()=>{if(e===n.pathname+n.search+n.hash)return[];let l=ft(e,o,a.v8_trailingSlashAwareDataRequests,"rsc"),u=!1,c=[];for(let f of t)typeof f.route.shouldRevalidate=="function"?u=!0:c.push(f.route.id);return u&&c.length>0&&l.searchParams.set("_routes",c.join(",")),[l.pathname+l.search]},[o,a.v8_trailingSlashAwareDataRequests,e,n,t]);return s.createElement(s.Fragment,null,i.map(l=>s.createElement("link",{key:l,rel:"prefetch",as:"fetch",href:l,...r})))}function Br({page:e,matches:t,...r}){let n=$(),{future:a,manifest:o,routeModules:i}=ie(),{basename:l}=Pe(),{loaderData:u,matches:c}=Dr(),f=s.useMemo(()=>Ue(e,t,c,o,n,"data"),[e,t,c,o,n]),d=s.useMemo(()=>Ue(e,t,c,o,n,"assets"),[e,t,c,o,n]),m=s.useMemo(()=>{if(e===n.pathname+n.search+n.hash)return[];let g=new Set,h=!1;if(t.forEach(b=>{let R=o.routes[b.route.id];!R||!R.hasLoader||(!f.some(x=>x.route.id===b.route.id)&&b.route.id in u&&i[b.route.id]?.shouldRevalidate||R.hasClientLoader?h=!0:g.add(b.route.id))}),g.size===0)return[];let v=ft(e,l,a.v8_trailingSlashAwareDataRequests,"data");return h&&g.size>0&&v.searchParams.set("_routes",t.filter(b=>g.has(b.route.id)).map(b=>b.route.id).join(",")),[v.pathname+v.search]},[l,a.v8_trailingSlashAwareDataRequests,u,n,o,f,t,e,i]),p=s.useMemo(()=>Or(d,o),[d,o]),y=Ur(d);return s.createElement(s.Fragment,null,m.map(g=>s.createElement("link",{key:g,rel:"prefetch",as:"fetch",href:g,...r})),p.map(g=>s.createElement("link",{key:g,rel:"modulepreload",href:g,...r})),y.map(({key:g,link:h})=>s.createElement("link",{key:g,nonce:r.nonce,...h,crossOrigin:h.crossOrigin??r.crossOrigin})))}function Wr(...e){return t=>{e.forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})}}var Yr=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{Yr&&(window.__reactRouterVersion="7.18.0")}catch{}function _n({basename:e,children:t,useTransitions:r,window:n}){let a=s.useRef();a.current==null&&(a.current=Rt({window:n,v5Compat:!0}));let o=a.current,[i,l]=s.useState({action:o.action,location:o.location}),u=s.useCallback(c=>{r===!1?l(c):s.startTransition(()=>l(c))},[r]);return s.useLayoutEffect(()=>o.listen(u),[o,u]),s.createElement(br,{basename:e,children:t,location:i.location,navigationType:i.action,navigator:o,useTransitions:r})}var dt=s.forwardRef(function({onClick:t,discover:r="render",prefetch:n="none",relative:a,reloadDocument:o,replace:i,mask:l,state:u,target:c,to:f,preventScrollReset:d,viewTransition:m,defaultShouldRevalidate:p,...y},g){let{basename:h,navigator:v,useTransitions:b}=s.useContext(S),R=typeof f=="string"&&be.test(f),x=tt(f,h);f=x.to;let E=tr(f,{relative:a}),O=$(),M=null;if(l){let _=ne(l,[],O.mask?O.mask.pathname:"/",!0);h!=="/"&&(_.pathname=_.pathname==="/"?h:L([h,_.pathname])),M=v.createHref(_)}let[I,W,le]=Ir(n,y),yt=jr(f,{replace:i,mask:l,state:u,target:c,preventScrollReset:d,relative:a,viewTransition:m,defaultShouldRevalidate:p,useTransitions:b});function vt(_){t&&t(_),_.defaultPrevented||yt(_)}let Te=!(x.isExternal||o),Oe=s.createElement("a",{...y,...le,href:(Te?M:void 0)||x.absoluteURL||E,onClick:Te?vt:t,ref:Wr(g,W),target:c,"data-discover":!R&&r==="render"?"true":void 0});return I&&!R?s.createElement(s.Fragment,null,Oe,s.createElement(Ar,{page:E})):Oe});dt.displayName="Link";var Vr=s.forwardRef(function({"aria-current":t="page",caseSensitive:r=!1,className:n="",end:a=!1,style:o,to:i,viewTransition:l,children:u,...c},f){let d=j(i,{relative:c.relative}),m=$(),p=s.useContext(ae),{navigator:y,basename:g}=s.useContext(S),h=p!=null&&Gr(d)&&l===!0,v=y.encodeLocation?y.encodeLocation(d).pathname:d.pathname,b=m.pathname,R=p&&p.navigation&&p.navigation.location?p.navigation.location.pathname:null;r||(b=b.toLowerCase(),R=R?R.toLowerCase():null,v=v.toLowerCase()),R&&g&&(R=T(R,g)||R);const x=v!=="/"&&v.endsWith("/")?v.length-1:v.length;let E=b===v||!a&&b.startsWith(v)&&b.charAt(x)==="/",O=R!=null&&(R===v||!a&&R.startsWith(v)&&R.charAt(v.length)==="/"),M={isActive:E,isPending:O,isTransitioning:h},I=E?t:void 0,W;typeof n=="function"?W=n(M):W=[n,E?"active":null,O?"pending":null,h?"transitioning":null].filter(Boolean).join(" ");let le=typeof o=="function"?o(M):o;return s.createElement(dt,{...c,"aria-current":I,className:W,ref:f,style:le,to:i,viewTransition:l},typeof u=="function"?u(M):u)});Vr.displayName="NavLink";var qr=s.forwardRef(({discover:e="render",fetcherKey:t,navigate:r,reloadDocument:n,replace:a,state:o,method:i=Q,action:l,onSubmit:u,relative:c,preventScrollReset:f,viewTransition:d,defaultShouldRevalidate:m,...p},y)=>{let{useTransitions:g}=s.useContext(S),h=Jr(),v=Zr(l,{relative:c}),b=i.toLowerCase()==="get"?"get":"post",R=typeof l=="string"&&be.test(l),x=E=>{if(u&&u(E),E.defaultPrevented)return;E.preventDefault();let O=E.nativeEvent.submitter,M=O?.getAttribute("formmethod")||i,I=()=>h(O||E.currentTarget,{fetcherKey:t,method:M,navigate:r,replace:a,state:o,relative:c,preventScrollReset:f,viewTransition:d,defaultShouldRevalidate:m});g&&r!==!1?s.startTransition(()=>I()):I()};return s.createElement("form",{ref:y,method:b,action:v,onSubmit:n?u:x,...p,"data-discover":!R&&e==="render"?"true":void 0})});qr.displayName="Form";function Xr(e){return`${e} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function ht(e){let t=s.useContext(H);return w(t,Xr(e)),t}function jr(e,{target:t,replace:r,mask:n,state:a,preventScrollReset:o,relative:i,viewTransition:l,defaultShouldRevalidate:u,useTransitions:c}={}){let f=Ee(),d=$(),m=j(e,{relative:i});return s.useCallback(p=>{if(Sr(p,t)){p.preventDefault();let y=r!==void 0?r:q(d)===q(m),g=()=>f(e,{replace:y,mask:n,state:a,preventScrollReset:o,relative:i,viewTransition:l,defaultShouldRevalidate:u});c?s.startTransition(()=>g()):g()}},[d,f,m,r,n,a,t,e,o,i,l,u,c])}function Nn(e){P(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=s.useRef(ge(e)),r=s.useRef(!1),n=$(),a=s.useMemo(()=>Cr(n.search,r.current?null:t.current),[n.search]),o=Ee(),i=s.useCallback((l,u)=>{const c=ge(typeof l=="function"?l(new URLSearchParams(a)):l);r.current=!0,o("?"+c,u)},[o,a]);return[a,i]}var Kr=0,zr=()=>`__${String(++Kr)}__`;function Jr(){let{router:e}=ht("useSubmit"),{basename:t}=s.useContext(S),r=mr(),n=e.fetch,a=e.navigate;return s.useCallback(async(o,i={})=>{let{action:l,method:u,encType:c,formData:f,body:d}=Lr(o,t);if(i.navigate===!1){let m=i.fetcherKey||zr();await n(m,r,i.action||l,{defaultShouldRevalidate:i.defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:f,body:d,formMethod:i.method||u,formEncType:i.encType||c,flushSync:i.flushSync})}else await a(i.action||l,{defaultShouldRevalidate:i.defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:f,body:d,formMethod:i.method||u,formEncType:i.encType||c,replace:i.replace,state:i.state,fromRouteId:r,flushSync:i.flushSync,viewTransition:i.viewTransition})},[n,a,t,r])}function Zr(e,{relative:t}={}){let{basename:r}=s.useContext(S),n=s.useContext(k);w(n,"useFormAction must be used inside a RouteContext");let[a]=n.matches.slice(-1),o={...j(e||".",{relative:t})},i=$();if(e==null){o.search=i.search;let l=new URLSearchParams(o.search),u=l.getAll("index");if(u.some(f=>f==="")){l.delete("index"),u.filter(d=>d).forEach(d=>l.append("index",d));let f=l.toString();o.search=f?`?${f}`:""}}return(!e||e===".")&&a.route.index&&(o.search=o.search?o.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(o.pathname=o.pathname==="/"?r:L([r,o.pathname])),q(o)}function Gr(e,{relative:t}={}){let r=s.useContext(at);w(r!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`.  Did you accidentally import `RouterProvider` from `react-router`?");let{basename:n}=ht("useViewTransitionState"),a=j(e,{relative:t});if(!r.isTransitioning)return!1;let o=T(r.currentLocation.pathname,n)||r.currentLocation.pathname,i=T(r.nextLocation.pathname,n)||r.nextLocation.pathname;return te(a.pathname,i)!=null||te(a.pathname,o)!=null}var fe,He;function Qr(){if(He)return fe;He=1;var e=function(t,r,n,a,o,i,l,u){if(!t){var c;if(r===void 0)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var f=[n,a,o,i,l,u],d=0;c=new Error(r.replace(/%s/g,function(){return f[d++]})),c.name="Invariant Violation"}throw c.framesToPop=1,c}};return fe=e,fe}var en=Qr();const Dn=Xe(en);var de,Be;function tn(){return Be||(Be=1,de=function(t,r,n,a){var o=n?n.call(a,t,r):void 0;if(o!==void 0)return!!o;if(t===r)return!0;if(typeof t!="object"||!t||typeof r!="object"||!r)return!1;var i=Object.keys(t),l=Object.keys(r);if(i.length!==l.length)return!1;for(var u=Object.prototype.hasOwnProperty.bind(r),c=0;c<i.length;c++){var f=i[c];if(!u(f))return!1;var d=t[f],m=r[f];if(o=n?n.call(a,d,m,f):void 0,o===!1||o===void 0&&d!==m)return!1}return!0}),de}var rn=tn();const In=Xe(rn);var nn=(e,t,r,n,a,o,i,l)=>{let u=document.documentElement,c=["light","dark"];function f(p){(Array.isArray(e)?e:[e]).forEach(y=>{let g=y==="class",h=g&&o?a.map(v=>o[v]||v):a;g?(u.classList.remove(...h),u.classList.add(o&&o[p]?o[p]:p)):u.setAttribute(y,p)}),d(p)}function d(p){l&&c.includes(p)&&(u.style.colorScheme=p)}function m(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(n)f(n);else try{let p=localStorage.getItem(t)||r,y=i&&p==="system"?m():p;f(y)}catch{}},an=s.createContext(void 0),on={setTheme:e=>{},themes:[]},An=()=>{var e;return(e=s.useContext(an))!=null?e:on};s.memo(({forcedTheme:e,storageKey:t,attribute:r,enableSystem:n,enableColorScheme:a,defaultTheme:o,value:i,themes:l,nonce:u,scriptProps:c})=>{let f=JSON.stringify([r,t,o,e,l,i,n,a]).slice(1,-1);return s.createElement("script",{...c,suppressHydrationWarning:!0,nonce:typeof window>"u"?u:"",dangerouslySetInnerHTML:{__html:`(${nn.toString()})(${f})`}})});function K(e){return e+.5|0}const N=(e,t,r)=>Math.max(Math.min(e,r),t);function V(e){return N(K(e*2.55),0,255)}function D(e){return N(K(e*255),0,255)}function F(e){return N(K(e/2.55)/100,0,1)}function We(e){return N(K(e*100),0,100)}const C={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},ye=[..."0123456789ABCDEF"],ln=e=>ye[e&15],sn=e=>ye[(e&240)>>4]+ye[e&15],J=e=>(e&240)>>4===(e&15),un=e=>J(e.r)&&J(e.g)&&J(e.b)&&J(e.a);function cn(e){var t=e.length,r;return e[0]==="#"&&(t===4||t===5?r={r:255&C[e[1]]*17,g:255&C[e[2]]*17,b:255&C[e[3]]*17,a:t===5?C[e[4]]*17:255}:(t===7||t===9)&&(r={r:C[e[1]]<<4|C[e[2]],g:C[e[3]]<<4|C[e[4]],b:C[e[5]]<<4|C[e[6]],a:t===9?C[e[7]]<<4|C[e[8]]:255})),r}const fn=(e,t)=>e<255?t(e):"";function dn(e){var t=un(e)?ln:sn;return e?"#"+t(e.r)+t(e.g)+t(e.b)+fn(e.a,t):void 0}const hn=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function mt(e,t,r){const n=t*Math.min(r,1-r),a=(o,i=(o+e/30)%12)=>r-n*Math.max(Math.min(i-3,9-i,1),-1);return[a(0),a(8),a(4)]}function mn(e,t,r){const n=(a,o=(a+e/60)%6)=>r-r*t*Math.max(Math.min(o,4-o,1),0);return[n(5),n(3),n(1)]}function pn(e,t,r){const n=mt(e,1,.5);let a;for(t+r>1&&(a=1/(t+r),t*=a,r*=a),a=0;a<3;a++)n[a]*=1-t-r,n[a]+=t;return n}function gn(e,t,r,n,a){return e===a?(t-r)/n+(t<r?6:0):t===a?(r-e)/n+2:(e-t)/n+4}function Le(e){const r=e.r/255,n=e.g/255,a=e.b/255,o=Math.max(r,n,a),i=Math.min(r,n,a),l=(o+i)/2;let u,c,f;return o!==i&&(f=o-i,c=l>.5?f/(2-o-i):f/(o+i),u=gn(r,n,a,f,o),u=u*60+.5),[u|0,c||0,l]}function $e(e,t,r,n){return(Array.isArray(t)?e(t[0],t[1],t[2]):e(t,r,n)).map(D)}function Fe(e,t,r){return $e(mt,e,t,r)}function yn(e,t,r){return $e(pn,e,t,r)}function vn(e,t,r){return $e(mn,e,t,r)}function pt(e){return(e%360+360)%360}function bn(e){const t=hn.exec(e);let r=255,n;if(!t)return;t[5]!==n&&(r=t[6]?V(+t[5]):D(+t[5]));const a=pt(+t[2]),o=+t[3]/100,i=+t[4]/100;return t[1]==="hwb"?n=yn(a,o,i):t[1]==="hsv"?n=vn(a,o,i):n=Fe(a,o,i),{r:n[0],g:n[1],b:n[2],a:r}}function Rn(e,t){var r=Le(e);r[0]=pt(r[0]+t),r=Fe(r),e.r=r[0],e.g=r[1],e.b=r[2]}function wn(e){if(!e)return;const t=Le(e),r=t[0],n=We(t[1]),a=We(t[2]);return e.a<255?`hsla(${r}, ${n}%, ${a}%, ${F(e.a)})`:`hsl(${r}, ${n}%, ${a}%)`}const Ye={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},Ve={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};function En(){const e={},t=Object.keys(Ve),r=Object.keys(Ye);let n,a,o,i,l;for(n=0;n<t.length;n++){for(i=l=t[n],a=0;a<r.length;a++)o=r[a],l=l.replace(o,Ye[o]);o=parseInt(Ve[i],16),e[l]=[o>>16&255,o>>8&255,o&255]}return e}let Z;function xn(e){Z||(Z=En(),Z.transparent=[0,0,0,0]);const t=Z[e.toLowerCase()];return t&&{r:t[0],g:t[1],b:t[2],a:t.length===4?t[3]:255}}const Sn=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;function Cn(e){const t=Sn.exec(e);let r=255,n,a,o;if(t){if(t[7]!==n){const i=+t[7];r=t[8]?V(i):N(i*255,0,255)}return n=+t[1],a=+t[3],o=+t[5],n=255&(t[2]?V(n):N(n,0,255)),a=255&(t[4]?V(a):N(a,0,255)),o=255&(t[6]?V(o):N(o,0,255)),{r:n,g:a,b:o,a:r}}}function Pn(e){return e&&(e.a<255?`rgba(${e.r}, ${e.g}, ${e.b}, ${F(e.a)})`:`rgb(${e.r}, ${e.g}, ${e.b})`)}const he=e=>e<=.0031308?e*12.92:Math.pow(e,1/2.4)*1.055-.055,A=e=>e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4);function kn(e,t,r){const n=A(F(e.r)),a=A(F(e.g)),o=A(F(e.b));return{r:D(he(n+r*(A(F(t.r))-n))),g:D(he(a+r*(A(F(t.g))-a))),b:D(he(o+r*(A(F(t.b))-o))),a:e.a+r*(t.a-e.a)}}function G(e,t,r){if(e){let n=Le(e);n[t]=Math.max(0,Math.min(n[t]+n[t]*r,t===0?360:1)),n=Fe(n),e.r=n[0],e.g=n[1],e.b=n[2]}}function gt(e,t){return e&&Object.assign(t||{},e)}function qe(e){var t={r:0,g:0,b:0,a:255};return Array.isArray(e)?e.length>=3&&(t={r:e[0],g:e[1],b:e[2],a:255},e.length>3&&(t.a=D(e[3]))):(t=gt(e,{r:0,g:0,b:0,a:1}),t.a=D(t.a)),t}function Ln(e){return e.charAt(0)==="r"?Cn(e):bn(e)}class ve{constructor(t){if(t instanceof ve)return t;const r=typeof t;let n;r==="object"?n=qe(t):r==="string"&&(n=cn(t)||xn(t)||Ln(t)),this._rgb=n,this._valid=!!n}get valid(){return this._valid}get rgb(){var t=gt(this._rgb);return t&&(t.a=F(t.a)),t}set rgb(t){this._rgb=qe(t)}rgbString(){return this._valid?Pn(this._rgb):void 0}hexString(){return this._valid?dn(this._rgb):void 0}hslString(){return this._valid?wn(this._rgb):void 0}mix(t,r){if(t){const n=this.rgb,a=t.rgb;let o;const i=r===o?.5:r,l=2*i-1,u=n.a-a.a,c=((l*u===-1?l:(l+u)/(1+l*u))+1)/2;o=1-c,n.r=255&c*n.r+o*a.r+.5,n.g=255&c*n.g+o*a.g+.5,n.b=255&c*n.b+o*a.b+.5,n.a=i*n.a+(1-i)*a.a,this.rgb=n}return this}interpolate(t,r){return t&&(this._rgb=kn(this._rgb,t._rgb,r)),this}clone(){return new ve(this.rgb)}alpha(t){return this._rgb.a=D(t),this}clearer(t){const r=this._rgb;return r.a*=1-t,this}greyscale(){const t=this._rgb,r=K(t.r*.3+t.g*.59+t.b*.11);return t.r=t.g=t.b=r,this}opaquer(t){const r=this._rgb;return r.a*=1+t,this}negate(){const t=this._rgb;return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,this}lighten(t){return G(this._rgb,2,t),this}darken(t){return G(this._rgb,2,-t),this}saturate(t){return G(this._rgb,1,t),this}desaturate(t){return G(this._rgb,1,-t),this}rotate(t){return Rn(this._rgb,t),this}}export{_n as B,ve as C,dt as L,Tn as N,On as O,Mn as R,Ee as a,vr as b,Fn as c,Nn as d,Dn as i,In as s,$ as u,An as z};