your-ai-workflow-firebase-os 1.14.28 → 1.14.31
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.
- package/dist/ContactPopup-DrQAXYqu.cjs +12 -0
- package/dist/ContactPopup-LfzAjtsW.js +11467 -0
- package/dist/{PhoneInputField-OjloPZ87.js → PhoneInputField-Bll7PF7n.js} +110 -20
- package/dist/PhoneInputField-CP17hM3V.cjs +1 -0
- package/dist/PhoneInputField-CrNTYSUD.js +2 -0
- package/dist/PhoneInputField-GOziIc5M.cjs +1 -0
- package/dist/{aiModels-CNiIFobN.js → aiModels-CvJ_xBO6.js} +32 -9
- package/dist/aiModels-DkIALQ-X.cjs +1 -0
- package/dist/{bake-CnDRgyJI.js → bake-BWgMK1wa.js} +1 -1
- package/dist/{bake-DYC-Hu9s.cjs → bake-CF9BCoRK.cjs} +1 -1
- package/dist/{fileBytes-D5mRzpMu.cjs → fileBytes-CBsYdEIq.cjs} +1 -1
- package/dist/{fileBytes-CoY9dv0r.js → fileBytes-DEBKo1DE.js} +1 -1
- package/dist/index.d.ts +11 -0
- package/dist/lib/AuthContext.d.ts +23 -0
- package/dist/lucide-react-D9Skn8EM.js +38405 -0
- package/dist/lucide-react-DCNbQTK3.cjs +1 -0
- package/dist/renderer.cjs.js +1 -1
- package/dist/renderer.es.js +1 -1
- package/dist/server/index.d.ts +24 -0
- package/dist/server.cjs.js +6 -6
- package/dist/server.es.js +694 -477
- package/dist/verifiedAccount-BqmmFNkc.cjs +1 -0
- package/dist/verifiedAccount-CkG1fNnm.js +172 -0
- package/dist/vite.cjs.js +20 -11
- package/dist/vite.es.js +235 -181
- package/dist/your-ai-workflow-firebase-os.cjs.js +445 -43
- package/dist/your-ai-workflow-firebase-os.css +1 -1
- package/dist/your-ai-workflow-firebase-os.es.js +19607 -13721
- package/package.json +1 -1
- package/src/configs/forms/registry.ts +41 -0
- package/dist/ContactPopup-BHaWpfMe.js +0 -49398
- package/dist/ContactPopup-Bv5szfJN.cjs +0 -12
- package/dist/PhoneInputField-B8w9bD8n.cjs +0 -1
- package/dist/access-C9HgZZQ7.cjs +0 -1
- package/dist/access-CMAP3CCS.js +0 -136
- package/dist/aiModels-lc3GGnkW.cjs +0 -1
- /package/dist/{pdf-xy2F9FGQ.js → pdf-CHY5b66t.js} +0 -0
- /package/dist/{pdf-BIqotP7g.cjs → pdf-Er1Vwxg3.cjs} +0 -0
- /package/dist/{pdf.worker.min-CC4ZIQL4.cjs → pdf.worker.min-C8Ic-DXr.cjs} +0 -0
- /package/dist/{pdf.worker.min-CFTlUfSj.js → pdf.worker.min-CDfj1q2P.js} +0 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
const e=require(`./chunk-CiTBaPhY.cjs`),t=require(`./verifiedAccount-BqmmFNkc.cjs`),n=require(`./lucide-react-DCNbQTK3.cjs`);let r=require(`react`);r=e.a(r,1);let i=require(`react/jsx-runtime`),a=require(`firebase/app`),o=require(`firebase/auth`),s=require(`firebase/firestore`),c=require(`firebase/storage`),l=require(`react-router-dom`),u=require(`react-dom`);var d=e.r({contactFormConfig:()=>f}),f={systemName:`contact`,formType:`public`,redirectTo:`/`,title:`Get in Touch`,buttonName:`Contact Us`,submitText:`Send Message`,fields:[{name:`name`,type:`text`,label:`Full Name`,placeholder:`John Doe`,required:!0},{name:`email`,type:`email`,label:`Email Address`,placeholder:`john@example.com`,required:!0},{name:`phone`,type:`tel`,label:`Phone Number`,placeholder:`+1 (555) 000-0000`,required:!1},{name:`questions`,type:`textarea`,label:`Your Questions`,placeholder:`How can we help you?`,required:!0}]},p=e.r({supportFormConfig:()=>m}),m={systemName:`support`,formType:`private`,redirectTo:`/dashboard`,title:`Request Assistance`,buttonName:`Get Assistance`,submitText:`Submit Request`,fields:[{name:`topic`,type:`text`,label:`Topic`,placeholder:`E.g. Password reset issue`,required:!0},{name:`contactEmail`,type:`email`,label:`Contact Email`,placeholder:`your@email.com`,required:!0},{name:`description`,type:`textarea`,label:`Description`,placeholder:`Please describe your issue in detail...`,required:!0}]},h={appName:`Your AI Firebase`,defaultTheme:`light`,showThemeToggle:!0,logoUrl:`https://firebasestorage.googleapis.com/v0/b/fir-os-47863.firebasestorage.app/o/pub_files%2F1776321238933_favicon_smaller.png?alt=media&token=efecb55c-2456-4cbe-a20a-b86db54a1e55`,faviconUrl:`https://firebasestorage.googleapis.com/v0/b/fir-os-47863.firebasestorage.app/o/pub_files%2F1776321238933_favicon_smaller.png?alt=media&token=efecb55c-2456-4cbe-a20a-b86db54a1e55`,colors:{dark:{background:`#07070f`,backgroundSecondary:`#0a0a18`,foreground:`#f0eeff`,accent:`#a78bfa`,buttonText:`#ffffff`},light:{background:`#fcfaff`,backgroundSecondary:`#f7f3ff`,foreground:`#1e1b4b`,accent:`#7c3aed`,buttonText:`#ffffff`}},cornerRounding:`default`,cornerRadii:{buttonRadius:.75,inputRadius:.75,cardRadius:1.5,modalRadius:2.5}},g=(0,r.createContext)({});function _({config:e,children:t}){return(0,i.jsx)(g.Provider,{value:e,children:t})}var v=()=>(0,r.useContext)(g),y=`1.14.31`,b=typeof window<`u`?r.useLayoutEffect:r.useEffect,x=(0,r.createContext)(void 0),S=e=>{let t=e?.defaultTheme;return t!==`light`&&t!==`dark`||e?.showThemeToggle?null:t};function C({children:e,scopeSelector:t}){let n=v(),a=(0,r.useMemo)(()=>n?.themeConfig||h,[n?.themeConfig]),o=S(a),s=!!a.showThemeToggle;(0,r.useEffect)(()=>{try{localStorage.removeItem(`theme_config_cache`),localStorage.removeItem(`theme_saved_cache`)}catch{}console.info(`Your AI Firebase ${y} · colours from theme.config.ts`)},[]);let[c,l]=(0,r.useState)(()=>{if(o)return o;if(typeof window>`u`)return a.defaultTheme||`system`;let e=localStorage.getItem(`theme-mode`),t=localStorage.getItem(`last-seen-default-theme`);return a.defaultTheme&&a.defaultTheme!==t?(localStorage.setItem(`last-seen-default-theme`,a.defaultTheme),localStorage.removeItem(`theme-mode`),a.defaultTheme):e||a.defaultTheme||`system`}),[u,d]=(0,r.useState)(()=>{if(o)return o;if(typeof window>`u`)return a.defaultTheme===`light`?`light`:`dark`;let e=localStorage.getItem(`theme-mode`),t=localStorage.getItem(`last-seen-default-theme`),n=e||a.defaultTheme||`system`;return a.defaultTheme&&a.defaultTheme!==t&&(n=a.defaultTheme),n===`system`?window.matchMedia(`(prefers-color-scheme: light)`).matches?`light`:`dark`:n});return(0,r.useEffect)(()=>{let e=a.defaultTheme;e&&(o&&l(o),e!==localStorage.getItem(`last-seen-default-theme`)&&(localStorage.setItem(`last-seen-default-theme`,e),localStorage.removeItem(`theme-mode`),l(e)))},[a.defaultTheme,o]),(0,r.useEffect)(()=>{let e=e=>{c===`system`&&d(e.matches?`light`:`dark`)},t=window.matchMedia(`(prefers-color-scheme: light)`);return c===`system`?(d(t.matches?`light`:`dark`),t.addEventListener(`change`,e)):d(c),()=>t.removeEventListener(`change`,e)},[c]),b(()=>{let e=(t?document.querySelector(t):document.documentElement)||document.documentElement,n=u===`dark`?a.colors.dark:a.colors.light;e.style.setProperty(`--bg-color`,n.background),e.style.setProperty(`--bg-secondary-color`,n.backgroundSecondary||n.background),e.style.setProperty(`--fg-color`,n.foreground),e.style.setProperty(`--accent-color`,n.accent);let r=u===`dark`;e.style.setProperty(`--panel-bg`,n.panelBg||`color-mix(in srgb, ${n.accent} ${r?`5%`:`4%`}, transparent)`),e.style.setProperty(`--panel-border`,n.panelBorder||`color-mix(in srgb, ${n.accent} 15%, transparent)`);let i=(e,t,n)=>{if(!e||e.length===0)return t||`transparent`;if(e.length===1)return e[0];let r=e.map((t,n)=>`${t} ${Math.round(n/(e.length-1)*100)}%`).join(`, `);return n===`conic`?`conic-gradient(from 180deg at 50% 100%, ${r})`:`linear-gradient(135deg, ${r})`},o=`linear-gradient(135deg, color-mix(in oklab, ${n.accent} ${r?`70%`:`78%`}, black) 0%, ${n.accent} 100%)`,s=`linear-gradient(135deg, color-mix(in oklab, ${n.accent} ${r?`80%`:`85%`}, black) 0%, color-mix(in oklab, ${n.accent} 72%, white) 100%)`;e.style.setProperty(`--button-bg`,i(n.buttonGradient,o,n.buttonGradientShape)),e.style.setProperty(`--button-fg`,n.buttonText||`#ffffff`),e.style.setProperty(`--button-hover-bg`,i(n.buttonHoverGradient||n.buttonGradient,s,n.buttonGradientShape)),e.style.setProperty(`--text-gradient`,i(n.textGradient,`linear-gradient(135deg, ${n.foreground} 0%, ${n.accent} 100%)`)),e.style.setProperty(`--glow-color`,n.glowColor||`color-mix(in srgb, ${n.accent} ${r?`40%`:`30%`}, transparent)`),e.style.setProperty(`--notification-icon-color`,n.notificationIconColor||n.accent);let l=n.secondaryButton?.bg||(u===`dark`?`rgba(255, 255, 255, 0.05)`:`rgba(0, 0, 0, 0.03)`),d=n.secondaryButton?.border||(u===`dark`?`rgba(255, 255, 255, 0.1)`:`rgba(0, 0, 0, 0.06)`),f=n.secondaryButton?.text||n.foreground;if(e.style.setProperty(`--btn-sec-bg`,l),e.style.setProperty(`--btn-sec-border`,d),e.style.setProperty(`--btn-sec-text`,f),e.style.setProperty(`--selection-bg`,n.selectionBg||`color-mix(in srgb, var(--accent-color) 40%, transparent)`),e.style.setProperty(`--selection-text`,n.selectionText||`#ffffff`),e.setAttribute(`data-theme`,u),localStorage.setItem(`theme-mode`,c),a.cornerRounding===`custom`&&a.cornerRadii?(e.style.setProperty(`--btn-radius`,`${parseFloat(String(a.cornerRadii.buttonRadius))||0}rem`),e.style.setProperty(`--card-radius`,`${parseFloat(String(a.cornerRadii.cardRadius))||0}rem`),e.style.setProperty(`--input-radius`,`${parseFloat(String(a.cornerRadii.inputRadius))||0}rem`),e.style.setProperty(`--modal-radius`,`${parseFloat(String(a.cornerRadii.modalRadius))||0}rem`)):(e.style.setProperty(`--btn-radius`,`0.75rem`),e.style.setProperty(`--card-radius`,`1.5rem`),e.style.setProperty(`--input-radius`,`0.75rem`),e.style.setProperty(`--modal-radius`,`1.5rem`)),!document.getElementById(`inter-font`)){let e=document.createElement(`link`);e.id=`inter-font`,e.rel=`stylesheet`,e.href=`https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap`,document.head.appendChild(e)}e.style.fontSize=`16px`,e.style.setProperty(`--weight-h1`,`800`),e.style.setProperty(`--weight-h2`,`700`),e.style.setProperty(`--weight-h3`,`700`),e.style.setProperty(`--leading-normal`,`1.5`);let p=document.querySelector(`link[rel*='icon']`);p||(p=document.createElement(`link`),p.rel=`icon`,document.head.appendChild(p)),a.faviconUrl&&(p.href=a.faviconUrl),a.appName&&(document.title=a.appName)},[u,c,a]),(0,i.jsx)(x.Provider,{value:{theme:u,setTheme:e=>{o||l(e)},toggleTheme:()=>{o||l(u===`light`?`dark`:`light`)},isSystem:c===`system`,setIsSystem:e=>{o||l(e?`system`:u)},config:a,activeConfig:a,canSwitchTheme:s},children:e})}var w=()=>{let e=(0,r.useContext)(x);if(!e)throw Error(`useTheme must be used within ThemeProvider`);return e},T=null,E=null,D=null,O=null,ee=null;function te(e){let t=e.projectId||``;if((0,a.getApps)().length&&ee===t){T=(0,a.getApp)(),E=(0,o.getAuth)(T);try{D=(0,s.initializeFirestore)(T,{localCache:(0,s.persistentLocalCache)({tabManager:(0,s.persistentMultipleTabManager)()})})}catch{D=(0,s.getFirestore)(T)}O=(0,c.getStorage)(T);return}if((0,a.getApps)().length&&ee!==t)try{(0,a.deleteApp)((0,a.getApp)())}catch{}T=(0,a.initializeApp)(e),ee=t,E=(0,o.getAuth)(T);try{D=(0,s.initializeFirestore)(T,{localCache:(0,s.persistentLocalCache)({tabManager:(0,s.persistentMultipleTabManager)()})})}catch{D=(0,s.getFirestore)(T)}O=(0,c.getStorage)(T)}function k(e){try{return{BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,VITE_ADMIN_EMAILS:void 0,VITE_FIREBASE_API_KEY:void 0,VITE_FIREBASE_APP_ID:void 0,VITE_FIREBASE_AUTH_DOMAIN:void 0,VITE_FIREBASE_MESSAGING_SENDER_ID:void 0,VITE_FIREBASE_PROJECT_ID:void 0,VITE_FIREBASE_STORAGE_BUCKET:void 0}?.[e]||``}catch{return``}}var A=[`VITE_FIREBASE_API_KEY`,`VITE_FIREBASE_AUTH_DOMAIN`,`VITE_FIREBASE_PROJECT_ID`,`VITE_FIREBASE_STORAGE_BUCKET`,`VITE_FIREBASE_MESSAGING_SENDER_ID`,`VITE_FIREBASE_APP_ID`],j={VITE_FIREBASE_API_KEY:`apiKey`,VITE_FIREBASE_AUTH_DOMAIN:`authDomain`,VITE_FIREBASE_PROJECT_ID:`projectId`,VITE_FIREBASE_STORAGE_BUCKET:`storageBucket`,VITE_FIREBASE_MESSAGING_SENDER_ID:`messagingSenderId`,VITE_FIREBASE_APP_ID:`appId`};function M(){let e={};for(let t of A){let n=k(t);if(!n)return null;e[j[t]]=n}return e}var ne=M();ne&&!(0,a.getApps)().length&&te(ne);var N=new Map;function re(e,t,n,r){let i=N.get(e);if(!i){let n={subscribers:new Set,stop:()=>{},last:null,refused:void 0};N.set(e,n),n.stop=(0,s.onSnapshot)(t(),e=>{n.last=e,n.refused=void 0,n.subscribers.forEach(t=>ie(()=>t.next(e)))},e=>{n.refused=e,n.subscribers.forEach(t=>ie(()=>t.fail(e)))}),i=n}let a={next:n,fail:r};return i.subscribers.add(a),i.last?ie(()=>n(i.last)):i.refused!==void 0&&ie(()=>r(i.refused)),()=>{let t=N.get(e);!t||!t.subscribers.delete(a)||t.subscribers.size===0&&(t.stop(),N.delete(e))}}function ie(e){try{e()}catch(e){console.error(`A screen could not take a shared Firestore answer`,e)}}var ae=[`user`,`internal`,`admin`],oe=e=>ae.includes(e),P={user:`Members`,internal:`Your team`,admin:`Admins`},F=[],se={},ce=e=>{F=e},I=()=>F,le=e=>{se=e},ue=e=>oe(e)&&String(se[e]||``).trim()||``,de=(e,t=I())=>t.find(t=>t.id===e)?.name||ue(e)||(oe(e)?P[e]:``)||e,fe=(e=I())=>[...ae.map(t=>({id:t,name:de(t,e)})),...e.map(e=>({id:e.id,name:e.name}))],pe=`sys_payments`,me=`_settings`,he=()=>({on:!1,amount:``,priceId:``,livePriceId:``}),ge=()=>({name:``,description:``,monthly:{...he(),on:!0},yearly:he(),roleId:``}),_e=()=>({name:``,amount:``}),ve=e=>({id:e,name:``,description:``,kind:``,amount:``,items:[],plans:[],how:``,emailReceipt:!0,notifyOwner:!0,pageIds:[],customNote:``,customPath:``,createdAt:Date.now()}),ye=e=>e.kind===`once`?e.items.length?e.items:e.name.trim()||e.amount.trim()?[{name:e.name,amount:e.amount}]:[]:[],be=e=>{let t=Number(String(e||``).trim().replace(/[^0-9.]/g,``));return Number.isFinite(t)&&t>0?t:null},xe=e=>({on:!!e?.on,amount:String(e?.amount||``),priceId:String(e?.priceId||``),livePriceId:String(e?.livePriceId||``)}),Se=e=>/^(no|none|nothing|n\/?a|nothing needed|nothing else|-)[.!]*$/i.test(e.trim()),Ce=e=>/[.!?]$/.test(e)?e:`${e}.`,we=e=>{let t=[],n=String(e?.how||``),r=String(e?.collect||``).trim();r&&!Se(r)&&t.push(`Before paying, the buyer tells me: ${Ce(r)}`);let i=String(e?.after||``).trim();if(i&&t.push(`After they pay: ${Ce(i)}`),Array.isArray(e?.plans))for(let n of e.plans){let e=String(n?.name||``).trim()||`The plan`,r=String(n?.features||``).trim(),i=String(n?.sees||``).trim();r&&t.push(`${e} unlocks: ${Ce(r)}`),i&&t.push(`Someone on ${e} sees: ${Ce(i)}`)}return t.length?[...n.trim()?[Ce(n.trim())]:[],...t].join(` `):n},Te=(e,n)=>{let r=n?.kind===`once`||n?.kind===`subscription`?n.kind:``,i=Array.isArray(n?.items)?n.items.map(e=>({name:String(e?.name||``),amount:String(e?.amount||``)})):[],a=String(n?.name||``),o=String(n?.amount||``);return r===`once`&&!i.length&&(a.trim()||o.trim())&&(i=[{name:a,amount:o}],a=``,o=``),{id:e,name:a,description:String(n?.description||``),kind:r,amount:o,items:i,plans:Array.isArray(n?.plans)?n.plans.map(e=>({name:String(e?.name||``),description:String(e?.description||``),monthly:xe(e?.monthly),yearly:xe(e?.yearly),roleId:t.h(e?.roleId)?String(e.roleId):``})):[],how:we(n),emailReceipt:n?.emailReceipt!==!1,notifyOwner:n?.notifyOwner!==!1,pageIds:Array.isArray(n?.pageIds)?n.pageIds.map(e=>String(e||``)).filter(Boolean):[],customNote:String(n?.customNote||``),customPath:String(n?.customPath||``),createdAt:typeof n?.createdAt==`number`?n.createdAt:void 0}},Ee=e=>/^price_[A-Za-z0-9]+$/.test(e.trim()),De=(e,t=at())=>t?e.livePriceId:e.priceId;function Oe(e,t=at()){if(!e.kind)return`Say how it is paid — once, or a subscription.`;if(e.kind===`once`){let t=ye(e);if(!t.length)return`Add something to sell — a name and a price.`;for(let e of t){let t=e.name.trim();if(be(e.amount)===null)return`Give ${t||`it`} a price — just a number, like 25.`;if(!t)return`Give it a name, the way a buyer should read it.`}return``}if(!e.plans.length)return`Add at least one plan.`;for(let n of e.plans){let e=n.name.trim()||`each plan`;if(!n.name.trim())return`Give each plan a name.`;if(!n.monthly.on&&!n.yearly.on)return`Turn on monthly or yearly for ${e}.`;for(let[r,i]of[[`monthly`,n.monthly],[`yearly`,n.yearly]])if(i.on){if(be(i.amount)===null)return`Give ${e} its ${r} price — just a number.`;if(!Ee(De(i,t)))return t?`Paste the live ${r} price id for ${e} — live mode is a fresh Stripe catalogue, so the price is made again there. Your test id is kept.`:`Paste the ${r} price id for ${e} — the steps above say where it comes from in Stripe.`}}return``}var ke=(e,t=at())=>Oe(e,t)===``,Ae=e=>e.kind===`subscription`&&e.plans.length>0&&e.plans.every(e=>e.name.trim()!==``&&(e.monthly.on||e.yearly.on)&&(!e.monthly.on||be(e.monthly.amount)!==null)&&(!e.yearly.on||be(e.yearly.amount)!==null));function je(e){let t=e.name.trim();if(t)return t;let n=ye(e).map(e=>e.name.trim()).filter(Boolean);if(n.length===1)return n[0];if(n.length>1){let e=n.slice(0,3),t=n.length>3?`more`:e.pop();return`${e.join(`, `)} and ${t}`}return`this product`}function Me(e){let t=e.name.trim();if(!e.kind)return t?`${t} — say how it is paid`:`A new product — say how it is paid`;if(e.kind===`once`){let n=ye(e);if(n.length<=1){let e=n[0],r=e?.name.trim()||t,i=e?.amount.trim();return`${r||`A new product`}${i?` — ${i}, paid once`:` — paid once`}`}return`${t||n.map(e=>e.name.trim()).filter(Boolean).slice(0,3).join(`, `)||`A new product`} — ${n.length} things, paid once`}let n=e.plans.length;return`${t||`A new subscription`} — a subscription${n?`, ${n} plan${n===1?``:`s`}`:``}`}function Ne(e,t,n=at()){let r=e.name.trim(),i=`${t.name.trim()||`this plan`}${r?` — ${r}`:``}`,a=t.description.trim(),o=t.monthly.on&&t.yearly.on,s=t.monthly.on?t.monthly:t.yearly,c=t.monthly.on?`Monthly`:`Yearly`,l=[n?`In your Stripe dashboard, switch Test mode OFF — live mode is its own catalogue, so the plan is made once more there. Then open Product catalogue and click Add product.`:`In your Stripe dashboard, open Product catalogue and click Add product.`,`Name it "${i}"${a?` and paste your one-liner into the Description box: "${a}"`:``}.`,`On the same form, choose Recurring, type ${s.amount.trim()||`…`} as the amount, set the billing period to ${c}, and click Add product to save.`,o?`Click the product you just made, then click its ${c.toLowerCase()} price. The price id — it starts with price_ — sits in the top right corner: copy it and paste it into the ${c.toLowerCase()} box below.`:`Click the product you just made, then click the price inside it. The price id — it starts with price_ — sits in the top right corner: copy it and paste it into the box below.`];return o&&l.push(`Go back to the product. In its Pricing section click + to add a second price: Recurring, ${t.yearly.amount.trim()||`…`} as the amount, billing period Yearly — save it.`,`Click that yearly price, copy its id from the top right corner, and paste it into the yearly box below.`),l}var Pe=e=>e.includes(`'`)?`"${e}"`:`'${e}'`,Fe=`Every payment goes through the app's own <PayButton> — never build a checkout, a card form or Stripe code of your own. The button's words, colour and place on the page are yours to design.`,Ie=(e,t=at())=>{let n=e.name.trim()||`this product`,r=e.description.trim();if(e.kind===`once`){let t=ye(e),r=e=>`<PayButton amount={${be(e.amount)??0}} productName=${Pe(e.name.trim())}>`;if(t.length<=1){let i=t[0]||{name:e.name,amount:e.amount};return[`It sells ${i.name.trim()||n} for ${i.amount.trim()}, paid once: ${r(i)}.`]}let i=e.name.trim();return[`It sells ${t.length} things${i?` under ${i}`:``}, each paid once with its own button:`,...t.map(e=>`${e.name.trim()||`Something`} for ${e.amount.trim()}: ${r(e)}.`)]}let i=[`It sells ${n}${r?` (${r})`:``} as a subscription. Lay its plans out as one pricing section — each plan is bought with its own button, and where a plan has monthly and yearly, offer a monthly/yearly switch:`];for(let n of e.plans){let e=n.name.trim()||`Plan`,r=n.description.trim(),a=[];n.monthly.on&&a.push(`${n.monthly.amount.trim()} per month: <PayButton priceId='${De(n.monthly,t).trim()}' mode='subscription'>`),n.yearly.on&&a.push(`${n.yearly.amount.trim()} per year: <PayButton priceId='${De(n.yearly,t).trim()}' mode='subscription'>`);let o=n.roleId?` Buying it makes the buyer my ${de(n.roleId)} role — userRole '${n.roleId}'.`:``;i.push(`${e}${r?` (${r})`:``} — ${a.join(`; `)}.${o}`)}return i},Le=`If my words ask the buyer for anything before paying — a phone number, a note, what they need — ask it with a form made the app's way: a *Form.config.ts whose fields are properly typed (tel for a phone number, email, date), shown with <ContactPopup formId='…' isInline onSubmitted={…} /> — never inputs you build by hand. onSubmitted hands you the answers as strings: put each one into the button's metadata as a plain string, and they read beside the order on my Payments screen. If my words ask for nothing, put no form in front of the button. Never ask for their email (Stripe collects it at checkout) and never build a backend of your own for this.`,Re=`Show and hide what a plan unlocks with the app's own useMyPayments() — it returns { loading, active, subscriptions, payments } — and that is presentation, not protection: anything genuinely paid, like a file or a secret, must come from the server.`,ze=`A plan's role is given the moment the buyer pays and taken back when the subscription ends — the app does both itself, so build neither. What that plan unlocks is what its role opens: a page kept for the role, and anything a page shows to it — read const { userRole } = useAuth() from 'your-ai-workflow-firebase-os' and compare it with the role's word above. Gate that by the role, never with useMyPayments().`;function Be(e,t=``,n=at()){let r=[...Ie(e,n)],i=e.how.trim();return i&&r.push(`Here is how this payment should work, start to finish: ${i}`),r.push(Le),e.kind===`subscription`&&(e.plans.some(e=>e.roleId)&&r.push(ze),e.plans.some(e=>!e.roleId)&&r.push(Re)),r.push(...Ve(t,e)),r}function Ve(e,t){let n=[`Set each button's successPath to ${e||`the page the button is on`} so the buyer lands back where they paid and finds what my words say happens after.`],r=[];return t.emailReceipt&&r.push(`emailReceipt: 'yes'`),t.notifyOwner&&r.push(`notifyOwner: 'yes'`),r.length&&n.push(`Put ${r.join(` and `)} in the button's metadata — the app then sends ${r.length===2?`those emails`:`that email`} on its own.`),n}var He=e=>e===`internal`||e===`admin`,Ue=e=>Array.isArray(e?.links)?e.links.map(e=>({pageId:String(e?.pageId||``),how:String(e?.how||``)})):[],We=(e,t)=>t.find(t=>t.id===e)||t.find(t=>String(t.config?.contentKey||``).trim()===e),Ge=(e,t)=>e===t.id||e===String(t.config?.contentKey||``).trim();function Ke(e){return e.how.trim()?``:`Describe how this payment will work.`}var qe=(e,t)=>e.pageIds.some(e=>Ge(e,t)),Je=(e,t)=>qe(e,t)?e.pageIds.filter(e=>!Ge(e,t)):[...e.pageIds,t.id],Ye=`What people paid is mine and my admins' alone: the app refuses everybody else the sales outright, so never call useSales() on this page and never put an amount on it. Show what an admin's own page has recorded about a sale — the name, what they bought, when — and if what I asked for cannot be built without the amounts, say so plainly in your reply: the page has to be kept for Admins for that. This page never sells — no <PayButton> on it.`,Xe="Read the sales on it with the app's own useSales() from 'your-ai-workflow-firebase-os' — it returns { loading, charges, subscriptions, error } live from my Stripe account: who paid, for what, when, and each subscription's current status. Show `error` when it is set. Design the list however fits; never write Stripe code, a backend or an export of your own for it. This page never sells — no <PayButton> on it.",Ze=e=>`/payments?new=subscription&page=${encodeURIComponent(e)}`,Qe=(e,t)=>`/payments?open=${encodeURIComponent(e)}&page=${encodeURIComponent(t)}`,$e=(e,t)=>`/pages/${encodeURIComponent(e)}?addPayment=${encodeURIComponent(t)}`,et=[],tt=!1,nt=e=>{et=e},rt=()=>et,it=e=>{tt=e},at=()=>tt;function ot(e){let t=[];for(let n of e)if(n.kind===`subscription`)for(let e of n.plans)for(let[r,i]of[[`monthly`,e.monthly],[`yearly`,e.yearly]]){if(!i.on)continue;let a=i.priceId.trim(),o=i.livePriceId.trim();Ee(o)&&Ee(a)&&a!==o&&t.push({product:n.name.trim()||`a subscription`,plan:e.name.trim()||`its plan`,word:r,from:a,to:o})}return t}function st(e=rt()){let t=ot(e),n=[`My Stripe account has switched from test mode to live mode. I have already replaced the keys in Secrets — do not touch any keys or write any Stripe code of your own.`];return t.length?n.push(`In my pages, every <PayButton> with a priceId still carries a test price id. Swap each one for its live id and change nothing else about the button:`,...t.map(e=>`For ${e.product}, ${e.plan} (${e.word}): replace '${e.from}' with '${e.to}'.`),`Buttons that use amount={…} instead of a priceId need no change.`):n.push(`No price id in my pages needs to change — buttons that use amount={…} never had one.`),n.push(`Then rebuild the app so it runs with the live keys and ids.`),n.join(`
|
|
2
|
+
`)}var ct=`admin_keys`,lt=`plans`,ut=()=>({planUntil:(0,s.deleteField)(),planPass:(0,s.deleteField)()}),dt=e=>typeof e?.planUntil==`number`&&e.planUntil>0?e.planUntil:0,ft=e=>dt(e)>0,pt=e=>dt(e);function mt(e){if(!e)return!1;if(ft(e))return!0;let t=e.role;return t==null||t===`user`||t===`free`}function ht(e,t=Date.now()){let n=e?.role?String(e.role):`user`,r=dt(e);return r&&t>=r?`user`:n}function gt(e,n){if(!mt(e))return null;let r=String(n?.role||``);return r?!t.h(r)||typeof n?.until!=`number`||typeof n?.pass!=`string`||e.role===r&&e.planUntil===n.until?null:{role:r,planUntil:n.until,planPass:n.pass}:ft(e)?{role:`user`,...ut()}:null}async function _t(e,n){try{let r=E?.currentUser;if(!r||r.uid!==e||!t.t(r)||typeof fetch!=`function`)return;let i=(0,s.doc)(D,`user_profiles`,e),a=n??(await(0,s.getDoc)(i)).data();if(!mt(a))return;let o=await r.getIdToken(),c=await fetch(`/api/payments/plan-role`,{headers:{Authorization:`Bearer ${o}`}});if(!c.ok)return;let l=gt(a,await c.json());l&&await(0,s.updateDoc)(i,l)}catch{}}function vt(e){(0,r.useEffect)(()=>{let e=!1;return(async()=>{let t=E?.currentUser;if(!t||typeof fetch!=`function`)return;let n=await fetch(`/api/payments/plan-key`,{headers:{Authorization:`Bearer ${await t.getIdToken()}`}});if(!n.ok||e)return;let r=String((await n.json())?.key||``);if(!r)return;let i=(0,s.doc)(D,ct,lt),a=await(0,s.getDoc)(i);!e&&a.data()?.key!==r&&await(0,s.setDoc)(i,{key:r})})().catch(()=>{}),()=>{e=!0}},[e])}function yt(e){let t={};for(let n of e)if(n.kind===`subscription`)for(let e of n.plans){if(!e.roleId)continue;let r=e.name.trim()||n.name.trim()||`A plan`,i=t[e.roleId]||=[];i.includes(r)||i.push(r)}return t}function bt(){let[e,t]=(0,r.useState)({});return(0,r.useEffect)(()=>re(pe,()=>(0,s.collection)(D,pe),e=>{let n=[];e.forEach(e=>{e.id!==`_settings`&&n.push(Te(e.id,e.data()))}),t(yt(n))},()=>{}),[]),e}var xt={collection:`sys_configs`,doc:`auth_methods`},St=[`Open console.firebase.google.com and pick your project.`,`In the menu on the left open Authentication, then the Sign-in method tab.`],Ct=`https://console.firebase.google.com/`;function wt(){try{let e=E;return String(e?.app?.options?.authDomain||e?.config?.authDomain||``)}catch{return``}}var Tt=e=>e?`https://${e}/__/auth/handler`:``,Et=`Open the Settings tab, find SMS region policy, and allow every country your people might be signing in from — not only your own. A country left off gets no text at all, and the person waiting for the code is told nothing.`,Dt=[{id:`password`,label:`Email and password`,description:`A password they choose when they register.`,inSentence:`a password`,kind:`signIn`,defaultOn:!0,needsSetup:!1,providerId:`password`,steps:[`Click Email/Password and switch it on.`]},{id:`emailLink`,label:`Email link, no password`,description:`You email them a link. Nothing to remember, nothing to reset.`,inSentence:`an emailed link`,kind:`signIn`,defaultOn:!1,needsSetup:!0,button:`Email me a link`,providerId:`emailLink`,setupTitle:`Set up passwordless sign-in`,steps:[`Click Email/Password, switch on Email link (passwordless sign-in), and save.`]},{id:`google`,label:`Google`,description:`One tap with a Google account.`,inSentence:`Google`,kind:`signIn`,defaultOn:!0,needsSetup:!1,button:`Continue with Google`,providerId:`google.com`,steps:[`Click Add new provider, choose Google, and follow the steps.`]},{id:`phone`,label:`Phone number`,description:`A code by text, and no email at all.`,inSentence:`a phone number`,kind:`signIn`,defaultOn:!1,needsSetup:!0,button:`Continue with a phone number`,providerId:`phone`,steps:[`Click Add new provider, choose Phone, and enable it.`,Et,`While you are on the Phone provider, open "Phone numbers for testing" and add one: a number and a six-digit code you make up. Signing in with that pair never sends a text, so you can try the whole thing on your own, as often as you like, for nothing.`]},{id:`facebook`,label:`Facebook`,description:`A Facebook account — the one most people already have open.`,inSentence:`Facebook`,kind:`signIn`,defaultOn:!1,needsSetup:!0,button:`Continue with Facebook`,providerId:`facebook.com`,steps:[`Click Add new provider, choose Facebook, and paste in the two things below.`],setup:{where:`Meta for Developers`,url:`https://developers.facebook.com/apps/`,asksFor:[`App ID`,`App secret`],steps:[`Sign in at developers.facebook.com, click My Apps, then Create app.`,`When it asks what you are building, choose the one about letting people log in with Facebook, and finish making the app.`,`Open Settings → Basic. The App ID is on that page; click Show beside App secret to read the other one.`,`Open Facebook Login → Settings and paste the address below into Valid OAuth Redirect URIs. Save.`],callbackLabel:`Valid OAuth Redirect URIs`,warning:`A new Facebook app starts in development mode, which means you are the only person it will let in. Switch it Live at the top of the Facebook dashboard before you open the door to anybody else.`}},{id:`microsoft`,label:`Microsoft`,description:`A work or personal Microsoft account.`,inSentence:`Microsoft`,kind:`signIn`,defaultOn:!1,needsSetup:!0,button:`Continue with Microsoft`,providerId:`microsoft.com`,steps:[`Click Add new provider, choose Microsoft, and paste in the two things below.`],setup:{where:`the Azure portal`,url:`https://portal.azure.com/`,asksFor:[`Application ID`,`Application secret`],steps:[`Sign in at portal.azure.com and open Microsoft Entra ID → App registrations → New registration.`,`Name it, and where it asks which accounts are allowed, pick the option that includes personal Microsoft accounts unless everybody signing in works at your own company. Register it.`,`The Application (client) ID is on the Overview page. That is the first thing Firebase asks for.`,`Open Certificates & secrets → New client secret. Copy the Value — not the Secret ID — and copy it there and then: Azure hides it as soon as you leave the page.`,`Open Authentication → Add a platform → Web, and paste the address below in as the Redirect URI.`],callbackLabel:`Redirect URI`}},{id:`apple`,label:`Apple`,description:`An Apple ID — what iPhone owners reach for first.`,inSentence:`Apple`,kind:`signIn`,defaultOn:!1,needsSetup:!0,button:`Continue with Apple`,providerId:`apple.com`,steps:[`Click Add new provider, choose Apple, and paste in the four things below.`],setup:{where:`the Apple Developer console`,url:`https://developer.apple.com/account/resources/identifiers/list/serviceId`,asksFor:[`Services ID`,`Apple Team ID`,`Key ID`,`Private key`],steps:[`Open Certificates, Identifiers & Profiles → Identifiers, click +, choose Services IDs and make one. What you name its identifier IS the Services ID Firebase asks for.`,`Click Configure beside Sign in with Apple. There are two boxes: put the domain below into Domains and Subdomains, and the whole address below into Return URLs.`,`Go to Keys, click +, tick Sign in with Apple and register it. Download the .p8 file — Apple gives it to you once and never again — and note the Key ID beside it. That file is the private key.`,`Your Team ID is in the top right of the Apple Developer site, and on the Membership page.`],callbackLabel:`Return URLs`,domainLabel:`Domains and Subdomains`,warning:`Apple is the one that costs money — Sign in with Apple needs a paid Apple Developer account. Apple may also ask you to prove you own the domain before it will accept it.`}},{id:`github`,label:`GitHub`,description:`A GitHub account — for an app your developers use.`,inSentence:`GitHub`,kind:`signIn`,defaultOn:!1,needsSetup:!0,button:`Continue with GitHub`,providerId:`github.com`,steps:[`Click Add new provider, choose GitHub, and paste in the two things below.`],setup:{where:`GitHub`,url:`https://github.com/settings/developers`,asksFor:[`Client ID`,`Client secret`],steps:[`Sign in at github.com and open Settings → Developer settings → OAuth Apps, then click New OAuth App.`,`Give it a name your people will recognise — it is what they see when GitHub asks them to allow it — and put your own app's address in Homepage URL.`,`Paste the address below into Authorization callback URL, then click Register application.`,`Copy the Client ID off the page that comes back, then click Generate a new client secret and copy that too. GitHub shows a secret once.`],callbackLabel:`Authorization callback URL`}},{id:`twitter`,label:`X`,description:`An X account, the one that used to be called Twitter.`,inSentence:`X`,kind:`signIn`,defaultOn:!1,needsSetup:!0,button:`Continue with X`,providerId:`twitter.com`,steps:[`Click Add new provider, choose Twitter, and paste in the two things below.`],setup:{where:`the X developer portal`,url:`https://developer.x.com/en/portal/dashboard`,asksFor:[`API key`,`API secret`],steps:[`Sign in at developer.x.com, open the developer portal, and make a project with an app inside it.`,`Open Keys and tokens. The API Key and API Key Secret are the pair Firebase wants — copy them while X is showing them, because it shows them once.`,`Open the app's User authentication settings, switch OAuth on, and paste the address below into Callback URI / Redirect URL.`,`On that same screen tick "Request email from users". Without it people arrive with no email address at all, and half of this app has nothing to go on.`],callbackLabel:`Callback URI / Redirect URL`}},{id:`sms2fa`,label:`Two-step sign-in`,description:`After the password, a code by text before they are let in.`,inSentence:`a text code`,kind:`security`,defaultOn:!1,needsSetup:!0,steps:[`In the Advanced section below the providers, find SMS Multi-factor Authentication and click Enable.`,Et]}],Ot=e=>Dt.find(t=>t.id===e),kt=Dt.filter(e=>e.kind===`signIn`),At=e=>e===`internal`||t.h(e);function jt(e){if(!Array.isArray(e))return[];let t=[];for(let n of e){let e=String(n??``).trim();At(e)&&!t.includes(e)&&t.push(e)}return t}var Mt=()=>{let e={},t={};for(let n of Dt)e[n.id]=n.defaultOn,t[n.id]=!n.needsSetup;return{on:e,confirmed:t,registerAs:{on:!1,roles:[]},twoStepOptional:!1,finishRegistration:{skippable:!0,perRole:!1}}};function Nt(e){let t=Mt(),n=e?.methods&&typeof e.methods==`object`?e.methods:{},r=e?.confirmed&&typeof e.confirmed==`object`?e.confirmed:{};for(let e of Dt)typeof n[e.id]==`boolean`&&(t.on[e.id]=n[e.id]),r[e.id]===!0&&(t.confirmed[e.id]=!0);let i=e?.registerAs&&typeof e.registerAs==`object`?e.registerAs:{};t.registerAs={on:i.on===!0,roles:jt(i.roles)},t.twoStepOptional=e?.twoStepOptional===!0;let a=e?.finishRegistration&&typeof e.finishRegistration==`object`?e.finishRegistration:{};return t.finishRegistration={skippable:a.required!==!0,perRole:a.perRole===!0},t}function Pt(e,t){if(!e.registerAs.on)return[];let n=e.registerAs.roles.includes(`internal`)?[{id:`internal`,name:de(`internal`,t)}]:[],r=e.registerAs.roles.map(e=>t.find(t=>t.id===e)).filter(e=>!!e).sort((e,t)=>e.name.localeCompare(t.name)).map(e=>({id:e.id,name:e.name}));return[...n,...r]}var Ft=(e,t,n)=>Pt(e,n).find(e=>e.id===String(t??``))??null;function It(e,t){let n=String(t||e).trim()||e;return e===`internal`?n===P.internal?`one of our team`:`one of ${n}`:`${/^[aeiou]/i.test(n)?`an`:`a`} ${n}`}function Lt(e){let t=e.map(e=>It(e.id,e.name).replace(`one of our team`,`one of your team`));return t.length?`People can register as ${t.length===1?t[0]:`${t.slice(0,-1).join(`, `)} or ${t[t.length-1]}`}.`:``}function Rt(e){let t=kt.filter(t=>e.on[t.id]);return t.length>0?t:kt.filter(e=>e.id===`password`)}var zt=e=>Rt(e).some(e=>e.id===`password`);function Bt(e){let t=Rt(e).map(e=>e.inSentence);return t.length===1?t[0]:`${t.slice(0,-1).join(`, `)} and ${t[t.length-1]}`}var Vt=(e,t)=>!e.confirmed[t];function Ht(e,t){let n=Ot(t);return!n||n.kind!==`signIn`||kt.filter(n=>n.id!==t&&e.on[n.id]).length>0?``:`Keep at least one way to sign in — switch another one on first, then this one off.`}var Ut=e=>`${Ot(e)?.label??`This way of signing in`} is not switched on in your Firebase project yet. An admin can switch it on there, on the Sign in screen's own instructions.`,Wt=null,Gt=null,Kt=null;function qt(e){Kt=e,Wt?.forEach(t=>t(e))}function Jt(e){let t=!Wt;return Wt||=new Set,Wt.add(e),t?Gt=(0,s.onSnapshot)((0,s.doc)(D,xt.collection,xt.doc),e=>qt(Nt(e.exists()?e.data():null)),()=>qt(Mt())):Kt&&e(Kt),()=>{Wt?.delete(e),!Wt?.size&&(Gt?.(),Wt=null,Gt=null,Kt=null)}}function Yt(){let[e,t]=(0,r.useState)(()=>Kt?{loading:!1,settings:Kt}:{loading:!0,settings:Mt()});(0,r.useEffect)(()=>Jt(e=>t({loading:!1,settings:e})),[]);let n=async(t,n,r)=>{if(!n){let n=Ht(e.settings,t);if(n)return n}if(n&&!r?.confirm&&Vt(e.settings,t))return`Confirm you have switched this on in Firebase first.`;let i=e.settings,a={...i,on:{...i.on,[t]:n},confirmed:{...i.confirmed,[t]:i.confirmed[t]||!!r?.confirm}};qt(a);try{return await(0,s.setDoc)((0,s.doc)(D,xt.collection,xt.doc),{methods:{[t]:n},...a.confirmed[t]?{confirmed:{[t]:!0}}:{}},{merge:!0}),null}catch{return qt(i),`That could not be saved. Check that you are still signed in as an admin.`}},i=async t=>{let n=e.settings,r={on:t.on??n.registerAs.on,roles:jt(t.roles??n.registerAs.roles)};qt({...n,registerAs:r});try{return await(0,s.setDoc)((0,s.doc)(D,xt.collection,xt.doc),{registerAs:r},{merge:!0}),null}catch{return qt(n),`That could not be saved. Check that you are still signed in as an admin.`}},a=async t=>{let n=e.settings;qt({...n,twoStepOptional:t});try{return await(0,s.setDoc)((0,s.doc)(D,xt.collection,xt.doc),{twoStepOptional:t},{merge:!0}),null}catch{return qt(n),`That could not be saved. Check that you are still signed in as an admin.`}},o=async t=>{let n=e.settings,r={skippable:t.skippable??n.finishRegistration.skippable,perRole:t.perRole??n.finishRegistration.perRole};qt({...n,finishRegistration:r});try{return await(0,s.setDoc)((0,s.doc)(D,xt.collection,xt.doc),{finishRegistration:{required:!r.skippable,perRole:r.perRole}},{merge:!0}),null}catch{return qt(n),`That could not be saved. Check that you are still signed in as an admin.`}};return{...e.settings,loading:e.loading,set:n,setRegisterAs:i,setTwoStepOptional:a,setFinishRegistration:o}}var Xt=`fbos_register_as`,Zt=[`/register`,`/login`],Qt=()=>{try{return typeof window<`u`?window.sessionStorage:null}catch{return null}};function $t(e,t=Date.now()){if(At(e))try{Qt()?.setItem(Xt,JSON.stringify({id:e,at:t}))}catch{}}function en(){try{Qt()?.removeItem(Xt)}catch{}}function tn(e,t=Date.now()){let n=Qt();if(!n)return``;let r=null;try{r=n.getItem(Xt),r!==null&&n.removeItem(Xt)}catch{return``}if(!r||!Zt.includes(String(e||``).replace(/\/+$/,``)||`/`))return``;try{let{id:e,at:n}=JSON.parse(r);return typeof n!=`number`||t-n>36e5||t<n?``:At(e)?String(e):``}catch{return``}}function nn(e,t,n=Date.now()){if(!t||!At(t)||e?.removed===!0)return null;let r=e?.role;return r&&r!==`user`&&r!==`free`||e?.requestedRole===t?null:{requestedRole:t,requestedRoleAt:new Date(n).toISOString()}}var rn=()=>({requestedRole:(0,s.deleteField)(),requestedRoleAt:(0,s.deleteField)()});function an(e){let t=e?.requestedRole;return At(t)?{role:String(t),at:typeof e?.requestedRoleAt==`string`?e.requestedRoleAt:``}:null}var on=(e,t)=>`Register as ${It(e,t)}`,sn=(e,t)=>`Asked to be ${It(e,t)}`,cn=(e,t)=>`Waiting to be approved as ${It(e,t)}`,ln=`Until then you are a member, and everything works as usual.`,un=(e,t)=>e?`You're registered. An admin will approve you as ${It(e.role,t)}; until then you are a member.`:`You're registered.`,dn=(e,t)=>({title:`You're ${It(e,t)} now`,body:`Everything for ${It(e,t)} is open to you.`,link:`/dashboard`}),fn=(e,t)=>({title:`Your request to be ${It(e,t)} was declined`,body:`You are still a member, and everything works as usual.`,link:`/dashboard`}),pn=(e,t,n,r)=>({title:`You're ${It(e,t)} now`,body:`You asked to be ${It(n,r)}. An admin gave you this instead.`,link:`/dashboard`}),mn=(0,r.createContext)({user:null,userRole:null,accessLevel:`free`,isInternal:!1,isAdmin:!1,loading:!0,signOut:async()=>{},registerUser:async()=>{},refreshUser:async()=>{},userInactive:!1,roleResolved:!1,roleConfirmed:!1,requestedRole:null,profile:null,activeOrg:null,activeWorkspace:null,checkOrg:async()=>{},workspaceAccess:{},userWorkspaces:[],switchWorkspace:async()=>{},createWorkspace:async()=>{},createOrg:async()=>{}});async function hn(e){try{return await(0,o.deleteUser)(e),`deleted`}catch{}try{return await(0,o.signOut)(E),`signed-out`}catch{return`failed`}}function gn(e,t,n=Date.now()){if(e?.removed===!0)return null;let r=e||{},i=Date.parse(String(r.lastLoginAt||``)),a=Number.isFinite(i)&&n-i<36e5&&i<=n,o=t.email||r.email||null;if(e&&r.uid===t.uid&&r.email===o&&r.createdAt&&(!t.displayName||r.displayName===t.displayName)&&a)return null;let s=new Date(n).toISOString();return{uid:t.uid,email:o,displayName:t.displayName||r.displayName||``,lastLoginAt:s,createdAt:r.createdAt||s}}function _n({children:e,onSignedOut:n,onRemoved:a}){let[c,l]=(0,r.useState)(null),[u,d]=(0,r.useState)(null),[f,p]=(0,r.useState)(!1),[m,h]=(0,r.useState)(!0),[g,_]=(0,r.useState)(!1),[v,y]=(0,r.useState)(!1),[b,x]=(0,r.useState)(null),[S,C]=(0,r.useState)(null),w=r.default.useRef(null),T=r.default.useRef(null),O=r.default.useRef(null),ee=r.default.useRef(``),te=r.default.useRef(null),k=r.default.useRef(n);k.current=n;let A=r.default.useRef(a);A.current=a;let j=r.default.useRef(null),M=r.default.useRef(new Set),ne=e=>(0,s.updateDoc)((0,s.doc)(D,`user_profiles`,e),{role:`admin`}),N=async(e,{again:t=!1}={})=>{if(!(M.current.has(e)&&!t)){M.current.add(e);try{await ne(e)}catch(t){if(t?.code!==`permission-denied`){console.error(`Error claiming the admin role:`,t);return}try{if(!E.currentUser)return;await E.currentUser.getIdToken(!0),await ne(e)}catch(e){e?.code!==`permission-denied`&&console.error(`Error claiming the admin role:`,e)}}}};return(0,r.useEffect)(()=>{let e;if(!E){h(!1),_(!0);return}(0,o.getRedirectResult)(E).catch(()=>{});let n=(0,o.onAuthStateChanged)(E,async n=>{if(n?.uid===te.current&&g){l(n);return}let r=te.current;if(te.current=n?.uid||null,n){ee.current=tn(typeof window<`u`?window.location.pathname:``),y(!1);let r=localStorage.getItem(`fbos_role_${n.uid}`);r?(d(r),_(!0),h(!1)):_(!1),console.log(`[AuthContext] 1. onAuthStateChanged fired for user:`,n.uid),l(n);try{let r=(0,s.doc)(D,`user_profiles`,n.uid);e&&e(),e=(0,s.onSnapshot)(r,e=>{let i=e.exists()?e.data():null;if(i?.removed===!0){j.current!==n.uid&&(j.current=n.uid,hn(n)),d(null),localStorage.removeItem(`fbos_role_${n.uid}`),p(!0),x(null),C(i),_(!0),y(!0),h(!1);return}if(O.current!==n.uid){O.current=n.uid;let e=gn(i,{uid:n.uid,email:n.email,displayName:n.displayName}),t=nn(i,ee.current);ee.current=``,(e||t)&&(0,s.setDoc)(r,{...e||{},...t||{}},{merge:!0}).catch(e=>{e?.code===`permission-denied`?console.warn(`This account may not update its own profile — it has been deactivated, or its address is not verified yet.`):console.error(`Failed to sync profile:`,e)})}if(i){let e=ht(i);T.current!==n.uid&&mt(i)&&t.t(E.currentUser)&&(T.current=n.uid,_t(n.uid,i)),!i.role&&!i.removed&&E.currentUser?.emailVerified&&N(n.uid),w.current===null&&(w.current=e),d(e),localStorage.setItem(`fbos_role_${n.uid}`,e),p(i.inactive===!0),x(an(i)?.role??null),C(i)}else d(null),localStorage.removeItem(`fbos_role_${n.uid}`),p(!1),x(null),C(null);_(!0),y(!0),h(!1)},e=>{console.warn(`[AuthContext] user_profiles snapshot error (safe to ignore during auth transition):`,e),_(!0),h(!1)})}catch(e){console.error(`[AuthContext] ERROR in auth resolution:`,e),_(!0),h(!1)}}else{if(console.log(`[AuthContext] No user currently signed in.`),r){let e=j.current===r;e&&(j.current=null),(e&&A.current||k.current)?.()}l(null),d(null),p(!1),x(null),C(null),_(!0),y(!1),h(!1),w.current=null,ee.current=``,T.current=null,O.current=null,e&&e()}});return()=>{n(),e&&e()}},[]),(0,r.useEffect)(()=>{if(!c?.emailVerified||u===`admin`)return;let e=!1;return(0,s.getDoc)((0,s.doc)(D,`user_profiles`,c.uid)).then(t=>{!e&&t.exists()&&!t.data().role&&!t.data().removed&&N(c.uid,{again:!0})}).catch(()=>{}),()=>{e=!0}},[c?.uid,c?.emailVerified,u]),(0,i.jsx)(mn.Provider,{value:{user:c,userRole:u,accessLevel:t.g(u),isInternal:t.f(u),isAdmin:t.p(u),loading:m,signOut:async()=>{await(0,o.signOut)(E),l(null)},registerUser:async(e,t,n,r)=>{let{createUserWithEmailAndPassword:i}=await import(`firebase/auth`),{user:a}=await i(E,e,t),c=`${n} ${r}`.trim();await(0,o.updateProfile)(a,{displayName:c});try{await a.getIdToken(!0),await(0,s.setDoc)((0,s.doc)(D,`user_profiles`,a.uid),{uid:a.uid,email:a.email,displayName:c,createdAt:new Date().toISOString()},{merge:!0})}catch(e){console.warn(`Could not write public profile on registration.`,e)}await(0,o.sendEmailVerification)(a)},refreshUser:async()=>{E.currentUser&&(await E.currentUser.reload(),l(Object.assign(Object.create(E.currentUser),{photoURL:E.currentUser.photoURL,displayName:E.currentUser.displayName,email:E.currentUser.email,emailVerified:E.currentUser.emailVerified})))},userInactive:f,roleResolved:g,roleConfirmed:v,requestedRole:b,profile:S},children:e})}var vn=()=>(0,r.useContext)(mn),yn=(0,r.createContext)({});function bn(e){let t=(0,r.useRef)(null);return t.current===null&&(t.current=e()),t.current}var xn=typeof window<`u`?r.useLayoutEffect:r.useEffect,Sn=(0,r.createContext)(null);function Cn(e,t){e.indexOf(t)===-1&&e.push(t)}function wn(e,t){let n=e.indexOf(t);n>-1&&e.splice(n,1)}var Tn=(e,t,n)=>n>t?t:n<e?e:n;function En(e,t){return t?`${e}. For more information and steps for solving, visit https://motion.dev/troubleshooting/${t}`:e}var Dn=()=>{},On=()=>{};typeof process<`u`&&process.env.NODE_ENV!==`production`&&(Dn=(e,t,n)=>{!e&&typeof console<`u`&&console.warn(En(t,n))},On=(e,t,n)=>{if(!e)throw Error(En(t,n))});var kn={},An=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function jn(e){return typeof e==`object`&&!!e}var Mn=e=>/^0[^.\s]+$/u.test(e);function Nn(e){let t;return()=>(t===void 0&&(t=e()),t)}var Pn=e=>e,Fn=(e,t)=>n=>t(e(n)),In=(...e)=>e.reduce(Fn),Ln=(e,t,n)=>{let r=t-e;return r===0?1:(n-e)/r},Rn=class{constructor(){this.subscriptions=[]}add(e){return Cn(this.subscriptions,e),()=>wn(this.subscriptions,e)}notify(e,t,n){let r=this.subscriptions.length;if(r)if(r===1)this.subscriptions[0](e,t,n);else for(let i=0;i<r;i++){let r=this.subscriptions[i];r&&r(e,t,n)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}},L=e=>e*1e3,zn=e=>e/1e3;function Bn(e,t){return t?1e3/t*e:0}var Vn=new Set;function Hn(e,t,n){e||Vn.has(t)||(console.warn(En(t,n)),Vn.add(t))}var Un=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,Wn=1e-7,Gn=12;function Kn(e,t,n,r,i){let a,o,s=0;do o=t+(n-t)/2,a=Un(o,r,i)-e,a>0?n=o:t=o;while(Math.abs(a)>Wn&&++s<Gn);return o}function qn(e,t,n,r){if(e===t&&n===r)return Pn;let i=t=>Kn(t,0,1,e,n);return e=>e===0||e===1?e:Un(i(e),t,r)}var Jn=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,Yn=e=>t=>1-e(1-t),Xn=qn(.33,1.53,.69,.99),Zn=Yn(Xn),Qn=Jn(Zn),$n=e=>e>=1?1:(e*=2)<1?.5*Zn(e):.5*(2-2**(-10*(e-1))),er=e=>1-Math.sin(Math.acos(e)),tr=Yn(er),nr=Jn(er),rr=qn(.42,0,1,1),ir=qn(0,0,.58,1),ar=qn(.42,0,.58,1),or=e=>Array.isArray(e)&&typeof e[0]!=`number`,sr=e=>Array.isArray(e)&&typeof e[0]==`number`,cr={linear:Pn,easeIn:rr,easeInOut:ar,easeOut:ir,circIn:er,circInOut:nr,circOut:tr,backIn:Zn,backInOut:Qn,backOut:Xn,anticipate:$n},lr=e=>typeof e==`string`,ur=e=>{if(sr(e)){On(e.length===4,`Cubic bezier arrays must contain four numerical values.`,`cubic-bezier-length`);let[t,n,r,i]=e;return qn(t,n,r,i)}else if(lr(e))return On(cr[e]!==void 0,`Invalid easing type '${e}'`,`invalid-easing-type`),cr[e];return e},dr=[`setup`,`read`,`resolveKeyframes`,`preUpdate`,`update`,`preRender`,`render`,`postRender`],fr={value:null,addProjectionMetrics:null};function pr(e,t){let n=new Set,r=new Set,i=!1,a=!1,o=new WeakSet,s={delta:0,timestamp:0,isProcessing:!1},c=0;function l(t){o.has(t)&&(u.schedule(t),e()),c++,t(s)}let u={schedule:(e,t=!1,a=!1)=>{let s=a&&i?n:r;return t&&o.add(e),s.add(e),e},cancel:e=>{r.delete(e),o.delete(e)},process:e=>{if(s=e,i){a=!0;return}i=!0;let o=n;n=r,r=o,n.forEach(l),t&&fr.value&&fr.value.frameloop[t].push(c),c=0,n.clear(),i=!1,a&&(a=!1,u.process(e))}};return u}var mr=40;function hr(e,t){let n=!1,r=!0,i={delta:0,timestamp:0,isProcessing:!1},a=()=>n=!0,o=dr.reduce((e,n)=>(e[n]=pr(a,t?n:void 0),e),{}),{setup:s,read:c,resolveKeyframes:l,preUpdate:u,update:d,preRender:f,render:p,postRender:m}=o,h=()=>{let a=kn.useManualTiming,o=a?i.timestamp:performance.now();n=!1,a||(i.delta=r?1e3/60:Math.max(Math.min(o-i.timestamp,mr),1)),i.timestamp=o,i.isProcessing=!0,s.process(i),c.process(i),l.process(i),u.process(i),d.process(i),f.process(i),p.process(i),m.process(i),i.isProcessing=!1,n&&t&&(r=!1,e(h))},g=()=>{n=!0,r=!0,i.isProcessing||e(h)};return{schedule:dr.reduce((e,t)=>{let r=o[t];return e[t]=(e,t=!1,i=!1)=>(n||g(),r.schedule(e,t,i)),e},{}),cancel:e=>{for(let t=0;t<dr.length;t++)o[dr[t]].cancel(e)},state:i,steps:o}}var{schedule:R,cancel:gr,state:z,steps:_r}=hr(typeof requestAnimationFrame<`u`?requestAnimationFrame:Pn,!0),vr;function yr(){vr=void 0}var B={now:()=>(vr===void 0&&B.set(z.isProcessing||kn.useManualTiming?z.timestamp:performance.now()),vr),set:e=>{vr=e,queueMicrotask(yr)}},br={layout:0,mainThread:0,waapi:0},xr=e=>t=>typeof t==`string`&&t.startsWith(e),Sr=xr(`--`),Cr=xr(`var(--`),wr=e=>Cr(e)?Tr.test(e.split(`/*`)[0].trim()):!1,Tr=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function Er(e){return typeof e==`string`?e.split(`/*`)[0].includes(`var(--`):!1}var Dr={test:e=>typeof e==`number`,parse:parseFloat,transform:e=>e},Or={...Dr,transform:e=>Tn(0,1,e)},kr={...Dr,default:1},Ar=e=>Math.round(e*1e5)/1e5,jr=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Mr(e){return e==null}var Nr=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,Pr=(e,t)=>n=>!!(typeof n==`string`&&Nr.test(n)&&n.startsWith(e)||t&&!Mr(n)&&Object.prototype.hasOwnProperty.call(n,t)),Fr=(e,t,n)=>r=>{if(typeof r!=`string`)return r;let[i,a,o,s]=r.match(jr);return{[e]:parseFloat(i),[t]:parseFloat(a),[n]:parseFloat(o),alpha:s===void 0?1:parseFloat(s)}},Ir=e=>Tn(0,255,e),Lr={...Dr,transform:e=>Math.round(Ir(e))},Rr={test:Pr(`rgb`,`red`),parse:Fr(`red`,`green`,`blue`),transform:({red:e,green:t,blue:n,alpha:r=1})=>`rgba(`+Lr.transform(e)+`, `+Lr.transform(t)+`, `+Lr.transform(n)+`, `+Ar(Or.transform(r))+`)`};function zr(e){let t=``,n=``,r=``,i=``;return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),i=e.substring(4,5),t+=t,n+=n,r+=r,i+=i),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:i?parseInt(i,16)/255:1}}var Br={test:Pr(`#`),parse:zr,transform:Rr.transform},Vr=e=>({test:t=>typeof t==`string`&&t.endsWith(e)&&t.split(` `).length===1,parse:parseFloat,transform:t=>`${t}${e}`}),Hr=Vr(`deg`),Ur=Vr(`%`),V=Vr(`px`),Wr=Vr(`vh`),Gr=Vr(`vw`),Kr={...Ur,parse:e=>Ur.parse(e)/100,transform:e=>Ur.transform(e*100)},qr={test:Pr(`hsl`,`hue`),parse:Fr(`hue`,`saturation`,`lightness`),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>`hsla(`+Math.round(e)+`, `+Ur.transform(Ar(t))+`, `+Ur.transform(Ar(n))+`, `+Ar(Or.transform(r))+`)`},H={test:e=>Rr.test(e)||Br.test(e)||qr.test(e),parse:e=>Rr.test(e)?Rr.parse(e):qr.test(e)?qr.parse(e):Br.parse(e),transform:e=>typeof e==`string`?e:e.hasOwnProperty(`red`)?Rr.transform(e):qr.transform(e),getAnimatableNone:e=>{let t=H.parse(e);return t.alpha=0,H.transform(t)}},Jr=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function Yr(e){return isNaN(e)&&typeof e==`string`&&(e.match(jr)?.length||0)+(e.match(Jr)?.length||0)>0}var Xr=`number`,Zr=`color`,Qr=`var`,$r=`var(`,ei="${}",ti=/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 ni(e){let t=e.toString(),n=[],r={color:[],number:[],var:[]},i=[],a=0;return{values:n,split:t.replace(ti,e=>(H.test(e)?(r.color.push(a),i.push(Zr),n.push(H.parse(e))):e.startsWith($r)?(r.var.push(a),i.push(Qr),n.push(e)):(r.number.push(a),i.push(Xr),n.push(parseFloat(e))),++a,ei)).split(ei),indexes:r,types:i}}function ri(e){return ni(e).values}function ii({split:e,types:t}){let n=e.length;return r=>{let i=``;for(let a=0;a<n;a++)if(i+=e[a],r[a]!==void 0){let e=t[a];e===Xr?i+=Ar(r[a]):e===Zr?i+=H.transform(r[a]):i+=r[a]}return i}}function ai(e){return ii(ni(e))}var oi=e=>typeof e==`number`?0:H.test(e)?H.getAnimatableNone(e):e,si=(e,t)=>typeof e==`number`?t?.trim().endsWith(`/`)?e:0:oi(e);function ci(e){let t=ni(e);return ii(t)(t.values.map((e,n)=>si(e,t.split[n])))}var li={test:Yr,parse:ri,createTransformer:ai,getAnimatableNone:ci};function ui(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function di({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let i=0,a=0,o=0;if(!t)i=a=o=n;else{let r=n<.5?n*(1+t):n+t-n*t,s=2*n-r;i=ui(s,r,e+1/3),a=ui(s,r,e),o=ui(s,r,e-1/3)}return{red:Math.round(i*255),green:Math.round(a*255),blue:Math.round(o*255),alpha:r}}function fi(e,t){return n=>n>0?t:e}var U=(e,t,n)=>e+(t-e)*n,pi=(e,t,n)=>{let r=e*e,i=n*(t*t-r)+r;return i<0?0:Math.sqrt(i)},mi=[Br,Rr,qr],hi=e=>mi.find(t=>t.test(e));function gi(e){let t=hi(e);if(Dn(!!t,`'${e}' is not an animatable color. Use the equivalent color code instead.`,`color-not-animatable`),!t)return!1;let n=t.parse(e);return t===qr&&(n=di(n)),n}var _i=(e,t)=>{let n=gi(e),r=gi(t);if(!n||!r)return fi(e,t);let i={...n};return e=>(i.red=pi(n.red,r.red,e),i.green=pi(n.green,r.green,e),i.blue=pi(n.blue,r.blue,e),i.alpha=U(n.alpha,r.alpha,e),Rr.transform(i))},vi=new Set([`none`,`hidden`]);function yi(e,t){return vi.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function bi(e,t){return n=>U(e,t,n)}function xi(e){return typeof e==`number`?bi:typeof e==`string`?wr(e)?fi:H.test(e)?_i:Ti:Array.isArray(e)?Si:typeof e==`object`?H.test(e)?_i:Ci:fi}function Si(e,t){let n=[...e],r=n.length,i=e.map((e,n)=>xi(e)(e,t[n]));return e=>{for(let t=0;t<r;t++)n[t]=i[t](e);return n}}function Ci(e,t){let n={...e,...t},r={};for(let i in n)e[i]!==void 0&&t[i]!==void 0&&(r[i]=xi(e[i])(e[i],t[i]));return e=>{for(let t in r)n[t]=r[t](e);return n}}function wi(e,t){let n=[],r={color:0,var:0,number:0};for(let i=0;i<t.values.length;i++){let a=t.types[i],o=e.indexes[a][r[a]];n[i]=e.values[o]??0,r[a]++}return n}var Ti=(e,t)=>{let n=li.createTransformer(t),r=ni(e),i=ni(t);return r.indexes.var.length===i.indexes.var.length&&r.indexes.color.length===i.indexes.color.length&&r.indexes.number.length>=i.indexes.number.length?vi.has(e)&&!i.values.length||vi.has(t)&&!r.values.length?yi(e,t):In(Si(wi(r,i),i.values),n):(Dn(!0,`Complex values '${e}' and '${t}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`,`complex-values-different`),fi(e,t))};function Ei(e,t,n){return typeof e==`number`&&typeof t==`number`&&typeof n==`number`?U(e,t,n):xi(e)(e,t)}var Di=e=>{let t=({timestamp:t})=>e(t);return{start:(e=!0)=>R.update(t,e),stop:()=>gr(t),now:()=>z.isProcessing?z.timestamp:B.now()}},Oi=(e,t,n=10)=>{let r=``,i=Math.max(Math.round(t/n),2);for(let t=0;t<i;t++)r+=Math.round(e(t/(i-1))*1e4)/1e4+`, `;return`linear(${r.substring(0,r.length-2)})`},ki=2e4;function Ai(e){let t=0,n=e.next(t);for(;!n.done&&t<2e4;)t+=50,n=e.next(t);return t>=2e4?1/0:t}function ji(e,t=100,n){let r=n({...e,keyframes:[0,t]}),i=Math.min(Ai(r),ki);return{type:`keyframes`,ease:e=>r.next(i*e).value/t,duration:zn(i)}}var W={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};function Mi(e,t){return e*Math.sqrt(1-t*t)}var Ni=12;function Pi(e,t,n){let r=n;for(let n=1;n<Ni;n++)r-=e(r)/t(r);return r}var Fi=.001;function Ii({duration:e=W.duration,bounce:t=W.bounce,velocity:n=W.velocity,mass:r=W.mass}){let i,a;Dn(e<=L(W.maxDuration),`Spring duration must be 10 seconds or less`,`spring-duration-limit`);let o=1-t;o=Tn(W.minDamping,W.maxDamping,o),e=Tn(W.minDuration,W.maxDuration,zn(e)),o<1?(i=t=>{let r=t*o,i=r*e,a=r-n,s=Mi(t,o),c=Math.exp(-i);return Fi-a/s*c},a=t=>{let r=t*o*e,a=r*n+n,s=o**2*t**2*e,c=Math.exp(-r),l=Mi(t**2,o);return(-i(t)+Fi>0?-1:1)*((a-s)*c)/l}):(i=t=>{let r=Math.exp(-t*e),i=(t-n)*e+1;return-Fi+r*i},a=t=>Math.exp(-t*e)*((n-t)*(e*e)));let s=5/e,c=Pi(i,a,s);if(e=L(e),isNaN(c))return{stiffness:W.stiffness,damping:W.damping,duration:e};{let t=c**2*r;return{stiffness:t,damping:o*2*Math.sqrt(r*t),duration:e}}}var Li=[`duration`,`bounce`],Ri=[`stiffness`,`damping`,`mass`];function zi(e,t){return t.some(t=>e[t]!==void 0)}function Bi(e){let t={velocity:W.velocity,stiffness:W.stiffness,damping:W.damping,mass:W.mass,isResolvedFromDuration:!1,...e};if(!zi(e,Ri)&&zi(e,Li))if(t.velocity=0,e.visualDuration){let n=e.visualDuration,r=2*Math.PI/(n*1.2),i=r*r,a=2*Tn(.05,1,1-(e.bounce||0))*Math.sqrt(i);t={...t,mass:W.mass,stiffness:i,damping:a}}else{let n=Ii({...e,velocity:0});t={...t,...n,mass:W.mass},t.isResolvedFromDuration=!0}return t}function Vi(e=W.visualDuration,t=W.bounce){let n=typeof e==`object`?e:{visualDuration:e,keyframes:[0,1],bounce:t},{restSpeed:r,restDelta:i}=n,a=n.keyframes[0],o=n.keyframes[n.keyframes.length-1],s={done:!1,value:a},{stiffness:c,damping:l,mass:u,duration:d,velocity:f,isResolvedFromDuration:p}=Bi({...n,velocity:-zn(n.velocity||0)}),m=f||0,h=l/(2*Math.sqrt(c*u)),g=o-a,_=zn(Math.sqrt(c/u)),v=Math.abs(g)<5;r||=v?W.restSpeed.granular:W.restSpeed.default,i||=v?W.restDelta.granular:W.restDelta.default;let y,b,x,S,C,w;if(h<1)x=Mi(_,h),S=(m+h*_*g)/x,y=e=>o-Math.exp(-h*_*e)*(S*Math.sin(x*e)+g*Math.cos(x*e)),C=h*_*S+g*x,w=h*_*g-S*x,b=e=>Math.exp(-h*_*e)*(C*Math.sin(x*e)+w*Math.cos(x*e));else if(h===1){y=e=>o-Math.exp(-_*e)*(g+(m+_*g)*e);let e=m+_*g;b=t=>Math.exp(-_*t)*(_*e*t-m)}else{let e=_*Math.sqrt(h*h-1);y=t=>{let n=Math.exp(-h*_*t),r=Math.min(e*t,300);return o-n*((m+h*_*g)*Math.sinh(r)+e*g*Math.cosh(r))/e};let t=(m+h*_*g)/e,n=h*_*t-g*e,r=h*_*g-t*e;b=t=>{let i=Math.exp(-h*_*t),a=Math.min(e*t,300);return i*(n*Math.sinh(a)+r*Math.cosh(a))}}let T={calculatedDuration:p&&d||null,velocity:e=>L(b(e)),next:e=>{if(!p&&h<1){let t=Math.exp(-h*_*e),n=Math.sin(x*e),a=Math.cos(x*e),c=o-t*(S*n+g*a),l=L(t*(C*n+w*a));return s.done=Math.abs(l)<=r&&Math.abs(o-c)<=i,s.value=s.done?o:c,s}let t=y(e);if(p)s.done=e>=d;else{let n=L(b(e));s.done=Math.abs(n)<=r&&Math.abs(o-t)<=i}return s.value=s.done?o:t,s},toString:()=>{let e=Math.min(Ai(T),ki),t=Oi(t=>T.next(e*t).value,e,30);return e+`ms `+t},toTransition:()=>{}};return T}Vi.applyToOptions=e=>{let t=ji(e,100,Vi);return e.ease=t.ease,e.duration=L(t.duration),e.type=`keyframes`,e};var Hi=5;function Ui(e,t,n){let r=Math.max(t-Hi,0);return Bn(n-e(r),t-r)}function Wi({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:i=10,bounceStiffness:a=500,modifyTarget:o,min:s,max:c,restDelta:l=.5,restSpeed:u}){let d=e[0],f={done:!1,value:d},p=e=>s!==void 0&&e<s||c!==void 0&&e>c,m=e=>s===void 0?c:c===void 0||Math.abs(s-e)<Math.abs(c-e)?s:c,h=n*t,g=d+h,_=o===void 0?g:o(g);_!==g&&(h=_-d);let v=e=>-h*Math.exp(-e/r),y=e=>_+v(e),b=e=>{let t=v(e),n=y(e);f.done=Math.abs(t)<=l,f.value=f.done?_:n},x,S,C=e=>{p(f.value)&&(x=e,S=Vi({keyframes:[f.value,m(f.value)],velocity:Ui(y,e,f.value),damping:i,stiffness:a,restDelta:l,restSpeed:u}))};return C(0),{calculatedDuration:null,next:e=>{let t=!1;return!S&&x===void 0&&(t=!0,b(e),C(e)),x!==void 0&&e>=x?S.next(e-x):(!t&&b(e),f)}}}function Gi(e,t,n){let r=[],i=n||kn.mix||Ei,a=e.length-1;for(let n=0;n<a;n++){let a=i(e[n],e[n+1]);t&&(a=In(Array.isArray(t)?t[n]||Pn:t,a)),r.push(a)}return r}function Ki(e,t,{clamp:n=!0,ease:r,mixer:i}={}){let a=e.length;if(On(a===t.length,`Both input and output ranges must be the same length`,`range-length`),a===1)return()=>t[0];if(a===2&&t[0]===t[1])return()=>t[1];let o=e[0]===e[1];e[0]>e[a-1]&&(e=[...e].reverse(),t=[...t].reverse());let s=Gi(t,r,i),c=s.length,l=n=>{if(o&&n<e[0])return t[0];let r=0;if(c>1)for(;r<e.length-2&&!(n<e[r+1]);r++);let i=Ln(e[r],e[r+1],n);return s[r](i)};return n?t=>l(Tn(e[0],e[a-1],t)):l}function qi(e,t){let n=e[e.length-1];for(let r=1;r<=t;r++){let i=Ln(0,t,r);e.push(U(n,1,i))}}function Ji(e){let t=[0];return qi(t,e.length-1),t}function Yi(e,t){return e.map(e=>e*t)}function Xi(e,t){return e.map(()=>t||ar).splice(0,e.length-1)}function Zi({duration:e=300,keyframes:t,times:n,ease:r=`easeInOut`}){let i=or(r)?r.map(ur):ur(r),a={done:!1,value:t[0]},o=Ki(Yi(n&&n.length===t.length?n:Ji(t),e),t,{ease:Array.isArray(i)?i:Xi(t,i)});return{calculatedDuration:e,next:t=>(a.value=o(t),a.done=t>=e,a)}}var Qi=e=>e!==null;function $i(e,{repeat:t,repeatType:n=`loop`},r,i=1){let a=e.filter(Qi),o=i<0||t&&n!==`loop`&&t%2==1?0:a.length-1;return!o||r===void 0?a[o]:r}var ea={decay:Wi,inertia:Wi,tween:Zi,keyframes:Zi,spring:Vi};function ta(e){typeof e.type==`string`&&(e.type=ea[e.type])}var na=class{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,t){return this.finished.then(e,t)}},ra=e=>e/100,ia=class extends na{constructor(e){super(),this.state=`idle`,this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.delayState={done:!1,value:void 0},this.stop=()=>{let{motionValue:e}=this.options;e&&e.updatedAt!==B.now()&&this.tick(B.now()),this.isStopped=!0,this.state!==`idle`&&(this.teardown(),this.options.onStop?.())},br.mainThread++,this.options=e,this.initAnimation(),this.play(),e.autoplay===!1&&this.pause()}initAnimation(){let{options:e}=this;ta(e);let{type:t=Zi,repeat:n=0,repeatDelay:r=0,repeatType:i,velocity:a=0}=e,{keyframes:o}=e,s=t||Zi;process.env.NODE_ENV!==`production`&&s!==Zi&&On(o.length<=2,`Only two keyframes currently supported with spring and inertia animations. Trying to animate ${o}`,`spring-two-frames`),s!==Zi&&typeof o[0]!=`number`&&(this.mixKeyframes=In(ra,Ei(o[0],o[1])),o=[0,100]);let c=s({...e,keyframes:o});i===`mirror`&&(this.mirroredGenerator=s({...e,keyframes:[...o].reverse(),velocity:-a})),c.calculatedDuration===null&&(c.calculatedDuration=Ai(c));let{calculatedDuration:l}=c;this.calculatedDuration=l,this.resolvedDuration=l+r,this.totalDuration=this.resolvedDuration*(n+1)-r,this.generator=c}updateTime(e){let t=Math.round(e-this.startTime)*this.playbackSpeed;this.holdTime===null?this.currentTime=t:this.currentTime=this.holdTime}tick(e,t=!1){let{generator:n,totalDuration:r,mixKeyframes:i,mirroredGenerator:a,resolvedDuration:o,calculatedDuration:s}=this;if(this.startTime===null)return n.next(0);let{delay:c=0,keyframes:l,repeat:u,repeatType:d,repeatDelay:f,type:p,onUpdate:m,finalKeyframe:h}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-r/this.speed,this.startTime)),t?this.currentTime=e:this.updateTime(e);let g=this.currentTime-c*(this.playbackSpeed>=0?1:-1),_=this.playbackSpeed>=0?g<0:g>r;this.currentTime=Math.max(g,0),this.state===`finished`&&this.holdTime===null&&(this.currentTime=r);let v=this.currentTime,y=n;if(u){let e=Math.min(this.currentTime,r)/o,t=Math.floor(e),n=e%1;!n&&e>=1&&(n=1),n===1&&t--,t=Math.min(t,u+1),t%2&&(d===`reverse`?(n=1-n,f&&(n-=f/o)):d===`mirror`&&(y=a)),v=Tn(0,1,n)*o}let b;_?(this.delayState.value=l[0],b=this.delayState):b=y.next(v),i&&!_&&(b.value=i(b.value));let{done:x}=b;!_&&s!==null&&(x=this.playbackSpeed>=0?this.currentTime>=r:this.currentTime<=0);let S=this.holdTime===null&&(this.state===`finished`||this.state===`running`&&x);return S&&p!==Wi&&(b.value=$i(l,this.options,h,this.speed)),m&&m(b.value),S&&this.finish(),b}then(e,t){return this.finished.then(e,t)}get duration(){return zn(this.calculatedDuration)}get iterationDuration(){let{delay:e=0}=this.options||{};return this.duration+zn(e)}get time(){return zn(this.currentTime)}set time(e){e=L(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?this.driver.start(!1):(this.startTime=0,this.state=`paused`,this.holdTime=e,this.tick(e))}getGeneratorVelocity(){let e=this.currentTime;if(e<=0)return this.options.velocity||0;if(this.generator.velocity)return this.generator.velocity(e);let t=this.generator.next(e).value;return Ui(e=>this.generator.next(e).value,e,t)}get speed(){return this.playbackSpeed}set speed(e){let t=this.playbackSpeed!==e;t&&this.driver&&this.updateTime(B.now()),this.playbackSpeed=e,t&&this.driver&&(this.time=zn(this.currentTime))}play(){if(this.isStopped)return;let{driver:e=Di,startTime:t}=this.options;this.driver||=e(e=>this.tick(e)),this.options.onPlay?.();let n=this.driver.now();this.state===`finished`?(this.updateFinished(),this.startTime=n):this.holdTime===null?this.startTime||=t??n:this.startTime=n-this.holdTime,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(B.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,br.mainThread--}stopDriver(){this.driver&&=(this.driver.stop(),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 aa(e){for(let t=1;t<e.length;t++)e[t]??(e[t]=e[t-1])}var oa=e=>e*180/Math.PI,sa=e=>la(oa(Math.atan2(e[1],e[0]))),ca={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:sa,rotateZ:sa,skewX:e=>oa(Math.atan(e[1])),skewY:e=>oa(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},la=e=>(e%=360,e<0&&(e+=360),e),ua=sa,da=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),fa=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),pa={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:da,scaleY:fa,scale:e=>(da(e)+fa(e))/2,rotateX:e=>la(oa(Math.atan2(e[6],e[5]))),rotateY:e=>la(oa(Math.atan2(-e[2],e[0]))),rotateZ:ua,rotate:ua,skewX:e=>oa(Math.atan(e[4])),skewY:e=>oa(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function ma(e){return+!!e.includes(`scale`)}function ha(e,t){if(!e||e===`none`)return ma(t);let n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u),r,i;if(n)r=pa,i=n;else{let t=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);r=ca,i=t}if(!i)return ma(t);let a=r[t],o=i[1].split(`,`).map(_a);return typeof a==`function`?a(o):o[a]}var ga=(e,t)=>{let{transform:n=`none`}=getComputedStyle(e);return ha(n,t)};function _a(e){return parseFloat(e.trim())}var va=[`transformPerspective`,`x`,`y`,`z`,`translateX`,`translateY`,`translateZ`,`scale`,`scaleX`,`scaleY`,`rotate`,`rotateX`,`rotateY`,`rotateZ`,`skew`,`skewX`,`skewY`],ya=new Set(va),ba=e=>e===Dr||e===V,xa=new Set([`x`,`y`,`z`]),Sa=va.filter(e=>!xa.has(e));function Ca(e){let t=[];return Sa.forEach(n=>{let r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(+!!n.startsWith(`scale`)))}),t}var wa={width:({x:e},{paddingLeft:t=`0`,paddingRight:n=`0`,boxSizing:r})=>{let i=e.max-e.min;return r===`border-box`?i:i-parseFloat(t)-parseFloat(n)},height:({y:e},{paddingTop:t=`0`,paddingBottom:n=`0`,boxSizing:r})=>{let i=e.max-e.min;return r===`border-box`?i:i-parseFloat(t)-parseFloat(n)},top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>ha(t,`x`),y:(e,{transform:t})=>ha(t,`y`)};wa.translateX=wa.x,wa.translateY=wa.y;var Ta=new Set,Ea=!1,Da=!1,Oa=!1;function ka(){if(Da){let e=Array.from(Ta).filter(e=>e.needsMeasurement),t=new Set(e.map(e=>e.element)),n=new Map;t.forEach(e=>{let t=Ca(e);t.length&&(n.set(e,t),e.render())}),e.forEach(e=>e.measureInitialState()),t.forEach(e=>{e.render();let t=n.get(e);t&&t.forEach(([t,n])=>{e.getValue(t)?.set(n)})}),e.forEach(e=>e.measureEndState()),e.forEach(e=>{e.suspendedScrollY!==void 0&&window.scrollTo(0,e.suspendedScrollY)})}Da=!1,Ea=!1,Ta.forEach(e=>e.complete(Oa)),Ta.clear()}function Aa(){Ta.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(Da=!0)})}function ja(){Oa=!0,Aa(),ka(),Oa=!1}var Ma=class{constructor(e,t,n,r,i,a=!1){this.state=`pending`,this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=t,this.name=n,this.motionValue=r,this.element=i,this.isAsync=a}scheduleResolve(){this.state=`scheduled`,this.isAsync?(Ta.add(this),Ea||(Ea=!0,R.read(Aa),R.resolveKeyframes(ka))):(this.readKeyframes(),this.complete())}readKeyframes(){let{unresolvedKeyframes:e,name:t,element:n,motionValue:r}=this;if(e[0]===null){let i=r?.get(),a=e[e.length-1];if(i!==void 0)e[0]=i;else if(n&&t){let r=n.readValue(t,a);r!=null&&(e[0]=r)}e[0]===void 0&&(e[0]=a),r&&i===void 0&&r.set(e[0])}aa(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state=`complete`,this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),Ta.delete(this)}cancel(){this.state===`scheduled`&&(Ta.delete(this),this.state=`pending`)}resume(){this.state===`pending`&&this.scheduleResolve()}},Na=e=>e.startsWith(`--`);function Pa(e,t,n){Na(t)?e.style.setProperty(t,n):e.style[t]=n}var Fa={};function Ia(e,t){let n=Nn(e);return()=>Fa[t]??n()}var La=Ia(()=>window.ScrollTimeline!==void 0,`scrollTimeline`),Ra=Ia(()=>{try{document.createElement(`div`).animate({opacity:0},{easing:`linear(0, 1)`})}catch{return!1}return!0},`linearEasing`),za=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,Ba={linear:`linear`,ease:`ease`,easeIn:`ease-in`,easeOut:`ease-out`,easeInOut:`ease-in-out`,circIn:za([0,.65,.55,1]),circOut:za([.55,0,1,.45]),backIn:za([.31,.01,.66,-.59]),backOut:za([.33,1.53,.69,.99])};function Va(e,t){if(e)return typeof e==`function`?Ra()?Oi(e,t):`ease-out`:sr(e)?za(e):Array.isArray(e)?e.map(e=>Va(e,t)||Ba.easeOut):Ba[e]}function Ha(e,t,n,{delay:r=0,duration:i=300,repeat:a=0,repeatType:o=`loop`,ease:s=`easeOut`,times:c}={},l=void 0){let u={[t]:n};c&&(u.offset=c);let d=Va(s,i);Array.isArray(d)&&(u.easing=d),fr.value&&br.waapi++;let f={delay:r,duration:i,easing:Array.isArray(d)?`linear`:d,fill:`both`,iterations:a+1,direction:o===`reverse`?`alternate`:`normal`};l&&(f.pseudoElement=l);let p=e.animate(u,f);return fr.value&&p.finished.finally(()=>{br.waapi--}),p}function Ua(e){return typeof e==`function`&&`applyToOptions`in e}function Wa({type:e,...t}){return Ua(e)&&Ra()?e.applyToOptions(t):(t.duration??=300,t.ease??=`easeOut`,t)}var Ga=class extends na{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!e)return;let{element:t,name:n,keyframes:r,pseudoElement:i,allowFlatten:a=!1,finalKeyframe:o,onComplete:s}=e;this.isPseudoElement=!!i,this.allowFlatten=a,this.options=e,On(typeof e.type!=`string`,`Mini animate() doesn't support "type" as a string.`,`mini-spring`);let c=Wa(e);this.animation=Ha(t,n,r,c,i),c.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!i){let e=$i(r,this.options,o,this.speed);this.updateMotionValue&&this.updateMotionValue(e),Pa(t,n,e),this.animation.cancel()}s?.(),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;let{state:e}=this;e===`idle`||e===`finished`||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){let e=this.options?.element;!this.isPseudoElement&&e?.isConnected&&this.animation.commitStyles?.()}get duration(){let e=this.animation.effect?.getComputedTiming?.().duration||0;return zn(Number(e))}get iterationDuration(){let{delay:e=0}=this.options||{};return this.duration+zn(e)}get time(){return zn(Number(this.animation.currentTime)||0)}set time(e){let t=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=L(e),t&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime===null?this.animation.playState:`finished`}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(e){this.manualStartTime=this.animation.startTime=e}attachTimeline({timeline:e,rangeStart:t,rangeEnd:n,observe:r}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:`linear`}),this.animation.onfinish=null,e&&La()?(this.animation.timeline=e,t&&(this.animation.rangeStart=t),n&&(this.animation.rangeEnd=n),Pn):r(this)}},Ka={anticipate:$n,backInOut:Qn,circInOut:nr};function qa(e){return e in Ka}function Ja(e){typeof e.ease==`string`&&qa(e.ease)&&(e.ease=Ka[e.ease])}var Ya=10,Xa=class extends Ga{constructor(e){Ja(e),ta(e),super(e),e.startTime!==void 0&&e.autoplay!==!1&&(this.startTime=e.startTime),this.options=e}updateMotionValue(e){let{motionValue:t,onUpdate:n,onComplete:r,element:i,...a}=this.options;if(!t)return;if(e!==void 0){t.set(e);return}let o=new ia({...a,autoplay:!1}),s=Math.max(Ya,B.now()-this.startTime),c=Tn(0,Ya,s-Ya),l=o.sample(s).value,{name:u}=this.options;i&&u&&Pa(i,u,l),t.setWithVelocity(o.sample(Math.max(0,s-c)).value,l,c),o.stop()}},Za=(e,t)=>t===`zIndex`?!1:!!(typeof e==`number`||Array.isArray(e)||typeof e==`string`&&(li.test(e)||e===`0`)&&!e.startsWith(`url(`));function Qa(e){let t=e[0];if(e.length===1)return!0;for(let n=0;n<e.length;n++)if(e[n]!==t)return!0}function $a(e,t,n,r){let i=e[0];if(i===null)return!1;if(t===`display`||t===`visibility`)return!0;let a=e[e.length-1],o=Za(i,t),s=Za(a,t);return Dn(o===s,`You are trying to animate ${t} from "${i}" to "${a}". "${o?a:i}" is not an animatable value.`,`value-not-animatable`),!o||!s?!1:Qa(e)||(n===`spring`||Ua(n))&&r}function eo(e){e.duration=0,e.type=`keyframes`}var to=new Set([`opacity`,`clipPath`,`filter`,`transform`]),no=/^(?:oklch|oklab|lab|lch|color|color-mix|light-dark)\(/;function ro(e){for(let t=0;t<e.length;t++)if(typeof e[t]==`string`&&no.test(e[t]))return!0;return!1}var io=new Set([`color`,`backgroundColor`,`outlineColor`,`fill`,`stroke`,`borderColor`,`borderTopColor`,`borderRightColor`,`borderBottomColor`,`borderLeftColor`]),ao=Nn(()=>Object.hasOwnProperty.call(Element.prototype,`animate`));function oo(e){let{motionValue:t,name:n,repeatDelay:r,repeatType:i,damping:a,type:o,keyframes:s}=e;if(!(t?.owner?.current instanceof HTMLElement))return!1;let{onUpdate:c,transformTemplate:l}=t.owner.getProps();return ao()&&n&&(to.has(n)||io.has(n)&&ro(s))&&(n!==`transform`||!l)&&!c&&!r&&i!==`mirror`&&a!==0&&o!==`inertia`}var so=40,co=class extends na{constructor({autoplay:e=!0,delay:t=0,type:n=`keyframes`,repeat:r=0,repeatDelay:i=0,repeatType:a=`loop`,keyframes:o,name:s,motionValue:c,element:l,...u}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=B.now();let d={autoplay:e,delay:t,type:n,repeat:r,repeatDelay:i,repeatType:a,name:s,motionValue:c,element:l,...u};this.keyframeResolver=new(l?.KeyframeResolver||Ma)(o,(e,t,n)=>this.onKeyframesResolved(e,t,d,!n),s,c,l),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(e,t,n,r){this.keyframeResolver=void 0;let{name:i,type:a,velocity:o,delay:s,isHandoff:c,onUpdate:l}=n;this.resolvedAt=B.now();let u=!0;$a(e,i,a,o)||(u=!1,(kn.instantAnimations||!s)&&l?.($i(e,n,t)),e[0]=e[e.length-1],eo(n),n.repeat=0);let d={startTime:r?this.resolvedAt&&this.resolvedAt-this.createdAt>so?this.resolvedAt:this.createdAt:void 0,finalKeyframe:t,...n,keyframes:e},f=u&&!c&&oo(d),p=d.motionValue?.owner?.current,m;if(f)try{m=new Xa({...d,element:p})}catch{m=new ia(d)}else m=new ia(d);m.finished.then(()=>{this.notifyFinished()}).catch(Pn),this.pendingTimeline&&=(this.stopTimeline=m.attachTimeline(this.pendingTimeline),void 0),this._animation=m}get finished(){return this._animation?this.animation.finished:this._finished}then(e,t){return this.finished.finally(e).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),ja()),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 lo(e,t,n,r=0,i=1){let a=Array.from(e).sort((e,t)=>e.sortNodePosition(t)).indexOf(t),o=e.size,s=(o-1)*r;return typeof n==`function`?n(a,o):i===1?a*r:s-a*r}var uo=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function fo(e){let t=uo.exec(e);if(!t)return[,];let[,n,r,i]=t;return[`--${n??r}`,i]}var po=4;function mo(e,t,n=1){On(n<=po,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`,`max-css-var-depth`);let[r,i]=fo(e);if(!r)return;let a=window.getComputedStyle(t).getPropertyValue(r);if(a){let e=a.trim();return An(e)?parseFloat(e):e}return wr(i)?mo(i,t,n+1):i}var ho={type:`spring`,stiffness:500,damping:25,restSpeed:10},go=e=>({type:`spring`,stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),_o={type:`keyframes`,duration:.8},vo={type:`keyframes`,ease:[.25,.1,.35,1],duration:.3},yo=(e,{keyframes:t})=>t.length>2?_o:ya.has(e)?e.startsWith(`scale`)?go(t[1]):ho:vo;function bo(e,t){if(e?.inherit&&t){let{inherit:n,...r}=e;return{...t,...r}}return e}function xo(e,t){let n=e?.[t]??e?.default??e;return n===e?n:bo(n,e)}var So=new Set([`when`,`delay`,`delayChildren`,`staggerChildren`,`staggerDirection`,`repeat`,`repeatType`,`repeatDelay`,`from`,`elapsed`]);function Co(e){for(let t in e)if(!So.has(t))return!0;return!1}var wo=(e,t,n,r={},i,a)=>o=>{let s=xo(r,e)||{},c=s.delay||r.delay||0,{elapsed:l=0}=r;l-=L(c);let u={keyframes:Array.isArray(n)?n:[null,n],ease:`easeOut`,velocity:t.getVelocity(),...s,delay:-l,onUpdate:e=>{t.set(e),s.onUpdate&&s.onUpdate(e)},onComplete:()=>{o(),s.onComplete&&s.onComplete()},name:e,motionValue:t,element:a?void 0:i};Co(s)||Object.assign(u,yo(e,u)),u.duration&&=L(u.duration),u.repeatDelay&&=L(u.repeatDelay),u.from!==void 0&&(u.keyframes[0]=u.from);let d=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(eo(u),u.delay===0&&(d=!0)),(kn.instantAnimations||kn.skipAnimations||i?.shouldSkipAnimations)&&(d=!0,eo(u),u.delay=0),u.allowFlatten=!s.type&&!s.ease,d&&!a&&t.get()!==void 0){let e=$i(u.keyframes,s);if(e!==void 0){R.update(()=>{u.onUpdate(e),u.onComplete()});return}}return s.isSync?new ia(u):new co(u)};function To(e){let t=[{},{}];return e?.values.forEach((e,n)=>{t[0][n]=e.get(),t[1][n]=e.getVelocity()}),t}function Eo(e,t,n,r){if(typeof t==`function`){let[i,a]=To(r);t=t(n===void 0?e.custom:n,i,a)}if(typeof t==`string`&&(t=e.variants&&e.variants[t]),typeof t==`function`){let[i,a]=To(r);t=t(n===void 0?e.custom:n,i,a)}return t}function Do(e,t,n){let r=e.getProps();return Eo(r,t,n===void 0?r.custom:n,e)}var Oo=new Set([`width`,`height`,`top`,`left`,`right`,`bottom`,...va]),ko=30,Ao=e=>!isNaN(parseFloat(e)),jo={current:void 0},Mo=class{constructor(e,t={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=e=>{let t=B.now();if(this.updatedAt!==t&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(e),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(let e of this.dependents)e.dirty()},this.hasAnimated=!1,this.setCurrent(e),this.owner=t.owner}setCurrent(e){this.current=e,this.updatedAt=B.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=Ao(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return process.env.NODE_ENV!==`production`&&Hn(!1,`value.onChange(callback) is deprecated. Switch to value.on("change", callback).`),this.on(`change`,e)}on(e,t){this.events[e]||(this.events[e]=new Rn);let n=this.events[e].add(t);return e===`change`?()=>{n(),R.read(()=>{this.events.change.getSize()||this.stop()})}:n}clearListeners(){for(let e in this.events)this.events[e].clear()}attach(e,t){this.passiveEffect=e,this.stopPassiveEffect=t}set(e){this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e)}setWithVelocity(e,t,n){this.set(t),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-n}jump(e,t=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,t&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(e){this.dependents||=new Set,this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return jo.current&&jo.current.push(this),this.current}getPrevious(){return this.prev}getVelocity(){let e=B.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>ko)return 0;let t=Math.min(this.updatedAt-this.prevUpdatedAt,ko);return Bn(parseFloat(this.current)-parseFloat(this.prevFrameValue),t)}start(e){return this.stop(),new Promise(t=>{this.hasAnimated=!0,this.animation=e(t),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 No(e,t){return new Mo(e,t)}var Po=e=>Array.isArray(e);function Fo(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,No(n))}function Io(e){return Po(e)?e[e.length-1]||0:e}function Lo(e,t){let{transitionEnd:n={},transition:r={},...i}=Do(e,t)||{};i={...i,...n};for(let t in i)Fo(e,t,Io(i[t]))}var G=e=>!!(e&&e.getVelocity);function Ro(e){return!!(G(e)&&e.add)}function zo(e,t){let n=e.getValue(`willChange`);if(Ro(n))return n.add(t);if(!n&&kn.WillChange){let n=new kn.WillChange(`auto`);e.addValue(`willChange`,n),n.add(t)}}function Bo(e){return e.replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`)}var Vo=`data-`+Bo(`framerAppearId`);function Ho(e){return e.props[Vo]}function Uo({protectedKeys:e,needsAnimating:t},n){let r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function Wo(e,t,{delay:n=0,transitionOverride:r,type:i}={}){let{transition:a,transitionEnd:o,...s}=t,c=e.getDefaultTransition();a=a?bo(a,c):c;let l=a?.reduceMotion;r&&(a=r);let u=[],d=i&&e.animationState&&e.animationState.getState()[i];for(let t in s){let r=e.getValue(t,e.latestValues[t]??null),i=s[t];if(i===void 0||d&&Uo(d,t))continue;let o={delay:n,...xo(a||{},t)},c=r.get();if(c!==void 0&&!r.isAnimating()&&!Array.isArray(i)&&i===c&&!o.velocity){R.update(()=>r.set(i));continue}let f=!1;if(window.MotionHandoffAnimation){let n=Ho(e);if(n){let e=window.MotionHandoffAnimation(n,t,R);e!==null&&(o.startTime=e,f=!0)}}zo(e,t);let p=l??e.shouldReduceMotion;r.start(wo(t,r,i,p&&Oo.has(t)?{type:!1}:o,e,f));let m=r.animation;m&&u.push(m)}if(o){let t=()=>R.update(()=>{o&&Lo(e,o)});u.length?Promise.all(u).then(t):t()}return u}function Go(e,t,n={}){let r=Do(e,t,n.type===`exit`?e.presenceContext?.custom:void 0),{transition:i=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(i=n.transitionOverride);let a=r?()=>Promise.all(Wo(e,r,n)):()=>Promise.resolve(),o=e.variantChildren&&e.variantChildren.size?(r=0)=>{let{delayChildren:a=0,staggerChildren:o,staggerDirection:s}=i;return Ko(e,t,r,a,o,s,n)}:()=>Promise.resolve(),{when:s}=i;if(s){let[e,t]=s===`beforeChildren`?[a,o]:[o,a];return e().then(()=>t())}else return Promise.all([a(),o(n.delay)])}function Ko(e,t,n=0,r=0,i=0,a=1,o){let s=[];for(let c of e.variantChildren)c.notify(`AnimationStart`,t),s.push(Go(c,t,{...o,delay:n+(typeof r==`function`?0:r)+lo(e.variantChildren,c,r,i,a)}).then(()=>c.notify(`AnimationComplete`,t)));return Promise.all(s)}function qo(e,t,n={}){e.notify(`AnimationStart`,t);let r;if(Array.isArray(t)){let i=t.map(t=>Go(e,t,n));r=Promise.all(i)}else if(typeof t==`string`)r=Go(e,t,n);else{let i=typeof t==`function`?Do(e,t,n.custom):t;r=Promise.all(Wo(e,i,n))}return r.then(()=>{e.notify(`AnimationComplete`,t)})}var Jo={test:e=>e===`auto`,parse:e=>e},Yo=e=>t=>t.test(e),Xo=[Dr,V,Ur,Hr,Gr,Wr,Jo],Zo=e=>Xo.find(Yo(e));function Qo(e){return typeof e==`number`?e===0:e===null?!0:e===`none`||e===`0`||Mn(e)}var $o=new Set([`brightness`,`contrast`,`saturate`,`opacity`]);function es(e){let[t,n]=e.slice(0,-1).split(`(`);if(t===`drop-shadow`)return e;let[r]=n.match(jr)||[];if(!r)return e;let i=n.replace(r,``),a=+!!$o.has(t);return r!==n&&(a*=100),t+`(`+a+i+`)`}var ts=/\b([a-z-]*)\(.*?\)/gu,ns={...li,getAnimatableNone:e=>{let t=e.match(ts);return t?t.map(es).join(` `):e}},rs={...li,getAnimatableNone:e=>{let t=li.parse(e);return li.createTransformer(e)(t.map(e=>typeof e==`number`?0:typeof e==`object`?{...e,alpha:1}:e))}},is={...Dr,transform:Math.round},as={borderWidth:V,borderTopWidth:V,borderRightWidth:V,borderBottomWidth:V,borderLeftWidth:V,borderRadius:V,borderTopLeftRadius:V,borderTopRightRadius:V,borderBottomRightRadius:V,borderBottomLeftRadius:V,width:V,maxWidth:V,height:V,maxHeight:V,top:V,right:V,bottom:V,left:V,inset:V,insetBlock:V,insetBlockStart:V,insetBlockEnd:V,insetInline:V,insetInlineStart:V,insetInlineEnd:V,padding:V,paddingTop:V,paddingRight:V,paddingBottom:V,paddingLeft:V,paddingBlock:V,paddingBlockStart:V,paddingBlockEnd:V,paddingInline:V,paddingInlineStart:V,paddingInlineEnd:V,margin:V,marginTop:V,marginRight:V,marginBottom:V,marginLeft:V,marginBlock:V,marginBlockStart:V,marginBlockEnd:V,marginInline:V,marginInlineStart:V,marginInlineEnd:V,fontSize:V,backgroundPositionX:V,backgroundPositionY:V,rotate:Hr,rotateX:Hr,rotateY:Hr,rotateZ:Hr,scale:kr,scaleX:kr,scaleY:kr,scaleZ:kr,skew:Hr,skewX:Hr,skewY:Hr,distance:V,translateX:V,translateY:V,translateZ:V,x:V,y:V,z:V,perspective:V,transformPerspective:V,opacity:Or,originX:Kr,originY:Kr,originZ:V,zIndex:is,fillOpacity:Or,strokeOpacity:Or,numOctaves:is},os={...as,color:H,backgroundColor:H,outlineColor:H,fill:H,stroke:H,borderColor:H,borderTopColor:H,borderRightColor:H,borderBottomColor:H,borderLeftColor:H,filter:ns,WebkitFilter:ns,mask:rs,WebkitMask:rs},ss=e=>os[e],cs=new Set([ns,rs]);function ls(e,t){let n=ss(e);return cs.has(n)||(n=li),n.getAnimatableNone?n.getAnimatableNone(t):void 0}var us=new Set([`auto`,`none`,`0`]);function ds(e,t,n){let r=0,i;for(;r<e.length&&!i;){let t=e[r];typeof t==`string`&&!us.has(t)&&ni(t).values.length&&(i=e[r]),r++}if(i&&n)for(let r of t)e[r]=ls(n,i)}var fs=class extends Ma{constructor(e,t,n,r,i){super(e,t,n,r,i,!0)}readKeyframes(){let{unresolvedKeyframes:e,element:t,name:n}=this;if(!t||!t.current)return;super.readKeyframes();for(let n=0;n<e.length;n++){let r=e[n];if(typeof r==`string`&&(r=r.trim(),wr(r))){let i=mo(r,t.current);i!==void 0&&(e[n]=i),n===e.length-1&&(this.finalKeyframe=r)}}if(this.resolveNoneKeyframes(),!Oo.has(n)||e.length!==2)return;let[r,i]=e,a=Zo(r),o=Zo(i);if(Er(r)!==Er(i)&&wa[n]){this.needsMeasurement=!0;return}if(a!==o)if(ba(a)&&ba(o))for(let t=0;t<e.length;t++){let n=e[t];typeof n==`string`&&(e[t]=parseFloat(n))}else wa[n]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){let{unresolvedKeyframes:e,name:t}=this,n=[];for(let t=0;t<e.length;t++)(e[t]===null||Qo(e[t]))&&n.push(t);n.length&&ds(e,n,t)}measureInitialState(){let{element:e,unresolvedKeyframes:t,name:n}=this;if(!e||!e.current)return;n===`height`&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=wa[n](e.measureViewportBox(),window.getComputedStyle(e.current)),t[0]=this.measuredOrigin;let r=t[t.length-1];r!==void 0&&e.getValue(n,r).jump(r,!1)}measureEndState(){let{element:e,name:t,unresolvedKeyframes:n}=this;if(!e||!e.current)return;let r=e.getValue(t);r&&r.jump(this.measuredOrigin,!1);let i=n.length-1,a=n[i];n[i]=wa[t](e.measureViewportBox(),window.getComputedStyle(e.current)),a!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=a),this.removedTransforms?.length&&this.removedTransforms.forEach(([t,n])=>{e.getValue(t).set(n)}),this.resolveNoneKeyframes()}};function ps(e,t,n){if(e==null)return[];if(e instanceof EventTarget)return[e];if(typeof e==`string`){let r=document;t&&(r=t.current);let i=n?.[e]??r.querySelectorAll(e);return i?Array.from(i):[]}return Array.from(e).filter(e=>e!=null)}var ms=(e,t)=>t&&typeof e==`number`?t.transform(e):e;function hs(e){return jn(e)&&`offsetHeight`in e&&!(`ownerSVGElement`in e)}var{schedule:gs,cancel:_s}=hr(queueMicrotask,!1),vs={x:!1,y:!1};function ys(){return vs.x||vs.y}function bs(e){return e===`x`||e===`y`?vs[e]?null:(vs[e]=!0,()=>{vs[e]=!1}):vs.x||vs.y?null:(vs.x=vs.y=!0,()=>{vs.x=vs.y=!1})}function xs(e,t){let n=ps(e),r=new AbortController;return[n,{passive:!0,...t,signal:r.signal},()=>r.abort()]}function Ss(e){return!(e.pointerType===`touch`||ys())}function Cs(e,t,n={}){let[r,i,a]=xs(e,n);return r.forEach(e=>{let n=!1,r=!1,a,o=()=>{e.removeEventListener(`pointerleave`,u)},s=e=>{a&&=(a(e),void 0),o()},c=e=>{n=!1,window.removeEventListener(`pointerup`,c),window.removeEventListener(`pointercancel`,c),r&&(r=!1,s(e))},l=()=>{n=!0,window.addEventListener(`pointerup`,c,i),window.addEventListener(`pointercancel`,c,i)},u=e=>{if(e.pointerType!==`touch`){if(n){r=!0;return}s(e)}};e.addEventListener(`pointerenter`,n=>{if(!Ss(n))return;r=!1;let o=t(e,n);typeof o==`function`&&(a=o,e.addEventListener(`pointerleave`,u,i))},i),e.addEventListener(`pointerdown`,l,i)}),a}var ws=(e,t)=>t?e===t?!0:ws(e,t.parentElement):!1,Ts=e=>e.pointerType===`mouse`?typeof e.button!=`number`||e.button<=0:e.isPrimary!==!1,Es=new Set([`BUTTON`,`INPUT`,`SELECT`,`TEXTAREA`,`A`]);function Ds(e){return Es.has(e.tagName)||e.isContentEditable===!0}var Os=new Set([`INPUT`,`SELECT`,`TEXTAREA`]);function ks(e){return Os.has(e.tagName)||e.isContentEditable===!0}var As=new WeakSet;function js(e){return t=>{t.key===`Enter`&&e(t)}}function Ms(e,t){e.dispatchEvent(new PointerEvent(`pointer`+t,{isPrimary:!0,bubbles:!0}))}var Ns=(e,t)=>{let n=e.currentTarget;if(!n)return;let r=js(()=>{if(As.has(n))return;Ms(n,`down`);let e=js(()=>{Ms(n,`up`)});n.addEventListener(`keyup`,e,t),n.addEventListener(`blur`,()=>Ms(n,`cancel`),t)});n.addEventListener(`keydown`,r,t),n.addEventListener(`blur`,()=>n.removeEventListener(`keydown`,r),t)};function Ps(e){return Ts(e)&&!ys()}var Fs=new WeakSet;function Is(e,t,n={}){let[r,i,a]=xs(e,n),o=e=>{let r=e.currentTarget;if(!Ps(e)||Fs.has(e))return;As.add(r),n.stopPropagation&&Fs.add(e);let a=t(r,e),o=(e,t)=>{window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,c),As.has(r)&&As.delete(r),Ps(e)&&typeof a==`function`&&a(e,{success:t})},s=e=>{o(e,r===window||r===document||n.useGlobalTarget||ws(r,e.target))},c=e=>{o(e,!1)};window.addEventListener(`pointerup`,s,i),window.addEventListener(`pointercancel`,c,i)};return r.forEach(e=>{(n.useGlobalTarget?window:e).addEventListener(`pointerdown`,o,i),hs(e)&&(e.addEventListener(`focus`,e=>Ns(e,i)),!Ds(e)&&!e.hasAttribute(`tabindex`)&&(e.tabIndex=0))}),a}function Ls(e){return jn(e)&&`ownerSVGElement`in e}var Rs=new WeakMap,zs,Bs=(e,t,n)=>(r,i)=>i&&i[0]?i[0][e+`Size`]:Ls(r)&&`getBBox`in r?r.getBBox()[t]:r[n],Vs=Bs(`inline`,`width`,`offsetWidth`),Hs=Bs(`block`,`height`,`offsetHeight`);function Us({target:e,borderBoxSize:t}){Rs.get(e)?.forEach(n=>{n(e,{get width(){return Vs(e,t)},get height(){return Hs(e,t)}})})}function Ws(e){e.forEach(Us)}function Gs(){typeof ResizeObserver>`u`||(zs=new ResizeObserver(Ws))}function Ks(e,t){zs||Gs();let n=ps(e);return n.forEach(e=>{let n=Rs.get(e);n||(n=new Set,Rs.set(e,n)),n.add(t),zs?.observe(e)}),()=>{n.forEach(e=>{let n=Rs.get(e);n?.delete(t),n?.size||zs?.unobserve(e)})}}var qs=new Set,Js;function Ys(){Js=()=>{let e={get width(){return window.innerWidth},get height(){return window.innerHeight}};qs.forEach(t=>t(e))},window.addEventListener(`resize`,Js)}function Xs(e){return qs.add(e),Js||Ys(),()=>{qs.delete(e),!qs.size&&typeof Js==`function`&&(window.removeEventListener(`resize`,Js),Js=void 0)}}function Zs(e,t){return typeof e==`function`?Xs(e):Ks(e,t)}function Qs(e){return Ls(e)&&e.tagName===`svg`}var $s=[...Xo,H,li],ec=e=>$s.find(Yo(e)),tc=()=>({translate:0,scale:1,origin:0,originPoint:0}),nc=()=>({x:tc(),y:tc()}),rc=()=>({min:0,max:0}),K=()=>({x:rc(),y:rc()}),ic=new WeakMap;function ac(e){return typeof e==`object`&&!!e&&typeof e.start==`function`}function oc(e){return typeof e==`string`||Array.isArray(e)}var sc=[`animate`,`whileInView`,`whileFocus`,`whileHover`,`whileTap`,`whileDrag`,`exit`],cc=[`initial`,...sc];function lc(e){return ac(e.animate)||cc.some(t=>oc(e[t]))}function uc(e){return!!(lc(e)||e.variants)}function dc(e,t,n){for(let r in t){let i=t[r],a=n[r];if(G(i))e.addValue(r,i);else if(G(a))e.addValue(r,No(i,{owner:e}));else if(a!==i)if(e.hasValue(r)){let t=e.getValue(r);t.liveStyle===!0?t.jump(i):t.hasAnimated||t.set(i)}else{let t=e.getStaticValue(r);e.addValue(r,No(t===void 0?i:t,{owner:e}))}}for(let r in n)t[r]===void 0&&e.removeValue(r);return t}var fc={current:null},pc={current:!1},mc=typeof window<`u`;function hc(){if(pc.current=!0,mc)if(window.matchMedia){let e=window.matchMedia(`(prefers-reduced-motion)`),t=()=>fc.current=e.matches;e.addEventListener(`change`,t),t()}else fc.current=!1}var gc=[`AnimationStart`,`AnimationComplete`,`Update`,`BeforeLayoutMeasure`,`LayoutMeasure`,`LayoutAnimationStart`,`LayoutAnimationComplete`],_c={};function vc(e){_c=e}function yc(){return _c}var bc=class{scrapeMotionValuesFromProps(e,t,n){return{}}constructor({parent:e,props:t,presenceContext:n,reducedMotionConfig:r,skipAnimations:i,blockInitialAnimation:a,visualState:o},s={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=Ma,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,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=()=>{let e=B.now();this.renderScheduledAt<e&&(this.renderScheduledAt=e,R.render(this.render,!1,!0))};let{latestValues:c,renderState:l}=o;this.latestValues=c,this.baseTarget={...c},this.initialValues=t.initial?{...c}:{},this.renderState=l,this.parent=e,this.props=t,this.presenceContext=n,this.depth=e?e.depth+1:0,this.reducedMotionConfig=r,this.skipAnimationsConfig=i,this.options=s,this.blockInitialAnimation=!!a,this.isControllingVariants=lc(t),this.isVariantNode=uc(t),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);let{willChange:u,...d}=this.scrapeMotionValuesFromProps(t,{},this);for(let e in d){let t=d[e];c[e]!==void 0&&G(t)&&t.set(c[e])}}mount(e){if(this.hasBeenMounted)for(let e in this.initialValues)this.values.get(e)?.jump(this.initialValues[e]),this.latestValues[e]=this.initialValues[e];this.current=e,ic.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((e,t)=>this.bindToMotionValue(t,e)),this.reducedMotionConfig===`never`?this.shouldReduceMotion=!1:this.reducedMotionConfig===`always`?this.shouldReduceMotion=!0:(pc.current||hc(),this.shouldReduceMotion=fc.current),process.env.NODE_ENV!==`production`&&Hn(this.shouldReduceMotion!==!0,`You have Reduced Motion enabled on your device. Animations may not appear as expected.`,`reduced-motion-disabled`),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),gr(this.notifyUpdate),gr(this.render),this.valueSubscriptions.forEach(e=>e()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(let e in this.events)this.events[e].clear();for(let e in this.features){let t=this.features[e];t&&(t.unmount(),t.isMounted=!1)}this.current=null}addChild(e){this.children.add(e),this.enteringChildren??=new Set,this.enteringChildren.add(e)}removeChild(e){this.children.delete(e),this.enteringChildren&&this.enteringChildren.delete(e)}bindToMotionValue(e,t){if(this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)(),t.accelerate&&to.has(e)&&this.current instanceof HTMLElement){let{factory:n,keyframes:r,times:i,ease:a,duration:o}=t.accelerate,s=new Ga({element:this.current,name:e,keyframes:r,times:i,ease:a,duration:L(o)}),c=n(s);this.valueSubscriptions.set(e,()=>{c(),s.cancel()});return}let n=ya.has(e);n&&this.onBindTransform&&this.onBindTransform();let r=t.on(`change`,t=>{this.latestValues[e]=t,this.props.onUpdate&&R.preRender(this.notifyUpdate),n&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()}),i;typeof window<`u`&&window.MotionCheckAppearSync&&(i=window.MotionCheckAppearSync(this,e,t)),this.valueSubscriptions.set(e,()=>{r(),i&&i(),t.owner&&t.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 _c){let t=_c[e];if(!t)continue;let{isEnabled:n,Feature:r}=t;if(!this.features[e]&&r&&n(this.props)&&(this.features[e]=new r(this)),this.features[e]){let t=this.features[e];t.isMounted?t.update():(t.mount(),t.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):K()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,t){this.latestValues[e]=t}update(e,t){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=t;for(let t=0;t<gc.length;t++){let n=gc[t];this.propEventSubscriptions[n]&&(this.propEventSubscriptions[n](),delete this.propEventSubscriptions[n]);let r=e[`on`+n];r&&(this.propEventSubscriptions[n]=this.on(n,r))}this.prevMotionValues=dc(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){let t=this.getClosestVariantNode();if(t)return t.variantChildren&&t.variantChildren.add(e),()=>t.variantChildren.delete(e)}addValue(e,t){let n=this.values.get(e);t!==n&&(n&&this.removeValue(e),this.bindToMotionValue(e,t),this.values.set(e,t),this.latestValues[e]=t.get())}removeValue(e){this.values.delete(e);let t=this.valueSubscriptions.get(e);t&&(t(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,t){if(this.props.values&&this.props.values[e])return this.props.values[e];let n=this.values.get(e);return n===void 0&&t!==void 0&&(n=No(t===null?void 0:t,{owner:this}),this.addValue(e,n)),n}readValue(e,t){let n=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return n!=null&&(typeof n==`string`&&(An(n)||Mn(n))?n=parseFloat(n):!ec(n)&&li.test(t)&&(n=ls(e,t)),this.setBaseTarget(e,G(n)?n.get():n)),G(n)?n.get():n}setBaseTarget(e,t){this.baseTarget[e]=t}getBaseTarget(e){let{initial:t}=this.props,n;if(typeof t==`string`||typeof t==`object`){let r=Eo(this.props,t,this.presenceContext?.custom);r&&(n=r[e])}if(t&&n!==void 0)return n;let r=this.getBaseTargetFromProps(this.props,e);return r!==void 0&&!G(r)?r:this.initialValues[e]!==void 0&&n===void 0?void 0:this.baseTarget[e]}on(e,t){return this.events[e]||(this.events[e]=new Rn),this.events[e].add(t)}notify(e,...t){this.events[e]&&this.events[e].notify(...t)}scheduleRenderMicrotask(){gs.render(this.render)}},xc=class extends bc{constructor(){super(...arguments),this.KeyframeResolver=fs}sortInstanceNodePosition(e,t){return e.compareDocumentPosition(t)&2?1:-1}getBaseTargetFromProps(e,t){let n=e.style;return n?n[t]:void 0}removeValueFromRenderState(e,{vars:t,style:n}){delete t[e],delete n[e]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);let{children:e}=this.props;G(e)&&(this.childSubscription=e.on(`change`,e=>{this.current&&(this.current.textContent=`${e}`)}))}},Sc=class{constructor(e){this.isMounted=!1,this.node=e}update(){}};function Cc({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function wc({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function Tc(e,t){if(!t)return e;let n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function Ec(e){return e===void 0||e===1}function Dc({scale:e,scaleX:t,scaleY:n}){return!Ec(e)||!Ec(t)||!Ec(n)}function Oc(e){return Dc(e)||kc(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function kc(e){return Ac(e.x)||Ac(e.y)}function Ac(e){return e&&e!==`0%`}function jc(e,t,n){return n+t*(e-n)}function Mc(e,t,n,r,i){return i!==void 0&&(e=jc(e,i,r)),jc(e,n,r)+t}function Nc(e,t=0,n=1,r,i){e.min=Mc(e.min,t,n,r,i),e.max=Mc(e.max,t,n,r,i)}function Pc(e,{x:t,y:n}){Nc(e.x,t.translate,t.scale,t.originPoint),Nc(e.y,n.translate,n.scale,n.originPoint)}var Fc=.999999999999,Ic=1.0000000000001;function Lc(e,t,n,r=!1){let i=n.length;if(!i)return;t.x=t.y=1;let a,o;for(let s=0;s<i;s++){a=n[s],o=a.projectionDelta;let{visualElement:i}=a.options;i&&i.props.style&&i.props.style.display===`contents`||(r&&a.options.layoutScroll&&a.scroll&&a!==a.root&&(Rc(e.x,-a.scroll.offset.x),Rc(e.y,-a.scroll.offset.y)),o&&(t.x*=o.x.scale,t.y*=o.y.scale,Pc(e,o)),r&&Oc(a.latestValues)&&Vc(e,a.latestValues,a.layout?.layoutBox))}t.x<Ic&&t.x>Fc&&(t.x=1),t.y<Ic&&t.y>Fc&&(t.y=1)}function Rc(e,t){e.min+=t,e.max+=t}function zc(e,t,n,r,i=.5){Nc(e,t,n,U(e.min,e.max,i),r)}function Bc(e,t){return typeof e==`string`?parseFloat(e)/100*(t.max-t.min):e}function Vc(e,t,n){let r=n??e;zc(e.x,Bc(t.x,r.x),t.scaleX,t.scale,t.originX),zc(e.y,Bc(t.y,r.y),t.scaleY,t.scale,t.originY)}function Hc(e,t){return Cc(Tc(e.getBoundingClientRect(),t))}function Uc(e,t,n){let r=Hc(e,n),{scroll:i}=t;return i&&(Rc(r.x,i.offset.x),Rc(r.y,i.offset.y)),r}var Wc={x:`translateX`,y:`translateY`,z:`translateZ`,transformPerspective:`perspective`},Gc=va.length;function Kc(e,t,n){let r=``,i=!0;for(let a=0;a<Gc;a++){let o=va[a],s=e[o];if(s===void 0)continue;let c=!0;if(typeof s==`number`)c=s===+!!o.startsWith(`scale`);else{let e=parseFloat(s);c=o.startsWith(`scale`)?e===1:e===0}if(!c||n){let e=ms(s,as[o]);if(!c){i=!1;let t=Wc[o]||o;r+=`${t}(${e}) `}n&&(t[o]=e)}}return r=r.trim(),n?r=n(t,i?``:r):i&&(r=`none`),r}function qc(e,t,n){let{style:r,vars:i,transformOrigin:a}=e,o=!1,s=!1;for(let e in t){let n=t[e];if(ya.has(e)){o=!0;continue}else if(Sr(e)){i[e]=n;continue}else{let t=ms(n,as[e]);e.startsWith(`origin`)?(s=!0,a[e]=t):r[e]=t}}if(t.transform||(o||n?r.transform=Kc(t,e.transform,n):r.transform&&=`none`),s){let{originX:e=`50%`,originY:t=`50%`,originZ:n=0}=a;r.transformOrigin=`${e} ${t} ${n}`}}function Jc(e,{style:t,vars:n},r,i){let a=e.style,o;for(o in t)a[o]=t[o];for(o in i?.applyProjectionStyles(a,r),n)a.setProperty(o,n[o])}function Yc(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}var Xc={correct:(e,t)=>{if(!t.target)return e;if(typeof e==`string`)if(V.test(e))e=parseFloat(e);else return e;return`${Yc(e,t.target.x)}% ${Yc(e,t.target.y)}%`}},Zc={correct:(e,{treeScale:t,projectionDelta:n})=>{let r=e,i=li.parse(e);if(i.length>5)return r;let a=li.createTransformer(e),o=typeof i[0]==`number`?0:1,s=n.x.scale*t.x,c=n.y.scale*t.y;i[0+o]/=s,i[1+o]/=c;let l=U(s,c,.5);return typeof i[2+o]==`number`&&(i[2+o]/=l),typeof i[3+o]==`number`&&(i[3+o]/=l),a(i)}},Qc={borderRadius:{...Xc,applyTo:[`borderTopLeftRadius`,`borderTopRightRadius`,`borderBottomLeftRadius`,`borderBottomRightRadius`]},borderTopLeftRadius:Xc,borderTopRightRadius:Xc,borderBottomLeftRadius:Xc,borderBottomRightRadius:Xc,boxShadow:Zc};function $c(e,{layout:t,layoutId:n}){return ya.has(e)||e.startsWith(`origin`)||(t||n!==void 0)&&(!!Qc[e]||e===`opacity`)}function el(e,t,n){let r=e.style,i=t?.style,a={};if(!r)return a;for(let t in r)(G(r[t])||i&&G(i[t])||$c(t,e)||n?.getValue(t)?.liveStyle!==void 0)&&(a[t]=r[t]);return a}function tl(e){return window.getComputedStyle(e)}var nl=class extends xc{constructor(){super(...arguments),this.type=`html`,this.renderInstance=Jc}readValueFromInstance(e,t){if(ya.has(t))return this.projection?.isProjecting?ma(t):ga(e,t);{let n=tl(e),r=(Sr(t)?n.getPropertyValue(t):n[t])||0;return typeof r==`string`?r.trim():r}}measureInstanceViewportBox(e,{transformPagePoint:t}){return Hc(e,t)}build(e,t,n){qc(e,t,n.transformTemplate)}scrapeMotionValuesFromProps(e,t,n){return el(e,t,n)}},rl={offset:`stroke-dashoffset`,array:`stroke-dasharray`},il={offset:`strokeDashoffset`,array:`strokeDasharray`};function al(e,t,n=1,r=0,i=!0){e.pathLength=1;let a=i?rl:il;e[a.offset]=`${-r}`,e[a.array]=`${t} ${n}`}var ol=[`offsetDistance`,`offsetPath`,`offsetRotate`,`offsetAnchor`];function sl(e,{attrX:t,attrY:n,attrScale:r,pathLength:i,pathSpacing:a=1,pathOffset:o=0,...s},c,l,u){if(qc(e,s,l),c){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};let{attrs:d,style:f}=e;d.transform&&(f.transform=d.transform,delete d.transform),(f.transform||d.transformOrigin)&&(f.transformOrigin=d.transformOrigin??`50% 50%`,delete d.transformOrigin),f.transform&&(f.transformBox=u?.transformBox??`fill-box`,delete d.transformBox);for(let e of ol)d[e]!==void 0&&(f[e]=d[e],delete d[e]);t!==void 0&&(d.x=t),n!==void 0&&(d.y=n),r!==void 0&&(d.scale=r),i!==void 0&&al(d,i,a,o,!1)}var cl=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`]),ll=e=>typeof e==`string`&&e.toLowerCase()===`svg`;function ul(e,t,n,r){Jc(e,t,void 0,r);for(let n in t.attrs)e.setAttribute(cl.has(n)?n:Bo(n),t.attrs[n])}function dl(e,t,n){let r=el(e,t,n);for(let n in e)if(G(e[n])||G(t[n])){let t=va.indexOf(n)===-1?n:`attr`+n.charAt(0).toUpperCase()+n.substring(1);r[t]=e[n]}return r}var fl=class extends xc{constructor(){super(...arguments),this.type=`svg`,this.isSVGTag=!1,this.measureInstanceViewportBox=K}getBaseTargetFromProps(e,t){return e[t]}readValueFromInstance(e,t){if(ya.has(t)){let e=ss(t);return e&&e.default||0}return t=cl.has(t)?t:Bo(t),e.getAttribute(t)}scrapeMotionValuesFromProps(e,t,n){return dl(e,t,n)}build(e,t,n){sl(e,t,this.isSVGTag,n.transformTemplate,n.style)}renderInstance(e,t,n,r){ul(e,t,n,r)}mount(e){this.isSVGTag=ll(e.tagName),super.mount(e)}},pl=cc.length;function ml(e){if(!e)return;if(!e.isControllingVariants){let t=e.parent&&ml(e.parent)||{};return e.props.initial!==void 0&&(t.initial=e.props.initial),t}let t={};for(let n=0;n<pl;n++){let r=cc[n],i=e.props[r];(oc(i)||i===!1)&&(t[r]=i)}return t}function hl(e,t){if(!Array.isArray(t))return!1;let n=t.length;if(n!==e.length)return!1;for(let r=0;r<n;r++)if(t[r]!==e[r])return!1;return!0}var gl=[...sc].reverse(),_l=sc.length;function vl(e){return t=>Promise.all(t.map(({animation:t,options:n})=>qo(e,t,n)))}function yl(e){let t=vl(e),n=Sl(),r=!0,i=!1,a=t=>(n,r)=>{let i=Do(e,r,t===`exit`?e.presenceContext?.custom:void 0);if(i){let{transition:e,transitionEnd:t,...r}=i;n={...n,...r,...t}}return n};function o(n){t=n(e)}function s(o){let{props:s}=e,c=ml(e.parent)||{},l=[],u=new Set,d={},f=1/0;for(let t=0;t<_l;t++){let p=gl[t],m=n[p],h=s[p]===void 0?c[p]:s[p],g=oc(h),_=p===o?m.isActive:null;_===!1&&(f=t);let v=h===c[p]&&h!==s[p]&&g;if(v&&(r||i)&&e.manuallyAnimateOnMount&&(v=!1),m.protectedKeys={...d},!m.isActive&&_===null||!h&&!m.prevProp||ac(h)||typeof h==`boolean`)continue;if(p===`exit`&&m.isActive&&_!==!0){m.prevResolvedValues&&(d={...d,...m.prevResolvedValues});continue}let y=bl(m.prevProp,h),b=y||p===o&&m.isActive&&!v&&g||t>f&&g,x=!1,S=Array.isArray(h)?h:[h],C=S.reduce(a(p),{});_===!1&&(C={});let{prevResolvedValues:w={}}=m,T={...w,...C},E=t=>{b=!0,u.has(t)&&(x=!0,u.delete(t)),m.needsAnimating[t]=!0;let n=e.getValue(t);n&&(n.liveStyle=!1)};for(let e in T){let t=C[e],n=w[e];if(d.hasOwnProperty(e))continue;let r=!1;r=Po(t)&&Po(n)?!hl(t,n):t!==n,r?t==null?u.add(e):E(e):t!==void 0&&u.has(e)?E(e):m.protectedKeys[e]=!0}m.prevProp=h,m.prevResolvedValues=C,m.isActive&&(d={...d,...C}),(r||i)&&e.blockInitialAnimation&&(b=!1);let D=v&&y;b&&(!D||x)&&l.push(...S.map(t=>{let n={type:p};if(typeof t==`string`&&(r||i)&&!D&&e.manuallyAnimateOnMount&&e.parent){let{parent:r}=e,i=Do(r,t);if(r.enteringChildren&&i){let{delayChildren:t}=i.transition||{};n.delay=lo(r.enteringChildren,e,t)}}return{animation:t,options:n}}))}if(u.size){let t={};if(typeof s.initial!=`boolean`){let n=Do(e,Array.isArray(s.initial)?s.initial[0]:s.initial);n&&n.transition&&(t.transition=n.transition)}u.forEach(n=>{let r=e.getBaseTarget(n),i=e.getValue(n);i&&(i.liveStyle=!0),t[n]=r??null}),l.push({animation:t})}let p=!!l.length;return r&&(s.initial===!1||s.initial===s.animate)&&!e.manuallyAnimateOnMount&&(p=!1),r=!1,i=!1,p?t(l):Promise.resolve()}function c(t,r){if(n[t].isActive===r)return Promise.resolve();e.variantChildren?.forEach(e=>e.animationState?.setActive(t,r)),n[t].isActive=r;let i=s(t);for(let e in n)n[e].protectedKeys={};return i}return{animateChanges:s,setActive:c,setAnimateFunction:o,getState:()=>n,reset:()=>{n=Sl(),i=!0}}}function bl(e,t){return typeof t==`string`?t!==e:Array.isArray(t)?!hl(t,e):!1}function xl(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Sl(){return{animate:xl(!0),whileInView:xl(),whileHover:xl(),whileTap:xl(),whileDrag:xl(),whileFocus:xl(),exit:xl()}}function Cl(e,t){e.min=t.min,e.max=t.max}function wl(e,t){Cl(e.x,t.x),Cl(e.y,t.y)}function Tl(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}var El=1e-4,Dl=1-El,Ol=1+El,kl=.01,Al=0-kl,jl=0+kl;function q(e){return e.max-e.min}function Ml(e,t,n){return Math.abs(e-t)<=n}function Nl(e,t,n,r=.5){e.origin=r,e.originPoint=U(t.min,t.max,e.origin),e.scale=q(n)/q(t),e.translate=U(n.min,n.max,e.origin)-e.originPoint,(e.scale>=Dl&&e.scale<=Ol||isNaN(e.scale))&&(e.scale=1),(e.translate>=Al&&e.translate<=jl||isNaN(e.translate))&&(e.translate=0)}function Pl(e,t,n,r){Nl(e.x,t.x,n.x,r?r.originX:void 0),Nl(e.y,t.y,n.y,r?r.originY:void 0)}function Fl(e,t,n,r=0){e.min=(r?U(n.min,n.max,r):n.min)+t.min,e.max=e.min+q(t)}function Il(e,t,n,r){Fl(e.x,t.x,n.x,r?.x),Fl(e.y,t.y,n.y,r?.y)}function Ll(e,t,n,r=0){let i=r?U(n.min,n.max,r):n.min;e.min=t.min-i,e.max=e.min+q(t)}function Rl(e,t,n,r){Ll(e.x,t.x,n.x,r?.x),Ll(e.y,t.y,n.y,r?.y)}function zl(e,t,n,r,i){return e-=t,e=jc(e,1/n,r),i!==void 0&&(e=jc(e,1/i,r)),e}function Bl(e,t=0,n=1,r=.5,i,a=e,o=e){if(Ur.test(t)&&(t=parseFloat(t),t=U(o.min,o.max,t/100)-o.min),typeof t!=`number`)return;let s=U(a.min,a.max,r);e===a&&(s-=t),e.min=zl(e.min,t,n,s,i),e.max=zl(e.max,t,n,s,i)}function Vl(e,t,[n,r,i],a,o){Bl(e,t[n],t[r],t[i],t.scale,a,o)}var Hl=[`x`,`scaleX`,`originX`],Ul=[`y`,`scaleY`,`originY`];function Wl(e,t,n,r){Vl(e.x,t,Hl,n?n.x:void 0,r?r.x:void 0),Vl(e.y,t,Ul,n?n.y:void 0,r?r.y:void 0)}function Gl(e){return e.translate===0&&e.scale===1}function Kl(e){return Gl(e.x)&&Gl(e.y)}function ql(e,t){return e.min===t.min&&e.max===t.max}function Jl(e,t){return ql(e.x,t.x)&&ql(e.y,t.y)}function Yl(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function Xl(e,t){return Yl(e.x,t.x)&&Yl(e.y,t.y)}function Zl(e){return q(e.x)/q(e.y)}function Ql(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}function $l(e){return[e(`x`),e(`y`)]}function eu(e,t,n){let r=``,i=e.x.translate/t.x,a=e.y.translate/t.y,o=n?.z||0;if((i||a||o)&&(r=`translate3d(${i}px, ${a}px, ${o}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){let{transformPerspective:e,rotate:t,rotateX:i,rotateY:a,skewX:o,skewY:s}=n;e&&(r=`perspective(${e}px) ${r}`),t&&(r+=`rotate(${t}deg) `),i&&(r+=`rotateX(${i}deg) `),a&&(r+=`rotateY(${a}deg) `),o&&(r+=`skewX(${o}deg) `),s&&(r+=`skewY(${s}deg) `)}let s=e.x.scale*t.x,c=e.y.scale*t.y;return(s!==1||c!==1)&&(r+=`scale(${s}, ${c})`),r||`none`}var tu=[`borderTopLeftRadius`,`borderTopRightRadius`,`borderBottomLeftRadius`,`borderBottomRightRadius`],nu=tu.length,ru=e=>typeof e==`string`?parseFloat(e):e,iu=e=>typeof e==`number`||V.test(e);function au(e,t,n,r,i,a){i?(e.opacity=U(0,n.opacity??1,su(r)),e.opacityExit=U(t.opacity??1,0,cu(r))):a&&(e.opacity=U(t.opacity??1,n.opacity??1,r));for(let i=0;i<nu;i++){let a=tu[i],o=ou(t,a),s=ou(n,a);o===void 0&&s===void 0||(o||=0,s||=0,o===0||s===0||iu(o)===iu(s)?(e[a]=Math.max(U(ru(o),ru(s),r),0),(Ur.test(s)||Ur.test(o))&&(e[a]+=`%`)):e[a]=s)}(t.rotate||n.rotate)&&(e.rotate=U(t.rotate||0,n.rotate||0,r))}function ou(e,t){return e[t]===void 0?e.borderRadius:e[t]}var su=lu(0,.5,tr),cu=lu(.5,.95,Pn);function lu(e,t,n){return r=>r<e?0:r>t?1:n(Ln(e,t,r))}function uu(e,t,n){let r=G(e)?e:No(e);return r.start(wo(``,r,t,n)),r.animation}function du(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}var fu=(e,t)=>e.depth-t.depth,pu=class{constructor(){this.children=[],this.isDirty=!1}add(e){Cn(this.children,e),this.isDirty=!0}remove(e){wn(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(fu),this.isDirty=!1,this.children.forEach(e)}};function mu(e,t){let n=B.now(),r=({timestamp:i})=>{let a=i-n;a>=t&&(gr(r),e(a-t))};return R.setup(r,!0),()=>gr(r)}function hu(e){return G(e)?e.get():e}var gu=class{constructor(){this.members=[]}add(e){Cn(this.members,e);for(let t=this.members.length-1;t>=0;t--){let n=this.members[t];if(n===e||n===this.lead||n===this.prevLead)continue;let r=n.instance;(!r||r.isConnected===!1)&&!n.snapshot&&(wn(this.members,n),n.unmount())}e.scheduleRender()}remove(e){if(wn(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){let e=this.members[this.members.length-1];e&&this.promote(e)}}relegate(e){for(let t=this.members.indexOf(e)-1;t>=0;t--){let e=this.members[t];if(e.isPresent!==!1&&e.instance?.isConnected!==!1)return this.promote(e),!0}return!1}promote(e,t){let n=this.lead;if(e!==n&&(this.prevLead=n,this.lead=e,e.show(),n)){n.updateSnapshot(),e.scheduleRender();let{layoutDependency:r}=n.options,{layoutDependency:i}=e.options;(r===void 0||r!==i)&&(e.resumeFrom=n,t&&(n.preserveOpacity=!0),n.snapshot&&(e.snapshot=n.snapshot,e.snapshot.latestValues=n.animationValues||n.latestValues),e.root?.isUpdating&&(e.isLayoutDirty=!0)),e.options.crossfade===!1&&n.hide()}}exitAnimationComplete(){this.members.forEach(e=>{e.options.onExitComplete?.(),e.resumingFrom?.options.onExitComplete?.()})}scheduleRender(){this.members.forEach(e=>e.instance&&e.scheduleRender(!1))}removeLeadSnapshot(){this.lead?.snapshot&&(this.lead.snapshot=void 0)}},_u={hasAnimatedSinceResize:!0,hasEverUpdated:!1},vu={nodes:0,calculatedTargetDeltas:0,calculatedProjections:0},yu=[``,`X`,`Y`,`Z`],bu=1e3,xu=0;function Su(e,t,n,r){let{latestValues:i}=t;i[e]&&(n[e]=i[e],t.setStaticValue(e,0),r&&(r[e]=0))}function Cu(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;let{visualElement:t}=e.options;if(!t)return;let n=Ho(t);if(window.MotionHasOptimisedAnimation(n,`transform`)){let{layout:t,layoutId:r}=e.options;window.MotionCancelOptimisedAnimation(n,`transform`,R,!(t||r))}let{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&Cu(r)}function wu({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(e={},n=t?.()){this.id=xu++,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,fr.value&&(vu.nodes=vu.calculatedTargetDeltas=vu.calculatedProjections=0),this.nodes.forEach(Du),this.nodes.forEach(Iu),this.nodes.forEach(Lu),this.nodes.forEach(Ou),fr.addProjectionMetrics&&fr.addProjectionMetrics(vu)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=e,this.root=n?n.root||n:this,this.path=n?[...n.path,n]:[],this.parent=n,this.depth=n?n.depth+1:0;for(let e=0;e<this.path.length;e++)this.path[e].shouldResetTransform=!0;this.root===this&&(this.nodes=new pu)}addEventListener(e,t){return this.eventHandlers.has(e)||this.eventHandlers.set(e,new Rn),this.eventHandlers.get(e).add(t)}notifyListeners(e,...t){let n=this.eventHandlers.get(e);n&&n.notify(...t)}hasListeners(e){return this.eventHandlers.has(e)}mount(t){if(this.instance)return;this.isSVG=Ls(t)&&!Qs(t),this.instance=t;let{layoutId:n,layout:r,visualElement:i}=this.options;if(i&&!i.current&&i.mount(t),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(r||n)&&(this.isLayoutDirty=!0),e){let n,r=0,i=()=>this.root.updateBlockedByResize=!1;R.read(()=>{r=window.innerWidth}),e(t,()=>{let e=window.innerWidth;e!==r&&(r=e,this.root.updateBlockedByResize=!0,n&&n(),n=mu(i,250),_u.hasAnimatedSinceResize&&(_u.hasAnimatedSinceResize=!1,this.nodes.forEach(Fu)))})}n&&this.root.registerSharedNode(n,this),this.options.animate!==!1&&i&&(n||r)&&this.addEventListener(`didUpdate`,({delta:e,hasLayoutChanged:t,hasRelativeLayoutChanged:n,layout:r})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}let a=this.options.transition||i.getDefaultTransition()||Wu,{onLayoutAnimationStart:o,onLayoutAnimationComplete:s}=i.getProps(),c=!this.targetLayout||!Xl(this.targetLayout,r),l=!t&&n;if(this.options.layoutRoot||this.resumeFrom||l||t&&(c||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);let t={...xo(a,`layout`),onPlay:o,onComplete:s};(i.shouldReduceMotion||this.options.layoutRoot)&&(t.delay=0,t.type=!1),this.startAnimation(t),this.setAnimationOrigin(e,l)}else t||Fu(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=r})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);let e=this.getStack();e&&e.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),gr(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(Ru),this.animationId++)}getTransformTemplate(){let{visualElement:e}=this.options;return e&&e.getProps().transformTemplate}willUpdate(e=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&Cu(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let e=0;e<this.path.length;e++){let t=this.path[e];t.shouldResetTransform=!0,(typeof t.latestValues.x==`string`||typeof t.latestValues.y==`string`)&&(t.isLayoutDirty=!0),t.updateScroll(`snapshot`),t.options.layoutRoot&&t.willUpdate(!1)}let{layoutId:t,layout:n}=this.options;if(t===void 0&&!n)return;let r=this.getTransformTemplate();this.prevTransformTemplateValue=r?r(this.latestValues,``):void 0,this.updateSnapshot(),e&&this.notifyListeners(`willUpdate`)}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){let e=this.updateBlockedByResize;this.unblockUpdate(),this.updateBlockedByResize=!1,this.clearAllSnapshots(),e&&this.nodes.forEach(ju),this.nodes.forEach(Au);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(Mu);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(Nu),this.nodes.forEach(Pu),this.nodes.forEach(Tu),this.nodes.forEach(Eu)):this.nodes.forEach(Mu),this.clearAllSnapshots();let e=B.now();z.delta=Tn(0,1e3/60,e-z.timestamp),z.timestamp=e,z.isProcessing=!0,_r.update.process(z),_r.preRender.process(z),_r.render.process(z),z.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,gs.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(ku),this.sharedNodes.forEach(zu)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,R.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){R.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!q(this.snapshot.measuredBox.x)&&!q(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 e=0;e<this.path.length;e++)this.path[e].updateScroll();let e=this.layout;this.layout=this.measure(!1),this.layoutVersion++,this.layoutCorrected||=K(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners(`measure`,this.layout.layoutBox);let{visualElement:t}=this.options;t&&t.notify(`LayoutMeasure`,this.layout.layoutBox,e?e.layoutBox:void 0)}updateScroll(e=`measure`){let t=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===e&&(t=!1),t&&this.instance){let t=r(this.instance);this.scroll={animationId:this.root.animationId,phase:e,isRoot:t,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:t}}}resetTransform(){if(!i)return;let e=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,t=this.projectionDelta&&!Kl(this.projectionDelta),n=this.getTransformTemplate(),r=n?n(this.latestValues,``):void 0,a=r!==this.prevTransformTemplateValue;e&&this.instance&&(t||Oc(this.latestValues)||a)&&(i(this.instance,r),this.shouldResetTransform=!1,this.scheduleRender())}measure(e=!0){let t=this.measurePageBox(),n=this.removeElementScroll(t);return e&&(n=this.removeTransform(n)),Ju(n),{animationId:this.root.animationId,measuredBox:t,layoutBox:n,latestValues:{},source:this.id}}measurePageBox(){let{visualElement:e}=this.options;if(!e)return K();let t=e.measureViewportBox();if(!(this.scroll?.wasRoot||this.path.some(Xu))){let{scroll:e}=this.root;e&&(Rc(t.x,e.offset.x),Rc(t.y,e.offset.y))}return t}removeElementScroll(e){let t=K();if(wl(t,e),this.scroll?.wasRoot)return t;for(let n=0;n<this.path.length;n++){let r=this.path[n],{scroll:i,options:a}=r;r!==this.root&&i&&a.layoutScroll&&(i.wasRoot&&wl(t,e),Rc(t.x,i.offset.x),Rc(t.y,i.offset.y))}return t}applyTransform(e,t=!1,n){let r=n||K();wl(r,e);for(let e=0;e<this.path.length;e++){let n=this.path[e];!t&&n.options.layoutScroll&&n.scroll&&n!==n.root&&(Rc(r.x,-n.scroll.offset.x),Rc(r.y,-n.scroll.offset.y)),Oc(n.latestValues)&&Vc(r,n.latestValues,n.layout?.layoutBox)}return Oc(this.latestValues)&&Vc(r,this.latestValues,this.layout?.layoutBox),r}removeTransform(e){let t=K();wl(t,e);for(let e=0;e<this.path.length;e++){let n=this.path[e];if(!Oc(n.latestValues))continue;let r;n.instance&&(Dc(n.latestValues)&&n.updateSnapshot(),r=K(),wl(r,n.measurePageBox())),Wl(t,n.latestValues,n.snapshot?.layoutBox,r)}return Oc(this.latestValues)&&Wl(t,this.latestValues),t}setTargetDelta(e){this.targetDelta=e,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(e){this.options={...this.options,...e,crossfade:e.crossfade===void 0?!0:e.crossfade}}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!==z.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(e=!1){let t=this.getLead();this.isProjectionDirty||=t.isProjectionDirty,this.isTransformDirty||=t.isTransformDirty,this.isSharedProjectionDirty||=t.isSharedProjectionDirty;let n=!!this.resumingFrom||this!==t;if(!(e||n&&this.isSharedProjectionDirty||this.isProjectionDirty||this.parent?.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;let{layout:r,layoutId:i}=this.options;if(!this.layout||!(r||i))return;this.resolvedRelativeTargetAt=z.timestamp;let a=this.getClosestProjectingParent();a&&this.linkedParentVersion!==a.layoutVersion&&!a.options.layoutRoot&&this.removeRelativeTarget(),!this.targetDelta&&!this.relativeTarget&&(this.options.layoutAnchor!==!1&&a&&a.layout?this.createRelativeTarget(a,this.layout.layoutBox,a.layout.layoutBox):this.removeRelativeTarget()),!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=K(),this.targetWithTransforms=K()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),Il(this.target,this.relativeTarget,this.relativeParent.target,this.options.layoutAnchor||void 0)):this.targetDelta?(this.resumingFrom?this.applyTransform(this.layout.layoutBox,!1,this.target):wl(this.target,this.layout.layoutBox),Pc(this.target,this.targetDelta)):wl(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget&&(this.attemptToResolveRelativeTarget=!1,this.options.layoutAnchor!==!1&&a&&!!a.resumingFrom==!!this.resumingFrom&&!a.options.layoutScroll&&a.target&&this.animationProgress!==1?this.createRelativeTarget(a,this.target,a.target):this.relativeParent=this.relativeTarget=void 0),fr.value&&vu.calculatedTargetDeltas++)}getClosestProjectingParent(){if(!(!this.parent||Dc(this.parent.latestValues)||kc(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}createRelativeTarget(e,t,n){this.relativeParent=e,this.linkedParentVersion=e.layoutVersion,this.forceRelativeParentToResolveTarget(),this.relativeTarget=K(),this.relativeTargetOrigin=K(),Rl(this.relativeTargetOrigin,t,n,this.options.layoutAnchor||void 0),wl(this.relativeTarget,this.relativeTargetOrigin)}removeRelativeTarget(){this.relativeParent=this.relativeTarget=void 0}calcProjection(){let e=this.getLead(),t=!!this.resumingFrom||this!==e,n=!0;if((this.isProjectionDirty||this.parent?.isProjectionDirty)&&(n=!1),t&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(n=!1),this.resolvedRelativeTargetAt===z.timestamp&&(n=!1),n)return;let{layout:r,layoutId:i}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(r||i))return;wl(this.layoutCorrected,this.layout.layoutBox);let a=this.treeScale.x,o=this.treeScale.y;Lc(this.layoutCorrected,this.treeScale,this.path,t),e.layout&&!e.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(e.target=e.layout.layoutBox,e.targetWithTransforms=K());let{target:s}=e;if(!s){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(Tl(this.prevProjectionDelta.x,this.projectionDelta.x),Tl(this.prevProjectionDelta.y,this.projectionDelta.y)),Pl(this.projectionDelta,this.layoutCorrected,s,this.latestValues),(this.treeScale.x!==a||this.treeScale.y!==o||!Ql(this.projectionDelta.x,this.prevProjectionDelta.x)||!Ql(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners(`projectionUpdate`,s)),fr.value&&vu.calculatedProjections++}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(e=!0){if(this.options.visualElement?.scheduleRender(),e){let e=this.getStack();e&&e.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=nc(),this.projectionDelta=nc(),this.projectionDeltaWithTransform=nc()}setAnimationOrigin(e,t=!1){let n=this.snapshot,r=n?n.latestValues:{},i={...this.latestValues},a=nc();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!t;let o=K(),s=(n?n.source:void 0)!==(this.layout?this.layout.source:void 0),c=this.getStack(),l=!c||c.members.length<=1,u=!!(s&&!l&&this.options.crossfade===!0&&!this.path.some(Uu));this.animationProgress=0;let d;this.mixTargetDelta=t=>{let n=t/1e3;Bu(a.x,e.x,n),Bu(a.y,e.y,n),this.setTargetDelta(a),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(Rl(o,this.layout.layoutBox,this.relativeParent.layout.layoutBox,this.options.layoutAnchor||void 0),Hu(this.relativeTarget,this.relativeTargetOrigin,o,n),d&&Jl(this.relativeTarget,d)&&(this.isProjectionDirty=!1),d||=K(),wl(d,this.relativeTarget)),s&&(this.animationValues=i,au(i,r,this.latestValues,n,u,l)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=n},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(e){this.notifyListeners(`animationStart`),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&=(gr(this.pendingAnimation),void 0),this.pendingAnimation=R.update(()=>{_u.hasAnimatedSinceResize=!0,br.layout++,this.motionValue||=No(0),this.motionValue.jump(0,!1),this.currentAnimation=uu(this.motionValue,[0,1e3],{...e,velocity:0,isSync:!0,onUpdate:t=>{this.mixTargetDelta(t),e.onUpdate&&e.onUpdate(t)},onStop:()=>{br.layout--},onComplete:()=>{br.layout--,e.onComplete&&e.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);let e=this.getStack();e&&e.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners(`animationComplete`)}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(bu),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){let e=this.getLead(),{targetWithTransforms:t,target:n,layout:r,latestValues:i}=e;if(!(!t||!n||!r)){if(this!==e&&this.layout&&r&&Yu(this.options.animationType,this.layout.layoutBox,r.layoutBox)){n=this.target||K();let t=q(this.layout.layoutBox.x);n.x.min=e.target.x.min,n.x.max=n.x.min+t;let r=q(this.layout.layoutBox.y);n.y.min=e.target.y.min,n.y.max=n.y.min+r}wl(t,n),Vc(t,i),Pl(this.projectionDeltaWithTransform,this.layoutCorrected,t,i)}}registerSharedNode(e,t){this.sharedNodes.has(e)||this.sharedNodes.set(e,new gu),this.sharedNodes.get(e).add(t);let n=t.options.initialPromotionConfig;t.promote({transition:n?n.transition:void 0,preserveFollowOpacity:n&&n.shouldPreserveFollowOpacity?n.shouldPreserveFollowOpacity(t):void 0})}isLead(){let e=this.getStack();return e?e.lead===this:!0}getLead(){let{layoutId:e}=this.options;return e&&this.getStack()?.lead||this}getPrevLead(){let{layoutId:e}=this.options;return e?this.getStack()?.prevLead:void 0}getStack(){let{layoutId:e}=this.options;if(e)return this.root.sharedNodes.get(e)}promote({needsReset:e,transition:t,preserveFollowOpacity:n}={}){let r=this.getStack();r&&r.promote(this,n),e&&(this.projectionDelta=void 0,this.needsReset=!0),t&&this.setOptions({transition:t})}relegate(){let e=this.getStack();return e?e.relegate(this):!1}resetSkewAndRotation(){let{visualElement:e}=this.options;if(!e)return;let t=!1,{latestValues:n}=e;if((n.z||n.rotate||n.rotateX||n.rotateY||n.rotateZ||n.skewX||n.skewY)&&(t=!0),!t)return;let r={};n.z&&Su(`z`,e,r,this.animationValues);for(let t=0;t<yu.length;t++)Su(`rotate${yu[t]}`,e,r,this.animationValues),Su(`skew${yu[t]}`,e,r,this.animationValues);e.render();for(let t in r)e.setStaticValue(t,r[t]),this.animationValues&&(this.animationValues[t]=r[t]);e.scheduleRender()}applyProjectionStyles(e,t){if(!this.instance||this.isSVG)return;if(!this.isVisible){e.visibility=`hidden`;return}let n=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,e.visibility=``,e.opacity=``,e.pointerEvents=hu(t?.pointerEvents)||``,e.transform=n?n(this.latestValues,``):`none`;return}let r=this.getLead();if(!this.projectionDelta||!this.layout||!r.target){this.options.layoutId&&(e.opacity=this.latestValues.opacity===void 0?1:this.latestValues.opacity,e.pointerEvents=hu(t?.pointerEvents)||``),this.hasProjected&&!Oc(this.latestValues)&&(e.transform=n?n({},``):`none`,this.hasProjected=!1);return}e.visibility=``;let i=r.animationValues||r.latestValues;this.applyTransformsToTarget();let a=eu(this.projectionDeltaWithTransform,this.treeScale,i);n&&(a=n(i,a)),e.transform=a;let{x:o,y:s}=this.projectionDelta;e.transformOrigin=`${o.origin*100}% ${s.origin*100}% 0`,r.animationValues?e.opacity=r===this?i.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:i.opacityExit:e.opacity=r===this?i.opacity===void 0?``:i.opacity:i.opacityExit===void 0?0:i.opacityExit;for(let t in Qc){if(i[t]===void 0)continue;let{correct:n,applyTo:o,isCSSVariable:s}=Qc[t],c=a===`none`?i[t]:n(i[t],r);if(o){let t=o.length;for(let n=0;n<t;n++)e[o[n]]=c}else s?this.options.visualElement.renderState.vars[t]=c:e[t]=c}this.options.layoutId&&(e.pointerEvents=r===this?hu(t?.pointerEvents)||``:`none`)}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(e=>e.currentAnimation?.stop()),this.root.nodes.forEach(Au),this.root.sharedNodes.clear()}}}function Tu(e){e.updateLayout()}function Eu(e){let t=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners(`didUpdate`)){let{layoutBox:n,measuredBox:r}=e.layout,{animationType:i}=e.options,a=t.source!==e.layout.source;if(i===`size`)$l(e=>{let r=a?t.measuredBox[e]:t.layoutBox[e],i=q(r);r.min=n[e].min,r.max=r.min+i});else if(i===`x`||i===`y`){let e=i===`x`?`y`:`x`;Cl(a?t.measuredBox[e]:t.layoutBox[e],n[e])}else Yu(i,t.layoutBox,n)&&$l(r=>{let i=a?t.measuredBox[r]:t.layoutBox[r],o=q(n[r]);i.max=i.min+o,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[r].max=e.relativeTarget[r].min+o)});let o=nc();Pl(o,n,t.layoutBox);let s=nc();a?Pl(s,e.applyTransform(r,!0),t.measuredBox):Pl(s,n,t.layoutBox);let c=!Kl(o),l=!1;if(!e.resumeFrom){let r=e.getClosestProjectingParent();if(r&&!r.resumeFrom){let{snapshot:i,layout:a}=r;if(i&&a){let o=e.options.layoutAnchor||void 0,s=K();Rl(s,t.layoutBox,i.layoutBox,o);let c=K();Rl(c,n,a.layoutBox,o),Xl(s,c)||(l=!0),r.options.layoutRoot&&(e.relativeTarget=c,e.relativeTargetOrigin=s,e.relativeParent=r)}}}e.notifyListeners(`didUpdate`,{layout:n,snapshot:t,delta:s,layoutDelta:o,hasLayoutChanged:c,hasRelativeLayoutChanged:l})}else if(e.isLead()){let{onExitComplete:t}=e.options;t&&t()}e.options.transition=void 0}function Du(e){fr.value&&vu.nodes++,e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty),e.isTransformDirty||=e.parent.isTransformDirty)}function Ou(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function ku(e){e.clearSnapshot()}function Au(e){e.clearMeasurements()}function ju(e){e.isLayoutDirty=!0,e.updateLayout()}function Mu(e){e.isLayoutDirty=!1}function Nu(e){e.isAnimationBlocked&&e.layout&&!e.isLayoutDirty&&(e.snapshot=e.layout,e.isLayoutDirty=!0)}function Pu(e){let{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify(`BeforeLayoutMeasure`),e.resetTransform()}function Fu(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function Iu(e){e.resolveTargetDelta()}function Lu(e){e.calcProjection()}function Ru(e){e.resetSkewAndRotation()}function zu(e){e.removeLeadSnapshot()}function Bu(e,t,n){e.translate=U(t.translate,0,n),e.scale=U(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function Vu(e,t,n,r){e.min=U(t.min,n.min,r),e.max=U(t.max,n.max,r)}function Hu(e,t,n,r){Vu(e.x,t.x,n.x,r),Vu(e.y,t.y,n.y,r)}function Uu(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}var Wu={duration:.45,ease:[.4,0,.1,1]},Gu=e=>typeof navigator<`u`&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),Ku=Gu(`applewebkit/`)&&!Gu(`chrome/`)?Math.round:Pn;function qu(e){e.min=Ku(e.min),e.max=Ku(e.max)}function Ju(e){qu(e.x),qu(e.y)}function Yu(e,t,n){return e===`position`||e===`preserve-aspect`&&!Ml(Zl(t),Zl(n),.2)}function Xu(e){return e!==e.root&&e.scroll?.wasRoot}var Zu=wu({attachResizeListener:(e,t)=>du(e,`resize`,t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),Qu={current:void 0},$u=wu({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!Qu.current){let e=new Zu({});e.mount(window),e.setOptions({layoutScroll:!0}),Qu.current=e}return Qu.current},resetTransform:(e,t)=>{e.style.transform=t===void 0?`none`:t},checkIsScrollRoot:e=>window.getComputedStyle(e).position===`fixed`}),ed=(0,r.createContext)({transformPagePoint:e=>e,isStatic:!1,reducedMotion:`never`});function td(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function nd(...e){return t=>{let n=!1,r=e.map(e=>{let r=td(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():td(e[t],null)}}}}function rd(...e){return r.useCallback(nd(...e),e)}var id=class extends r.Component{getSnapshotBeforeUpdate(e){let t=this.props.childRef.current;if(hs(t)&&e.isPresent&&!this.props.isPresent&&this.props.pop!==!1){let e=t.offsetParent,n=hs(e)&&e.offsetWidth||0,r=hs(e)&&e.offsetHeight||0,i=getComputedStyle(t),a=this.props.sizeRef.current;a.height=parseFloat(i.height),a.width=parseFloat(i.width),a.top=t.offsetTop,a.left=t.offsetLeft,a.right=n-a.width-a.left,a.bottom=r-a.height-a.top}return null}componentDidUpdate(){}render(){return this.props.children}};function ad({children:e,isPresent:t,anchorX:n,anchorY:a,root:o,pop:s}){let c=(0,r.useId)(),l=(0,r.useRef)(null),u=(0,r.useRef)({width:0,height:0,top:0,left:0,right:0,bottom:0}),{nonce:d}=(0,r.useContext)(ed),f=rd(l,e.props?.ref??e?.ref);return(0,r.useInsertionEffect)(()=>{let{width:e,height:r,top:i,left:f,right:p,bottom:m}=u.current;if(t||s===!1||!l.current||!e||!r)return;let h=n===`left`?`left: ${f}`:`right: ${p}`,g=a===`bottom`?`bottom: ${m}`:`top: ${i}`;l.current.dataset.motionPopId=c;let _=document.createElement(`style`);d&&(_.nonce=d);let v=o??document.head;return v.appendChild(_),_.sheet&&_.sheet.insertRule(`
|
|
3
|
+
[data-motion-pop-id="${c}"] {
|
|
4
|
+
position: absolute !important;
|
|
5
|
+
width: ${e}px !important;
|
|
6
|
+
height: ${r}px !important;
|
|
7
|
+
${h}px !important;
|
|
8
|
+
${g}px !important;
|
|
9
|
+
}
|
|
10
|
+
`),()=>{l.current?.removeAttribute(`data-motion-pop-id`),v.contains(_)&&v.removeChild(_)}},[t]),(0,i.jsx)(id,{isPresent:t,childRef:l,sizeRef:u,pop:s,children:s===!1?e:r.cloneElement(e,{ref:f})})}var od=({children:e,initial:t,isPresent:n,onExitComplete:a,custom:o,presenceAffectsLayout:s,mode:c,anchorX:l,anchorY:u,root:d})=>{let f=bn(sd),p=(0,r.useId)(),m=!0,h=(0,r.useMemo)(()=>(m=!1,{id:p,initial:t,isPresent:n,custom:o,onExitComplete:e=>{f.set(e,!0);for(let e of f.values())if(!e)return;a&&a()},register:e=>(f.set(e,!1),()=>f.delete(e))}),[n,f,a]);return s&&m&&(h={...h}),(0,r.useMemo)(()=>{f.forEach((e,t)=>f.set(t,!1))},[n]),r.useEffect(()=>{!n&&!f.size&&a&&a()},[n]),e=(0,i.jsx)(ad,{pop:c===`popLayout`,isPresent:n,anchorX:l,anchorY:u,root:d,children:e}),(0,i.jsx)(Sn.Provider,{value:h,children:e})};function sd(){return new Map}function cd(e=!0){let t=(0,r.useContext)(Sn);if(t===null)return[!0,null];let{isPresent:n,onExitComplete:i,register:a}=t,o=(0,r.useId)();(0,r.useEffect)(()=>{if(e)return a(o)},[e]);let s=(0,r.useCallback)(()=>e&&i&&i(o),[o,i,e]);return!n&&i?[!1,s]:[!0]}var ld=e=>e.key||``;function ud(e){let t=[];return r.Children.forEach(e,e=>{(0,r.isValidElement)(e)&&t.push(e)}),t}var dd=({children:e,custom:t,initial:n=!0,onExitComplete:a,presenceAffectsLayout:o=!0,mode:s=`sync`,propagate:c=!1,anchorX:l=`left`,anchorY:u=`top`,root:d})=>{let[f,p]=cd(c),m=(0,r.useMemo)(()=>ud(e),[e]),h=c&&!f?[]:m.map(ld),g=(0,r.useRef)(!0),_=(0,r.useRef)(m),v=bn(()=>new Map),y=(0,r.useRef)(new Set),[b,x]=(0,r.useState)(m),[S,C]=(0,r.useState)(m);xn(()=>{g.current=!1,_.current=m;for(let e=0;e<S.length;e++){let t=ld(S[e]);h.includes(t)?(v.delete(t),y.current.delete(t)):v.get(t)!==!0&&v.set(t,!1)}},[S,h.length,h.join(`-`)]);let w=[];if(m!==b){let e=[...m];for(let t=0;t<S.length;t++){let n=S[t],r=ld(n);h.includes(r)||(e.splice(t,0,n),w.push(n))}return s===`wait`&&w.length&&(e=w),C(ud(e)),x(m),null}process.env.NODE_ENV!==`production`&&s===`wait`&&S.length>1&&console.warn(`You're attempting to animate multiple children within AnimatePresence, but its mode is set to "wait". This will lead to odd visual behaviour.`);let{forceRender:T}=(0,r.useContext)(yn);return(0,i.jsx)(i.Fragment,{children:S.map(e=>{let r=ld(e),b=c&&!f?!1:m===S||h.includes(r);return(0,i.jsx)(od,{isPresent:b,initial:!g.current||n?void 0:!1,custom:t,presenceAffectsLayout:o,mode:s,root:d,onExitComplete:b?void 0:()=>{if(y.current.has(r))return;if(v.has(r))y.current.add(r),v.set(r,!0);else return;let e=!0;v.forEach(t=>{t||(e=!1)}),e&&(T?.(),C(_.current),c&&p?.(),a&&a())},anchorX:l,anchorY:u,children:e},r)})})},fd=(0,r.createContext)({strict:!1}),pd={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`]},md=!1;function hd(){if(md)return;let e={};for(let t in pd)e[t]={isEnabled:e=>pd[t].some(t=>!!e[t])};vc(e),md=!0}function gd(){return hd(),yc()}function _d(e){let t=gd();for(let n in e)t[n]={...t[n],...e[n]};vc(t)}var vd=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.propagate.ignoreStrict.viewport`.split(`.`));function yd(e){return e.startsWith(`while`)||e.startsWith(`drag`)&&e!==`draggable`||e.startsWith(`layout`)||e.startsWith(`onTap`)||e.startsWith(`onPan`)||e.startsWith(`onLayout`)||vd.has(e)}var bd=e.r({default:()=>xd}),xd,Sd=e.n((()=>{throw xd={},Error(`Could not resolve "@emotion/is-prop-valid" imported by "framer-motion". Is it installed?`)})),Cd=e=>!yd(e);function wd(e){typeof e==`function`&&(Cd=t=>t.startsWith(`on`)?!yd(t):e(t))}try{wd((Sd(),e.i(bd)).default)}catch{}function Td(e,t,n){let r={};for(let i in e)i===`values`&&typeof e.values==`object`||G(e[i])||(Cd(i)||n===!0&&yd(i)||!t&&!yd(i)||e.draggable&&i.startsWith(`onDrag`))&&(r[i]=e[i]);return r}var Ed=(0,r.createContext)({});function Dd(e,t){if(lc(e)){let{initial:t,animate:n}=e;return{initial:t===!1||oc(t)?t:void 0,animate:oc(n)?n:void 0}}return e.inherit===!1?{}:t}function Od(e){let{initial:t,animate:n}=Dd(e,(0,r.useContext)(Ed));return(0,r.useMemo)(()=>({initial:t,animate:n}),[kd(t),kd(n)])}function kd(e){return Array.isArray(e)?e.join(` `):e}var Ad=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function jd(e,t,n){for(let r in t)!G(t[r])&&!$c(r,n)&&(e[r]=t[r])}function Md({transformTemplate:e},t){return(0,r.useMemo)(()=>{let n=Ad();return qc(n,t,e),Object.assign({},n.vars,n.style)},[t])}function Nd(e,t){let n=e.style||{},r={};return jd(r,n,e),Object.assign(r,Md(e,t)),r}function Pd(e,t){let n={},r=Nd(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout=`none`,r.touchAction=e.drag===!0?`none`:`pan-${e.drag===`x`?`y`:`x`}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}var Fd=()=>({...Ad(),attrs:{}});function Id(e,t,n,i){let a=(0,r.useMemo)(()=>{let n=Fd();return sl(n,t,ll(i),e.transformTemplate,e.style),{...n.attrs,style:{...n.style}}},[t]);if(e.style){let t={};jd(t,e.style,e),a.style={...t,...a.style}}return a}var Ld=[`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 Rd(e){return typeof e!=`string`||e.includes(`-`)?!1:!!(Ld.indexOf(e)>-1||/[A-Z]/u.test(e))}function zd(e,t,n,{latestValues:i},a,o=!1,s){let c=(s??Rd(e)?Id:Pd)(t,i,a,e),l=Td(t,typeof e==`string`,o),u=e===r.Fragment?{}:{...l,...c,ref:n},{children:d}=t,f=(0,r.useMemo)(()=>G(d)?d.get():d,[d]);return(0,r.createElement)(e,{...u,children:f})}function Bd({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,i){return{latestValues:Vd(n,r,i,e),renderState:t()}}function Vd(e,t,n,r){let i={},a=r(e,{});for(let e in a)i[e]=hu(a[e]);let{initial:o,animate:s}=e,c=lc(e),l=uc(e);t&&l&&!c&&e.inherit!==!1&&(o===void 0&&(o=t.initial),s===void 0&&(s=t.animate));let u=n?n.initial===!1:!1;u||=o===!1;let d=u?s:o;if(d&&typeof d!=`boolean`&&!ac(d)){let t=Array.isArray(d)?d:[d];for(let n=0;n<t.length;n++){let r=Eo(e,t[n]);if(r){let{transitionEnd:e,transition:t,...n}=r;for(let e in n){let t=n[e];if(Array.isArray(t)){let e=u?t.length-1:0;t=t[e]}t!==null&&(i[e]=t)}for(let t in e)i[t]=e[t]}}}return i}var Hd=e=>(t,n)=>{let i=(0,r.useContext)(Ed),a=(0,r.useContext)(Sn),o=()=>Bd(e,t,i,a);return n?o():bn(o)},Ud=Hd({scrapeMotionValuesFromProps:el,createRenderState:Ad}),Wd=Hd({scrapeMotionValuesFromProps:dl,createRenderState:Fd}),Gd=Symbol.for(`motionComponentSymbol`);function Kd(e,t,n){let i=(0,r.useRef)(n);(0,r.useInsertionEffect)(()=>{i.current=n});let a=(0,r.useRef)(null);return(0,r.useCallback)(n=>{n&&e.onMount?.(n);let r=i.current;if(typeof r==`function`)if(n){let e=r(n);typeof e==`function`&&(a.current=e)}else a.current?(a.current(),a.current=null):r(n);else r&&(r.current=n);t&&(n?t.mount(n):t.unmount())},[t])}var qd=(0,r.createContext)({});function Jd(e){return e&&typeof e==`object`&&Object.prototype.hasOwnProperty.call(e,`current`)}function Yd(e,t,n,i,a,o){let{visualElement:s}=(0,r.useContext)(Ed),c=(0,r.useContext)(fd),l=(0,r.useContext)(Sn),u=(0,r.useContext)(ed),d=u.reducedMotion,f=u.skipAnimations,p=(0,r.useRef)(null),m=(0,r.useRef)(!1);i||=c.renderer,!p.current&&i&&(p.current=i(e,{visualState:t,parent:s,props:n,presenceContext:l,blockInitialAnimation:l?l.initial===!1:!1,reducedMotionConfig:d,skipAnimations:f,isSVG:o}),m.current&&p.current&&(p.current.manuallyAnimateOnMount=!0));let h=p.current,g=(0,r.useContext)(qd);h&&!h.projection&&a&&(h.type===`html`||h.type===`svg`)&&Xd(p.current,n,a,g);let _=(0,r.useRef)(!1);(0,r.useInsertionEffect)(()=>{h&&_.current&&h.update(n,l)});let v=n[Vo],y=(0,r.useRef)(!!v&&typeof window<`u`&&!window.MotionHandoffIsComplete?.(v)&&window.MotionHasOptimisedAnimation?.(v));return xn(()=>{m.current=!0,h&&(_.current=!0,window.MotionIsMounted=!0,h.updateFeatures(),h.scheduleRenderMicrotask(),y.current&&h.animationState&&h.animationState.animateChanges())}),(0,r.useEffect)(()=>{h&&(!y.current&&h.animationState&&h.animationState.animateChanges(),y.current&&=(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(v)}),!1),h.enteringChildren=void 0)}),h}function Xd(e,t,n,r){let{layoutId:i,layout:a,drag:o,dragConstraints:s,layoutScroll:c,layoutRoot:l,layoutAnchor:u,layoutCrossfade:d}=t;e.projection=new n(e.latestValues,t[`data-framer-portal-id`]?void 0:Zd(e.parent)),e.projection.setOptions({layoutId:i,layout:a,alwaysMeasureLayout:!!o||s&&Jd(s),visualElement:e,animationType:typeof a==`string`?a:`both`,initialPromotionConfig:r,crossfade:d,layoutScroll:c,layoutRoot:l,layoutAnchor:u})}function Zd(e){if(e)return e.options.allowProjection===!1?Zd(e.parent):e.projection}function Qd(e,{forwardMotionProps:t=!1,type:n}={},a,o){a&&_d(a);let s=n?n===`svg`:Rd(e),c=s?Wd:Ud;function l(n,l){let u,d={...(0,r.useContext)(ed),...n,layoutId:$d(n)},{isStatic:f}=d,p=Od(n),m=c(n,f);if(!f&&typeof window<`u`){ef(d,a);let t=tf(d);u=t.MeasureLayout,p.visualElement=Yd(e,m,d,o,t.ProjectionNode,s)}return(0,i.jsxs)(Ed.Provider,{value:p,children:[u&&p.visualElement?(0,i.jsx)(u,{visualElement:p.visualElement,...d}):null,zd(e,n,Kd(m,p.visualElement,l),m,f,t,s)]})}l.displayName=`motion.${typeof e==`string`?e:`create(${e.displayName??e.name??``})`}`;let u=(0,r.forwardRef)(l);return u[Gd]=e,u}function $d({layoutId:e}){let t=(0,r.useContext)(yn).id;return t&&e!==void 0?t+`-`+e:e}function ef(e,t){let n=(0,r.useContext)(fd).strict;if(process.env.NODE_ENV!==`production`&&t&&n){let t="You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.";e.ignoreStrict?Dn(!1,t,`lazy-strict-mode`):On(!1,t,`lazy-strict-mode`)}}function tf(e){let{drag:t,layout:n}=gd();if(!t&&!n)return{};let r={...t,...n};return{MeasureLayout:t?.isEnabled(e)||n?.isEnabled(e)?r.MeasureLayout:void 0,ProjectionNode:r.ProjectionNode}}function nf(e,t){if(typeof Proxy>`u`)return Qd;let n=new Map,r=(n,r)=>Qd(n,r,e,t);return new Proxy((e,t)=>(process.env.NODE_ENV!==`production`&&Hn(!1,`motion() is deprecated. Use motion.create() instead.`),r(e,t)),{get:(i,a)=>a===`create`?r:(n.has(a)||n.set(a,Qd(a,void 0,e,t)),n.get(a))})}var rf=(e,t)=>t.isSVG??Rd(e)?new fl(t):new nl(t,{allowProjection:e!==r.Fragment}),af=class extends Sc{constructor(e){super(e),e.animationState||=yl(e)}updateAnimationControlsSubscription(){let{animate:e}=this.node.getProps();ac(e)&&(this.unmountControls=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){let{animate:e}=this.node.getProps(),{animate:t}=this.node.prevProps||{};e!==t&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}},of=0,sf={animation:{Feature:af},exit:{Feature:class extends Sc{constructor(){super(...arguments),this.id=of++,this.isExitComplete=!1}update(){if(!this.node.presenceContext)return;let{isPresent:e,onExitComplete:t}=this.node.presenceContext,{isPresent:n}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===n)return;if(e&&n===!1){if(this.isExitComplete){let{initial:e,custom:t}=this.node.getProps();if(typeof e==`string`){let n=Do(this.node,e,t);if(n){let{transition:e,transitionEnd:t,...r}=n;for(let e in r)this.node.getValue(e)?.jump(r[e])}}this.node.animationState.reset(),this.node.animationState.animateChanges()}else this.node.animationState.setActive(`exit`,!1);this.isExitComplete=!1;return}let r=this.node.animationState.setActive(`exit`,!e);t&&!e&&r.then(()=>{this.isExitComplete=!0,t(this.id)})}mount(){let{register:e,onExitComplete:t}=this.node.presenceContext||{};t&&t(this.id),e&&(this.unmount=e(this.id))}unmount(){}}}};function cf(e){return{point:{x:e.pageX,y:e.pageY}}}var lf=e=>t=>Ts(t)&&e(t,cf(t));function uf(e,t,n,r){return du(e,t,lf(n),r)}var df=({current:e})=>e?e.ownerDocument.defaultView:null,ff=(e,t)=>Math.abs(e-t);function pf(e,t){let n=ff(e.x,t.x),r=ff(e.y,t.y);return Math.sqrt(n**2+r**2)}var mf=new Set([`auto`,`scroll`]),hf=class{constructor(e,t,{transformPagePoint:n,contextWindow:r=window,dragSnapToOrigin:i=!1,distanceThreshold:a=3,element:o}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.lastRawMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=e=>{this.handleScroll(e.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;this.lastRawMoveEventInfo&&(this.lastMoveEventInfo=gf(this.lastRawMoveEventInfo,this.transformPagePoint));let e=vf(this.lastMoveEventInfo,this.history),t=this.startEvent!==null,n=pf(e.offset,{x:0,y:0})>=this.distanceThreshold;if(!t&&!n)return;let{point:r}=e,{timestamp:i}=z;this.history.push({...r,timestamp:i});let{onStart:a,onMove:o}=this.handlers;t||(a&&a(this.lastMoveEvent,e),this.startEvent=this.lastMoveEvent),o&&o(this.lastMoveEvent,e)},this.handlePointerMove=(e,t)=>{this.lastMoveEvent=e,this.lastRawMoveEventInfo=t,this.lastMoveEventInfo=gf(t,this.transformPagePoint),R.update(this.updatePoint,!0)},this.handlePointerUp=(e,t)=>{this.end();let{onEnd:n,onSessionEnd:r,resumeAnimation:i}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&i&&i(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;let a=vf(e.type===`pointercancel`?this.lastMoveEventInfo:gf(t,this.transformPagePoint),this.history);this.startEvent&&n&&n(e,a),r&&r(e,a)},!Ts(e))return;this.dragSnapToOrigin=i,this.handlers=t,this.transformPagePoint=n,this.distanceThreshold=a,this.contextWindow=r||window;let s=gf(cf(e),this.transformPagePoint),{point:c}=s,{timestamp:l}=z;this.history=[{...c,timestamp:l}];let{onSessionStart:u}=t;u&&u(e,vf(s,this.history)),this.removeListeners=In(uf(this.contextWindow,`pointermove`,this.handlePointerMove),uf(this.contextWindow,`pointerup`,this.handlePointerUp),uf(this.contextWindow,`pointercancel`,this.handlePointerUp)),o&&this.startScrollTracking(o)}startScrollTracking(e){let t=e.parentElement;for(;t;){let e=getComputedStyle(t);(mf.has(e.overflowX)||mf.has(e.overflowY))&&this.scrollPositions.set(t,{x:t.scrollLeft,y:t.scrollTop}),t=t.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener(`scroll`,this.onElementScroll,{capture:!0}),window.addEventListener(`scroll`,this.onWindowScroll),this.removeScrollListeners=()=>{window.removeEventListener(`scroll`,this.onElementScroll,{capture:!0}),window.removeEventListener(`scroll`,this.onWindowScroll)}}handleScroll(e){let t=this.scrollPositions.get(e);if(!t)return;let n=e===window,r=n?{x:window.scrollX,y:window.scrollY}:{x:e.scrollLeft,y:e.scrollTop},i={x:r.x-t.x,y:r.y-t.y};i.x===0&&i.y===0||(n?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=i.x,this.lastMoveEventInfo.point.y+=i.y):this.history.length>0&&(this.history[0].x-=i.x,this.history[0].y-=i.y),this.scrollPositions.set(e,r),R.update(this.updatePoint,!0))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),gr(this.updatePoint)}};function gf(e,t){return t?{point:t(e.point)}:e}function _f(e,t){return{x:e.x-t.x,y:e.y-t.y}}function vf({point:e},t){return{point:e,delta:_f(e,bf(t)),offset:_f(e,yf(t)),velocity:xf(t,.1)}}function yf(e){return e[0]}function bf(e){return e[e.length-1]}function xf(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null,i=bf(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>L(t)));)n--;if(!r)return{x:0,y:0};r===e[0]&&e.length>2&&i.timestamp-r.timestamp>L(t)*2&&(r=e[1]);let a=zn(i.timestamp-r.timestamp);if(a===0)return{x:0,y:0};let o={x:(i.x-r.x)/a,y:(i.y-r.y)/a};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}function Sf(e,{min:t,max:n},r){return t!==void 0&&e<t?e=r?U(t,e,r.min):Math.max(e,t):n!==void 0&&e>n&&(e=r?U(n,e,r.max):Math.min(e,n)),e}function Cf(e,t,n){return{min:t===void 0?void 0:e.min+t,max:n===void 0?void 0:e.max+n-(e.max-e.min)}}function wf(e,{top:t,left:n,bottom:r,right:i}){return{x:Cf(e.x,n,i),y:Cf(e.y,t,r)}}function Tf(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.min<e.max-e.min&&([n,r]=[r,n]),{min:n,max:r}}function Ef(e,t){return{x:Tf(e.x,t.x),y:Tf(e.y,t.y)}}function Df(e,t){let n=.5,r=q(e),i=q(t);return i>r?n=Ln(t.min,t.max-r,e.min):r>i&&(n=Ln(e.min,e.max-i,t.min)),Tn(0,1,n)}function Of(e,t){let n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}var kf=.35;function Af(e=kf){return e===!1?e=0:e===!0&&(e=kf),{x:jf(e,`left`,`right`),y:jf(e,`top`,`bottom`)}}function jf(e,t,n){return{min:Mf(e,t),max:Mf(e,n)}}function Mf(e,t){return typeof e==`number`?e:e[t]||0}var Nf=new WeakMap,Pf=class{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=K(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=e}start(e,{snapToCursor:t=!1,distanceThreshold:n}={}){let{presenceContext:r}=this.visualElement;if(r&&r.isPresent===!1)return;let i=e=>{t&&this.snapToCursor(cf(e).point),this.stopAnimation()},a=(e,t)=>{let{drag:n,dragPropagation:r,onDragStart:i}=this.getProps();if(n&&!r&&(this.openDragLock&&this.openDragLock(),this.openDragLock=bs(n),!this.openDragLock))return;this.latestPointerEvent=e,this.latestPanInfo=t,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),$l(e=>{let t=this.getAxisMotionValue(e).get()||0;if(Ur.test(t)){let{projection:n}=this.visualElement;if(n&&n.layout){let r=n.layout.layoutBox[e];r&&(t=q(r)*(parseFloat(t)/100))}}this.originPoint[e]=t}),i&&R.update(()=>i(e,t),!1,!0),zo(this.visualElement,`transform`);let{animationState:a}=this.visualElement;a&&a.setActive(`whileDrag`,!0)},o=(e,t)=>{this.latestPointerEvent=e,this.latestPanInfo=t;let{dragPropagation:n,dragDirectionLock:r,onDirectionLock:i,onDrag:a}=this.getProps();if(!n&&!this.openDragLock)return;let{offset:o}=t;if(r&&this.currentDirection===null){this.currentDirection=Rf(o),this.currentDirection!==null&&i&&i(this.currentDirection);return}this.updateAxis(`x`,t.point,o),this.updateAxis(`y`,t.point,o),this.visualElement.render(),a&&R.update(()=>a(e,t),!1,!0)},s=(e,t)=>{this.latestPointerEvent=e,this.latestPanInfo=t,this.stop(e,t),this.latestPointerEvent=null,this.latestPanInfo=null},c=()=>{let{dragSnapToOrigin:e}=this.getProps();(e||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:l}=this.getProps();this.panSession=new hf(e,{onSessionStart:i,onStart:a,onMove:o,onSessionEnd:s,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:l,distanceThreshold:n,contextWindow:df(this.visualElement),element:this.visualElement.current})}stop(e,t){let n=e||this.latestPointerEvent,r=t||this.latestPanInfo,i=this.isDragging;if(this.cancel(),!i||!r||!n)return;let{velocity:a}=r;this.startAnimation(a);let{onDragEnd:o}=this.getProps();o&&R.postRender(()=>o(n,r))}cancel(){this.isDragging=!1;let{projection:e,animationState:t}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.endPanSession();let{dragPropagation:n}=this.getProps();!n&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),t&&t.setActive(`whileDrag`,!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(e,t,n){let{drag:r}=this.getProps();if(!n||!Lf(e,r,this.currentDirection))return;let i=this.getAxisMotionValue(e),a=this.originPoint[e]+n[e];this.constraints&&this.constraints[e]&&(a=Sf(a,this.constraints[e],this.elastic[e])),i.set(a)}resolveConstraints(){let{dragConstraints:e,dragElastic:t}=this.getProps(),n=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,r=this.constraints;e&&Jd(e)?this.constraints||=this.resolveRefConstraints():e&&n?this.constraints=wf(n.layoutBox,e):this.constraints=!1,this.elastic=Af(t),r!==this.constraints&&!Jd(e)&&n&&this.constraints&&!this.hasMutatedConstraints&&$l(e=>{this.constraints!==!1&&this.getAxisMotionValue(e)&&(this.constraints[e]=Of(n.layoutBox[e],this.constraints[e]))})}resolveRefConstraints(){let{dragConstraints:e,onMeasureDragConstraints:t}=this.getProps();if(!e||!Jd(e))return!1;let n=e.current;On(n!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.",`drag-constraints-ref`);let{projection:r}=this.visualElement;if(!r||!r.layout)return!1;let i=Uc(n,r.root,this.visualElement.getTransformPagePoint()),a=Ef(r.layout.layoutBox,i);if(t){let e=t(wc(a));this.hasMutatedConstraints=!!e,e&&(a=Cc(e))}return a}startAnimation(e){let{drag:t,dragMomentum:n,dragElastic:r,dragTransition:i,dragSnapToOrigin:a,onDragTransitionEnd:o}=this.getProps(),s=this.constraints||{},c=$l(o=>{if(!Lf(o,t,this.currentDirection))return;let c=s&&s[o]||{};(a===!0||a===o)&&(c={min:0,max:0});let l=r?200:1e6,u=r?40:1e7,d={type:`inertia`,velocity:n?e[o]:0,bounceStiffness:l,bounceDamping:u,timeConstant:750,restDelta:1,restSpeed:10,...i,...c};return this.startAxisValueAnimation(o,d)});return Promise.all(c).then(o)}startAxisValueAnimation(e,t){let n=this.getAxisMotionValue(e);return zo(this.visualElement,e),n.start(wo(e,n,0,t,this.visualElement,!1))}stopAnimation(){$l(e=>this.getAxisMotionValue(e).stop())}getAxisMotionValue(e){let t=`_drag${e.toUpperCase()}`,n=this.visualElement.getProps();return n[t]||this.visualElement.getValue(e,(n.initial?n.initial[e]:void 0)||0)}snapToCursor(e){$l(t=>{let{drag:n}=this.getProps();if(!Lf(t,n,this.currentDirection))return;let{projection:r}=this.visualElement,i=this.getAxisMotionValue(t);if(r&&r.layout){let{min:n,max:a}=r.layout.layoutBox[t],o=i.get()||0;i.set(e[t]-U(n,a,.5)+o)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;let{drag:e,dragConstraints:t}=this.getProps(),{projection:n}=this.visualElement;if(!Jd(t)||!n||!this.constraints)return;this.stopAnimation();let r={x:0,y:0};$l(e=>{let t=this.getAxisMotionValue(e);if(t&&this.constraints!==!1){let n=t.get();r[e]=Df({min:n,max:n},this.constraints[e])}});let{transformTemplate:i}=this.visualElement.getProps();this.visualElement.current.style.transform=i?i({},``):`none`,n.root&&n.root.updateScroll(),n.updateLayout(),this.constraints=!1,this.resolveConstraints(),$l(t=>{if(!Lf(t,e,null))return;let n=this.getAxisMotionValue(t),{min:i,max:a}=this.constraints[t];n.set(U(i,a,r[t]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;Nf.set(this.visualElement,this);let e=this.visualElement.current,t=uf(e,`pointerdown`,t=>{let{drag:n,dragListener:r=!0}=this.getProps(),i=t.target,a=i!==e&&ks(i);n&&r&&!a&&this.start(t)}),n,r=()=>{let{dragConstraints:t}=this.getProps();Jd(t)&&t.current&&(this.constraints=this.resolveRefConstraints(),n||=If(e,t.current,()=>this.scalePositionWithinConstraints()))},{projection:i}=this.visualElement,a=i.addEventListener(`measure`,r);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),R.read(r);let o=du(window,`resize`,()=>this.scalePositionWithinConstraints()),s=i.addEventListener(`didUpdate`,(({delta:e,hasLayoutChanged:t})=>{this.isDragging&&t&&($l(t=>{let n=this.getAxisMotionValue(t);n&&(this.originPoint[t]+=e[t].translate,n.set(n.get()+e[t].translate))}),this.visualElement.render())}));return()=>{o(),t(),a(),s&&s(),n&&n()}}getProps(){let e=this.visualElement.getProps(),{drag:t=!1,dragDirectionLock:n=!1,dragPropagation:r=!1,dragConstraints:i=!1,dragElastic:a=kf,dragMomentum:o=!0}=e;return{...e,drag:t,dragDirectionLock:n,dragPropagation:r,dragConstraints:i,dragElastic:a,dragMomentum:o}}};function Ff(e){let t=!0;return()=>{if(t){t=!1;return}e()}}function If(e,t,n){let r=Zs(e,Ff(n)),i=Zs(t,Ff(n));return()=>{r(),i()}}function Lf(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function Rf(e,t=10){let n=null;return Math.abs(e.y)>t?n=`y`:Math.abs(e.x)>t&&(n=`x`),n}var zf=class extends Sc{constructor(e){super(e),this.removeGroupControls=Pn,this.removeListeners=Pn,this.controls=new Pf(e)}mount(){let{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Pn}update(){let{dragControls:e}=this.node.getProps(),{dragControls:t}=this.node.prevProps||{};e!==t&&(this.removeGroupControls(),e&&(this.removeGroupControls=e.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}},Bf=e=>(t,n)=>{e&&R.update(()=>e(t,n),!1,!0)},Vf=class extends Sc{constructor(){super(...arguments),this.removePointerDownListener=Pn}onPointerDown(e){this.session=new hf(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:df(this.node)})}createPanHandlers(){let{onPanSessionStart:e,onPanStart:t,onPan:n,onPanEnd:r}=this.node.getProps();return{onSessionStart:Bf(e),onStart:Bf(t),onMove:Bf(n),onEnd:(e,t)=>{delete this.session,r&&R.postRender(()=>r(e,t))}}}mount(){this.removePointerDownListener=uf(this.node.current,`pointerdown`,e=>this.onPointerDown(e))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}},Hf=!1,Uf=class extends r.Component{componentDidMount(){let{visualElement:e,layoutGroup:t,switchLayoutGroup:n,layoutId:r}=this.props,{projection:i}=e;i&&(t.group&&t.group.add(i),n&&n.register&&r&&n.register(i),Hf&&i.root.didUpdate(),i.addEventListener(`animationComplete`,()=>{this.safeToRemove()}),i.setOptions({...i.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),_u.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){let{layoutDependency:t,visualElement:n,drag:r,isPresent:i}=this.props,{projection:a}=n;return a?(a.isPresent=i,e.layoutDependency!==t&&a.setOptions({...a.options,layoutDependency:t}),Hf=!0,r||e.layoutDependency!==t||t===void 0||e.isPresent!==i?a.willUpdate():this.safeToRemove(),e.isPresent!==i&&(i?a.promote():a.relegate()||R.postRender(()=>{let e=a.getStack();(!e||!e.members.length)&&this.safeToRemove()})),null):null}componentDidUpdate(){let{visualElement:e,layoutAnchor:t}=this.props,{projection:n}=e;n&&(n.options.layoutAnchor=t,n.root.didUpdate(),gs.postRender(()=>{!n.currentAnimation&&n.isLead()&&this.safeToRemove()}))}componentWillUnmount(){let{visualElement:e,layoutGroup:t,switchLayoutGroup:n}=this.props,{projection:r}=e;Hf=!0,r&&(r.scheduleCheckAfterUnmount(),t&&t.group&&t.group.remove(r),n&&n.deregister&&n.deregister(r))}safeToRemove(){let{safeToRemove:e}=this.props;e&&e()}render(){return null}};function Wf(e){let[t,n]=cd(),a=(0,r.useContext)(yn);return(0,i.jsx)(Uf,{...e,layoutGroup:a,switchLayoutGroup:(0,r.useContext)(qd),isPresent:t,safeToRemove:n})}var Gf={pan:{Feature:Vf},drag:{Feature:zf,ProjectionNode:$u,MeasureLayout:Wf}};function Kf(e,t,n){let{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive(`whileHover`,n===`Start`);let i=r[`onHover`+n];i&&R.postRender(()=>i(t,cf(t)))}var qf=class extends Sc{mount(){let{current:e}=this.node;e&&(this.unmount=Cs(e,(e,t)=>(Kf(this.node,t,`Start`),e=>Kf(this.node,e,`End`))))}unmount(){}},Jf=class extends Sc{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=In(du(this.node.current,`focus`,()=>this.onFocus()),du(this.node.current,`blur`,()=>this.onBlur()))}unmount(){}};function Yf(e,t,n){let{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive(`whileTap`,n===`Start`);let i=r[`onTap`+(n===`End`?``:n)];i&&R.postRender(()=>i(t,cf(t)))}var Xf=class extends Sc{mount(){let{current:e}=this.node;if(!e)return;let{globalTapTarget:t,propagate:n}=this.node.props;this.unmount=Is(e,(e,t)=>(Yf(this.node,t,`Start`),(e,{success:t})=>Yf(this.node,e,t?`End`:`Cancel`)),{useGlobalTarget:t,stopPropagation:n?.tap===!1})}unmount(){}},Zf=new WeakMap,Qf=new WeakMap,$f=e=>{let t=Zf.get(e.target);t&&t(e)},ep=e=>{e.forEach($f)};function tp({root:e,...t}){let n=e||document;Qf.has(n)||Qf.set(n,{});let r=Qf.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(ep,{root:e,...t})),r[i]}function np(e,t,n){let r=tp(t);return Zf.set(e,n),r.observe(e),()=>{Zf.delete(e),r.unobserve(e)}}var rp={some:0,all:1},ip=class extends Sc{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.stopObserver?.();let{viewport:e={}}=this.node.getProps(),{root:t,margin:n,amount:r=`some`,once:i}=e,a={root:t?t.current:void 0,rootMargin:n,threshold:typeof r==`number`?r:rp[r]};this.stopObserver=np(this.node.current,a,e=>{let{isIntersecting:t}=e;if(this.isInView===t||(this.isInView=t,i&&!t&&this.hasEnteredView))return;t&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive(`whileInView`,t);let{onViewportEnter:n,onViewportLeave:r}=this.node.getProps(),a=t?n:r;a&&a(e)})}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>`u`)return;let{props:e,prevProps:t}=this.node;[`amount`,`margin`,`root`].some(ap(e,t))&&this.startObserver()}unmount(){this.stopObserver?.(),this.hasEnteredView=!1,this.isInView=!1}};function ap({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}var op={inView:{Feature:ip},tap:{Feature:Xf},focus:{Feature:Jf},hover:{Feature:qf}},sp={layout:{ProjectionNode:$u,MeasureLayout:Wf}},cp=nf({...sf,...op,...Gf,...sp},rf),lp=e=>e?.formType===`private`||e?.submitPage===`requests`?`user_requests`:`user_submissions`,up={contact:f,support:m};function dp(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=dp(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function fp(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=dp(e))&&(r&&(r+=` `),r+=t);return r}var pp=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},mp=(e,t)=>({classGroupId:e,validator:t}),hp=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),gp=`-`,_p=[],vp=`arbitrary..`,yp=e=>{let t=Sp(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return xp(e);let n=e.split(gp);return bp(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?pp(i,t):t:i||_p}return n[e]||_p}}},bp=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=bp(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(gp):e.slice(t).join(gp),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},xp=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?vp+r:void 0})(),Sp=e=>{let{theme:t,classGroups:n}=e;return Cp(n,t)},Cp=(e,t)=>{let n=hp();for(let r in e){let i=e[r];wp(i,n,r,t)}return n},wp=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];Tp(i,t,n,r)}},Tp=(e,t,n,r)=>{if(typeof e==`string`){Ep(e,t,n);return}if(typeof e==`function`){Dp(e,t,n,r);return}Op(e,t,n,r)},Ep=(e,t,n)=>{let r=e===``?t:kp(t,e);r.classGroupId=n},Dp=(e,t,n,r)=>{if(Ap(e)){wp(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(mp(n,e))},Op=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];wp(o,kp(t,a),n,r)}},kp=(e,t)=>{let n=e,r=t.split(gp),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=hp(),n.nextPart.set(t,i)),n=i}return n},Ap=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,jp=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},Mp=`!`,Np=`:`,Pp=[],Fp=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),Ip=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===Np){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(Mp)?(c=s.slice(0,-1),l=!0):s.startsWith(Mp)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return Fp(t,l,c,u)};if(t){let e=t+Np,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):Fp(Pp,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},Lp=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},Rp=e=>({cache:jp(e.cacheSize),parseClassName:Ip(e),sortModifiers:Lp(e),...yp(e)}),zp=/\s+/,Bp=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a}=t,o=[],s=e.trim().split(zp),c=``;for(let e=s.length-1;e>=0;--e){let t=s[e],{isExternal:l,modifiers:u,hasImportantModifier:d,baseClassName:f,maybePostfixModifierPosition:p}=n(t);if(l){c=t+(c.length>0?` `+c:c);continue}let m=!!p,h=r(m?f.substring(0,p):f);if(!h){if(!m){c=t+(c.length>0?` `+c:c);continue}if(h=r(f),!h){c=t+(c.length>0?` `+c:c);continue}m=!1}let g=u.length===0?``:u.length===1?u[0]:a(u).join(`:`),_=d?g+Mp:g,v=_+h;if(o.indexOf(v)>-1)continue;o.push(v);let y=i(h,m);for(let e=0;e<y.length;++e){let t=y[e];o.push(_+t)}c=t+(c.length>0?` `+c:c)}return c},Vp=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=Hp(n))&&(i&&(i+=` `),i+=r);return i},Hp=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=Hp(e[r]))&&(n&&(n+=` `),n+=t);return n},Up=(e,...t)=>{let n,r,i,a,o=o=>(n=Rp(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=Bp(e,n);return i(e,a),a};return a=o,(...e)=>a(Vp(...e))},Wp=[],J=e=>{let t=t=>t[e]||Wp;return t.isThemeGetter=!0,t},Gp=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Kp=/^\((?:(\w[\w-]*):)?(.+)\)$/i,qp=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Jp=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Yp=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Xp=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Zp=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Qp=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,$p=e=>qp.test(e),Y=e=>!!e&&!Number.isNaN(Number(e)),em=e=>!!e&&Number.isInteger(Number(e)),tm=e=>e.endsWith(`%`)&&Y(e.slice(0,-1)),nm=e=>Jp.test(e),rm=()=>!0,im=e=>Yp.test(e)&&!Xp.test(e),am=()=>!1,om=e=>Zp.test(e),sm=e=>Qp.test(e),cm=e=>!X(e)&&!Z(e),lm=e=>wm(e,Om,am),X=e=>Gp.test(e),um=e=>wm(e,km,im),dm=e=>wm(e,Am,Y),fm=e=>wm(e,Mm,rm),pm=e=>wm(e,jm,am),mm=e=>wm(e,Em,am),hm=e=>wm(e,Dm,sm),gm=e=>wm(e,Nm,om),Z=e=>Kp.test(e),_m=e=>Tm(e,km),vm=e=>Tm(e,jm),ym=e=>Tm(e,Em),bm=e=>Tm(e,Om),xm=e=>Tm(e,Dm),Sm=e=>Tm(e,Nm,!0),Cm=e=>Tm(e,Mm,!0),wm=(e,t,n)=>{let r=Gp.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Tm=(e,t,n=!1)=>{let r=Kp.exec(e);return r?r[1]?t(r[1]):n:!1},Em=e=>e===`position`||e===`percentage`,Dm=e=>e===`image`||e===`url`,Om=e=>e===`length`||e===`size`||e===`bg-size`,km=e=>e===`length`,Am=e=>e===`number`,jm=e=>e===`family-name`,Mm=e=>e===`number`||e===`weight`,Nm=e=>e===`shadow`,Pm=Up(()=>{let e=J(`color`),t=J(`font`),n=J(`text`),r=J(`font-weight`),i=J(`tracking`),a=J(`leading`),o=J(`breakpoint`),s=J(`container`),c=J(`spacing`),l=J(`radius`),u=J(`shadow`),d=J(`inset-shadow`),f=J(`text-shadow`),p=J(`drop-shadow`),m=J(`blur`),h=J(`perspective`),g=J(`aspect`),_=J(`ease`),v=J(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),Z,X],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[Z,X,c],T=()=>[$p,`full`,`auto`,...w()],E=()=>[em,`none`,`subgrid`,Z,X],D=()=>[`auto`,{span:[`full`,em,Z,X]},em,Z,X],O=()=>[em,`auto`,Z,X],ee=()=>[`auto`,`min`,`max`,`fr`,Z,X],te=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],k=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],A=()=>[`auto`,...w()],j=()=>[$p,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],M=()=>[$p,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],ne=()=>[$p,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],N=()=>[e,Z,X],re=()=>[...b(),ym,mm,{position:[Z,X]}],ie=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ae=()=>[`auto`,`cover`,`contain`,bm,lm,{size:[Z,X]}],oe=()=>[tm,_m,um],P=()=>[``,`none`,`full`,l,Z,X],F=()=>[``,Y,_m,um],se=()=>[`solid`,`dashed`,`dotted`,`double`],ce=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],I=()=>[Y,tm,ym,mm],le=()=>[``,`none`,m,Z,X],ue=()=>[`none`,Y,Z,X],de=()=>[`none`,Y,Z,X],fe=()=>[Y,Z,X],pe=()=>[$p,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[nm],breakpoint:[nm],color:[rm],container:[nm],"drop-shadow":[nm],ease:[`in`,`out`,`in-out`],font:[cm],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[nm],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[nm],shadow:[nm],spacing:[`px`,Y],text:[nm],"text-shadow":[nm],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,$p,X,Z,g]}],container:[`container`],columns:[{columns:[Y,X,Z,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[em,`auto`,Z,X]}],basis:[{basis:[$p,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[Y,$p,`auto`,`initial`,`none`,X]}],grow:[{grow:[``,Y,Z,X]}],shrink:[{shrink:[``,Y,Z,X]}],order:[{order:[em,`first`,`last`,`none`,Z,X]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:D()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ee()}],"auto-rows":[{"auto-rows":ee()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...te(),`normal`]}],"justify-items":[{"justify-items":[...k(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...k()]}],"align-content":[{content:[`normal`,...te()]}],"align-items":[{items:[...k(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...k(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":te()}],"place-items":[{"place-items":[...k(),`baseline`]}],"place-self":[{"place-self":[`auto`,...k()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:A()}],mx:[{mx:A()}],my:[{my:A()}],ms:[{ms:A()}],me:[{me:A()}],mbs:[{mbs:A()}],mbe:[{mbe:A()}],mt:[{mt:A()}],mr:[{mr:A()}],mb:[{mb:A()}],ml:[{ml:A()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:j()}],"inline-size":[{inline:[`auto`,...M()]}],"min-inline-size":[{"min-inline":[`auto`,...M()]}],"max-inline-size":[{"max-inline":[`none`,...M()]}],"block-size":[{block:[`auto`,...ne()]}],"min-block-size":[{"min-block":[`auto`,...ne()]}],"max-block-size":[{"max-block":[`none`,...ne()]}],w:[{w:[s,`screen`,...j()]}],"min-w":[{"min-w":[s,`screen`,`none`,...j()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...j()]}],h:[{h:[`screen`,`lh`,...j()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...j()]}],"max-h":[{"max-h":[`screen`,`lh`,...j()]}],"font-size":[{text:[`base`,n,_m,um]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,Cm,fm]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,tm,X]}],"font-family":[{font:[vm,pm,t]}],"font-features":[{"font-features":[X]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,Z,X]}],"line-clamp":[{"line-clamp":[Y,`none`,Z,dm]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,Z,X]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,Z,X]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:N()}],"text-color":[{text:N()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...se(),`wavy`]}],"text-decoration-thickness":[{decoration:[Y,`from-font`,`auto`,Z,um]}],"text-decoration-color":[{decoration:N()}],"underline-offset":[{"underline-offset":[Y,`auto`,Z,X]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,Z,X]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,Z,X]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:re()}],"bg-repeat":[{bg:ie()}],"bg-size":[{bg:ae()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},em,Z,X],radial:[``,Z,X],conic:[em,Z,X]},xm,hm]}],"bg-color":[{bg:N()}],"gradient-from-pos":[{from:oe()}],"gradient-via-pos":[{via:oe()}],"gradient-to-pos":[{to:oe()}],"gradient-from":[{from:N()}],"gradient-via":[{via:N()}],"gradient-to":[{to:N()}],rounded:[{rounded:P()}],"rounded-s":[{"rounded-s":P()}],"rounded-e":[{"rounded-e":P()}],"rounded-t":[{"rounded-t":P()}],"rounded-r":[{"rounded-r":P()}],"rounded-b":[{"rounded-b":P()}],"rounded-l":[{"rounded-l":P()}],"rounded-ss":[{"rounded-ss":P()}],"rounded-se":[{"rounded-se":P()}],"rounded-ee":[{"rounded-ee":P()}],"rounded-es":[{"rounded-es":P()}],"rounded-tl":[{"rounded-tl":P()}],"rounded-tr":[{"rounded-tr":P()}],"rounded-br":[{"rounded-br":P()}],"rounded-bl":[{"rounded-bl":P()}],"border-w":[{border:F()}],"border-w-x":[{"border-x":F()}],"border-w-y":[{"border-y":F()}],"border-w-s":[{"border-s":F()}],"border-w-e":[{"border-e":F()}],"border-w-bs":[{"border-bs":F()}],"border-w-be":[{"border-be":F()}],"border-w-t":[{"border-t":F()}],"border-w-r":[{"border-r":F()}],"border-w-b":[{"border-b":F()}],"border-w-l":[{"border-l":F()}],"divide-x":[{"divide-x":F()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":F()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...se(),`hidden`,`none`]}],"divide-style":[{divide:[...se(),`hidden`,`none`]}],"border-color":[{border:N()}],"border-color-x":[{"border-x":N()}],"border-color-y":[{"border-y":N()}],"border-color-s":[{"border-s":N()}],"border-color-e":[{"border-e":N()}],"border-color-bs":[{"border-bs":N()}],"border-color-be":[{"border-be":N()}],"border-color-t":[{"border-t":N()}],"border-color-r":[{"border-r":N()}],"border-color-b":[{"border-b":N()}],"border-color-l":[{"border-l":N()}],"divide-color":[{divide:N()}],"outline-style":[{outline:[...se(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[Y,Z,X]}],"outline-w":[{outline:[``,Y,_m,um]}],"outline-color":[{outline:N()}],shadow:[{shadow:[``,`none`,u,Sm,gm]}],"shadow-color":[{shadow:N()}],"inset-shadow":[{"inset-shadow":[`none`,d,Sm,gm]}],"inset-shadow-color":[{"inset-shadow":N()}],"ring-w":[{ring:F()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:N()}],"ring-offset-w":[{"ring-offset":[Y,um]}],"ring-offset-color":[{"ring-offset":N()}],"inset-ring-w":[{"inset-ring":F()}],"inset-ring-color":[{"inset-ring":N()}],"text-shadow":[{"text-shadow":[`none`,f,Sm,gm]}],"text-shadow-color":[{"text-shadow":N()}],opacity:[{opacity:[Y,Z,X]}],"mix-blend":[{"mix-blend":[...ce(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":ce()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[Y]}],"mask-image-linear-from-pos":[{"mask-linear-from":I()}],"mask-image-linear-to-pos":[{"mask-linear-to":I()}],"mask-image-linear-from-color":[{"mask-linear-from":N()}],"mask-image-linear-to-color":[{"mask-linear-to":N()}],"mask-image-t-from-pos":[{"mask-t-from":I()}],"mask-image-t-to-pos":[{"mask-t-to":I()}],"mask-image-t-from-color":[{"mask-t-from":N()}],"mask-image-t-to-color":[{"mask-t-to":N()}],"mask-image-r-from-pos":[{"mask-r-from":I()}],"mask-image-r-to-pos":[{"mask-r-to":I()}],"mask-image-r-from-color":[{"mask-r-from":N()}],"mask-image-r-to-color":[{"mask-r-to":N()}],"mask-image-b-from-pos":[{"mask-b-from":I()}],"mask-image-b-to-pos":[{"mask-b-to":I()}],"mask-image-b-from-color":[{"mask-b-from":N()}],"mask-image-b-to-color":[{"mask-b-to":N()}],"mask-image-l-from-pos":[{"mask-l-from":I()}],"mask-image-l-to-pos":[{"mask-l-to":I()}],"mask-image-l-from-color":[{"mask-l-from":N()}],"mask-image-l-to-color":[{"mask-l-to":N()}],"mask-image-x-from-pos":[{"mask-x-from":I()}],"mask-image-x-to-pos":[{"mask-x-to":I()}],"mask-image-x-from-color":[{"mask-x-from":N()}],"mask-image-x-to-color":[{"mask-x-to":N()}],"mask-image-y-from-pos":[{"mask-y-from":I()}],"mask-image-y-to-pos":[{"mask-y-to":I()}],"mask-image-y-from-color":[{"mask-y-from":N()}],"mask-image-y-to-color":[{"mask-y-to":N()}],"mask-image-radial":[{"mask-radial":[Z,X]}],"mask-image-radial-from-pos":[{"mask-radial-from":I()}],"mask-image-radial-to-pos":[{"mask-radial-to":I()}],"mask-image-radial-from-color":[{"mask-radial-from":N()}],"mask-image-radial-to-color":[{"mask-radial-to":N()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[Y]}],"mask-image-conic-from-pos":[{"mask-conic-from":I()}],"mask-image-conic-to-pos":[{"mask-conic-to":I()}],"mask-image-conic-from-color":[{"mask-conic-from":N()}],"mask-image-conic-to-color":[{"mask-conic-to":N()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:re()}],"mask-repeat":[{mask:ie()}],"mask-size":[{mask:ae()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,Z,X]}],filter:[{filter:[``,`none`,Z,X]}],blur:[{blur:le()}],brightness:[{brightness:[Y,Z,X]}],contrast:[{contrast:[Y,Z,X]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,Sm,gm]}],"drop-shadow-color":[{"drop-shadow":N()}],grayscale:[{grayscale:[``,Y,Z,X]}],"hue-rotate":[{"hue-rotate":[Y,Z,X]}],invert:[{invert:[``,Y,Z,X]}],saturate:[{saturate:[Y,Z,X]}],sepia:[{sepia:[``,Y,Z,X]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,Z,X]}],"backdrop-blur":[{"backdrop-blur":le()}],"backdrop-brightness":[{"backdrop-brightness":[Y,Z,X]}],"backdrop-contrast":[{"backdrop-contrast":[Y,Z,X]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,Y,Z,X]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Y,Z,X]}],"backdrop-invert":[{"backdrop-invert":[``,Y,Z,X]}],"backdrop-opacity":[{"backdrop-opacity":[Y,Z,X]}],"backdrop-saturate":[{"backdrop-saturate":[Y,Z,X]}],"backdrop-sepia":[{"backdrop-sepia":[``,Y,Z,X]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,Z,X]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[Y,`initial`,Z,X]}],ease:[{ease:[`linear`,`initial`,_,Z,X]}],delay:[{delay:[Y,Z,X]}],animate:[{animate:[`none`,v,Z,X]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,Z,X]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ue()}],"rotate-x":[{"rotate-x":ue()}],"rotate-y":[{"rotate-y":ue()}],"rotate-z":[{"rotate-z":ue()}],scale:[{scale:de()}],"scale-x":[{"scale-x":de()}],"scale-y":[{"scale-y":de()}],"scale-z":[{"scale-z":de()}],"scale-3d":[`scale-3d`],skew:[{skew:fe()}],"skew-x":[{"skew-x":fe()}],"skew-y":[{"skew-y":fe()}],transform:[{transform:[Z,X,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:pe()}],"translate-x":[{"translate-x":pe()}],"translate-y":[{"translate-y":pe()}],"translate-z":[{"translate-z":pe()}],"translate-none":[`translate-none`],accent:[{accent:N()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:N()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,Z,X]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,Z,X]}],fill:[{fill:[`none`,...N()]}],"stroke-w":[{stroke:[Y,_m,um,dm]}],stroke:[{stroke:[`none`,...N()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Fm(...e){return Pm(fp(e))}var Im=r.default.forwardRef(({className:e,label:t,error:n,currencySymbol:r,type:a,...o},s)=>{let c=a===`currency`;return(0,i.jsxs)(`div`,{className:`flex flex-col w-full relative`,children:[t&&(0,i.jsx)(`label`,{className:`text-[13px] font-medium text-foreground/50 select-none mb-1.5 ml-1`,children:t}),(0,i.jsxs)(`div`,{className:`relative flex items-center lift-focus`,children:[c&&r&&(0,i.jsx)(`span`,{className:`absolute left-4 font-bold text-foreground/70 z-10 pointer-events-none text-[15px]`,children:r}),(0,i.jsx)(`input`,{ref:s,type:c?`number`:a,className:Fm(`block h-12 w-full text-[15px] text-foreground py-2`,c&&r?`pl-8 pr-4`:`px-4`,`transition-all duration-300 placeholder:text-foreground/40`,`focus:outline-none focus:border-accent glow-focus`,`disabled:cursor-not-allowed disabled:opacity-50 glass-panel`,n&&`border-red-500/50 focus:border-red-500/50`,e),style:{borderRadius:`var(--input-radius, 0.75rem)`},...o})]}),n&&(0,i.jsx)(cp.p,{initial:{opacity:0,y:-5},animate:{opacity:1,y:0},className:`text-xs text-red-500 font-medium`,children:n})]})});Im.displayName=`Input`;var Lm=r.default.forwardRef(({className:e,variant:t=`primary`,isLoading:n,children:r,...a},o)=>(0,i.jsxs)(cp.button,{ref:o,whileHover:{scale:1.02,y:-2},whileTap:{scale:.98},className:Fm(`relative inline-flex items-center justify-center px-5 py-2 text-sm font-medium transition-all duration-300 overflow-hidden group`,{primary:`btn-primary !border-none`,secondary:`btn-secondary !border-none`,ghost:`bg-transparent hover:bg-black/5 dark:hover:bg-white/5 text-foreground/60 hover:text-foreground transition-all duration-300 !border-none`}[t],e),style:{borderRadius:`var(--btn-radius, 0.75rem)`},disabled:n||a.disabled,...a,children:[n?(0,i.jsx)(`span`,{className:`absolute inset-0 flex items-center justify-center`,children:(0,i.jsxs)(`svg`,{className:`w-5 h-5 animate-spin text-current`,xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,children:[(0,i.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,i.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]})}):null,(0,i.jsx)(`span`,{className:Fm(`inline-flex items-center justify-center gap-2`,n&&`opacity-0`),children:r})]}));Lm.displayName=`Button`;var Rm=()=>typeof document>`u`?null:document.querySelector(`.firebase-os`)||document.body;function zm({value:e=``,options:t,onChange:a,label:o,disabled:s,variant:c=`default`,multiple:l=!1,values:d,placeholder:f,footer:p,compact:m=!1,dense:h=!1,direction:g=`up`,portal:_=!1,ariaLabel:v,className:y=``}){let[b,x]=(0,r.useState)(!1),[S,C]=(0,r.useState)(g===`down`?`down`:`up`),[w,T]=(0,r.useState)(null),E=(0,r.useRef)(null),D=(0,r.useRef)(null),O=(0,r.useRef)(null);(0,r.useEffect)(()=>{function e(e){let t=e.target;E.current?.contains(t)||O.current?.contains(t)||x(!1)}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[]),(0,r.useLayoutEffect)(()=>{if(!b)return;let e=()=>{let e=D.current;if(!e)return;let t=e.getBoundingClientRect();if(T({top:t.top,left:t.left,width:t.width,height:t.height}),g===`auto`){let e=(typeof window<`u`?window.innerHeight:0)-t.bottom;C(e<260&&t.top>e?`up`:`down`)}else C(g)};return e(),window.addEventListener(`scroll`,e,!0),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`resize`,e)}},[b,g]);let ee=l&&d||[],te=t=>l?ee.includes(t):e===t,k=t.find(t=>t.value===e)||(f==null?t[0]:void 0),A=t.filter(e=>ee.includes(e.value)).map(e=>e.label),j=l?A.length?A.map((e,t)=>(0,i.jsxs)(r.default.Fragment,{children:[t>0?`, `:``,e]},t)):f:k?.label??f,M=!s&&(t.length>1||l),ne=(0,r.useRef)(null);(0,r.useEffect)(()=>{if(!b)return;let e=ne.current,t=e?.querySelector(`[aria-selected="true"]`);!e||!t||(e.scrollTop=t.offsetTop-e.clientHeight/2+t.clientHeight/2)},[b]);let N=(0,i.jsx)(cp.div,{ref:O,role:`listbox`,"aria-label":v||o,"aria-multiselectable":l||void 0,initial:{opacity:0,y:S===`up`?5:-5,scale:.98},animate:{opacity:1,y:0,scale:1},exit:{opacity:0,y:S===`up`?5:-5,scale:.98},transition:{duration:.15},className:`z-[99999] glass-popover overflow-hidden ${_?`fixed`:`absolute left-0 w-full ${S===`up`?`bottom-[calc(100%+8px)]`:`top-[calc(100%+8px)]`}`}`,style:{borderRadius:`var(--input-radius, 0.75rem)`,..._&&w?(()=>{let e=Math.max(w.width,m?180:0),t=(typeof window<`u`?window.innerWidth:w.left+e)-e-8;return{left:Math.max(8,Math.min(w.left,t)),width:e,...S===`up`?{bottom:(typeof window<`u`?window.innerHeight:0)-w.top+8}:{top:w.top+w.height+8}}})():{}},children:(0,i.jsxs)(`div`,{ref:ne,className:`max-h-60 overflow-y-auto no-scrollbar p-1`,children:[t.map(e=>(0,i.jsxs)(`div`,{role:`option`,"aria-selected":te(e.value),"aria-disabled":e.disabled||void 0,onClick:()=>{e.disabled||(a(e.value),l||x(!1))},className:`flex items-center justify-between gap-3 px-3 py-2.5 transition-colors font-medium ${h?`text-[13.5px]`:`text-[13px]`} ${e.disabled?`text-foreground/30 cursor-default`:te(e.value)?`bg-accent/10 text-accent font-bold cursor-pointer`:`text-foreground/80 hover:bg-foreground/5 hover:text-foreground cursor-pointer`}`,style:{borderRadius:`calc(var(--input-radius, 0.75rem) - 0.25rem)`},children:[(0,i.jsx)(`span`,{className:`truncate`,children:e.label}),te(e.value)&&!e.disabled&&(0,i.jsx)(n.an,{className:`w-3.5 h-3.5 shrink-0 text-accent`})]},e.value)),p]})}),re=_?Rm():null,ie=(0,i.jsx)(dd,{children:b&&N});return(0,i.jsxs)(`div`,{className:`flex flex-col relative ${m?`w-auto`:`w-full`} ${s?`opacity-50 pointer-events-none`:``} ${y}`,ref:E,children:[o&&(0,i.jsx)(`label`,{className:`text-[13px] font-medium text-foreground/50 select-none mb-1.5 ml-1`,children:o}),(0,i.jsxs)(`div`,{className:`relative ${m?`w-auto`:`w-full`}`,children:[(0,i.jsxs)(`div`,{ref:D,role:`button`,tabIndex:s?-1:0,"aria-haspopup":`listbox`,"aria-expanded":b,"aria-label":v||o,"aria-disabled":s||void 0,onClick:()=>{M&&x(!b)},onKeyDown:e=>{M&&((e.key===`Enter`||e.key===` `)&&(e.preventDefault(),x(e=>!e)),e.key===`Escape`&&x(!1))},className:`text-foreground transition-all duration-300 flex items-center justify-between outline-none ${m?`h-9 px-3 gap-2 text-[12.5px] font-semibold`:h?`w-full h-11 px-4 text-[14px] font-medium`:`w-full h-12 px-4 text-[15px]`} ${M?`cursor-pointer`:`cursor-default`} ${c===`ghost`?`hover:bg-foreground/5 bg-transparent`:`border glass-panel ${m?``:`shadow-sm`} ${b?`border-accent select-open`:`border-[var(--panel-border)]`}`}`,style:{borderRadius:`var(--input-radius, 0.75rem)`},children:[(0,i.jsx)(`span`,{className:`truncate`,children:j}),(t.length>1||l)&&(0,i.jsx)(n.in,{className:`w-4 h-4 text-foreground/50 shrink-0 transition-transform duration-300 ${b?`rotate-180`:``}`})]}),!(_&&re)&&ie]}),_&&re?(0,u.createPortal)(ie,re):null]})}var Bm=/^image\/(jpe?g|png|webp)$/i,Vm=[.82,.65,.5],Hm=()=>{try{let e=document.createElement(`canvas`);return e.width=1,e.height=1,e.toDataURL(`image/webp`).startsWith(`data:image/webp`)}catch{return!1}},Um=async e=>{if(typeof createImageBitmap==`function`){let t=await createImageBitmap(e);return{source:t,width:t.width,height:t.height,done:()=>t.close?.()}}let t=URL.createObjectURL(e);try{let e=await new Promise((e,n)=>{let r=new Image;r.onload=()=>e(r),r.onerror=()=>n(Error(`That picture could not be read.`)),r.src=t});return{source:e,width:e.naturalWidth,height:e.naturalHeight,done:()=>URL.revokeObjectURL(t)}}catch(e){throw URL.revokeObjectURL(t),e}},Wm=(e,t,n)=>new Promise(r=>{if(typeof e.toBlob!=`function`){r(null);return}e.toBlob(e=>r(e),t,n)}),Gm=(e,t)=>{let n=t===`image/webp`?`webp`:t===`image/png`?`png`:`jpg`;return`${(e||`image`).replace(/\.[^.]+$/,``)||`image`}.${n}`};async function Km(e,t={}){let n=t.maxSide??1600,r=t.targetBytes??921600;if(!e||!Bm.test(e.type||``)||e.size<=153600||typeof document>`u`)return e;try{let{source:t,width:i,height:a,done:o}=await Um(e);try{if(!i||!a)return e;let o=Math.min(1,n/Math.max(i,a)),s=document.createElement(`canvas`);s.width=Math.max(1,Math.round(i*o)),s.height=Math.max(1,Math.round(a*o));let c=s.getContext(`2d`);if(!c)return e;c.drawImage(t,0,0,s.width,s.height);let l=/png$/i.test(e.type),u=Hm()?`image/webp`:l?`image/png`:`image/jpeg`,d=null;for(let e of Vm){let t=await Wm(s,u,e);if(!t||(d=t,t.size<=r)||u===`image/png`)break}return!d||d.size>=e.size?e:new File([d],Gm(e.name,u),{type:u,lastModified:Date.now()})}finally{o()}}catch{return e}}var qm=`pub_files`,Jm=e=>`${Date.now()}_${(e||`file`).replace(/[^a-zA-Z0-9.-]/g,`_`)}`;async function Ym(e,t){if(!t)throw Error(`Sign in again before uploading.`);let n=await Km(e),r=`${qm}/${Jm(n.name)}`,i=(0,c.ref)(O,r);await(0,c.uploadBytes)(i,n,{customMetadata:{ownerId:t.uid}});let a=await(0,c.getDownloadURL)(i);return await(0,s.addDoc)((0,s.collection)(D,qm),{fileName:n.name,fileType:n.type||`unknown`,fileSize:n.size,downloadURL:a,storagePath:r,uid:t.uid,uploaderEmail:t.email||``,createdAt:(0,s.serverTimestamp)()}),a}var Xm=`pub_form_uploads`;async function Zm(e,t){let n=await Km(e);if(n.size>=10485760)throw Error(`That file is over 10 MB. Try a smaller one.`);let r=Math.random().toString(36).slice(2,8),i=(0,c.ref)(O,`${Xm}/${Date.now()}_${r}_${(n.name||`file`).replace(/[^a-zA-Z0-9.-]/g,`_`)}`);return await(0,c.uploadBytes)(i,n,t?{customMetadata:{ownerId:t.uid}}:void 0),(0,c.getDownloadURL)(i)}var Qm=e=>typeof e==`string`?e.split(/\s+/).filter(Boolean):[],$m=e=>e.join(`
|
|
11
|
+
`),eh=e=>/^https?:\/\/\S+$/.test(e)&&RegExp(`(/|%2F)pub_form_uploads(/|%2F)`,`i`).test(e),th=e=>{let t=Qm(e);return t.length>0&&t.every(eh)};function nh(e){try{let t=new URL(e);return(decodeURIComponent(t.pathname.split(`/o/`)[1]||t.pathname).split(`/`).pop()||``).replace(/^\d+_[a-z0-9]+_/,``)||t.hostname||`Attached file`}catch{return`Attached file`}}var rh=e=>e?.code===`storage/unauthorized`?`You do not have permission to upload here.`:e?.message||`That upload did not work. Try again.`,ih=(e,t)=>{let n=String(t||``).split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean);if(!n.length)return!0;let r=(e.type||``).toLowerCase(),i=(e.name||``).toLowerCase();return n.some(e=>e.startsWith(`.`)?i.endsWith(e):e.endsWith(`/*`)?r.startsWith(e.slice(0,-1)):r===e)},ah=e=>Array.from(e.dataTransfer?.types||[]).includes(`Files`);function oh({onFiles:e,onReject:t,accept:n,multiple:i=!1,disabled:a=!1}){let[o,s]=(0,r.useState)(!1),c=(0,r.useRef)(0);return{over:o&&!a,dropProps:{onDragEnter:e=>{a||!ah(e)||(e.preventDefault(),c.current+=1,s(!0))},onDragOver:e=>{a||!ah(e)||e.preventDefault()},onDragLeave:e=>{ah(e)&&(c.current=Math.max(0,c.current-1),c.current===0&&s(!1))},onDrop:r=>{if(c.current=0,s(!1),a||!ah(r))return;r.preventDefault();let o=Array.from(r.dataTransfer.files||[]),l=o.filter(e=>ih(e,n)),u=o.filter(e=>!ih(e,n));u.length&&t?.(u);let d=i?l:l.slice(0,1);d.length&&e(d)}}}}function sh({field:e,value:t,error:a,onChange:o}){let[s,c]=(0,r.useState)(0),[l,u]=(0,r.useState)(``),d=(0,r.useRef)(null),f=s>0,p=Qm(t),m=async e=>{let t=Array.from(e||[]);d.current&&(d.current.value=``),t.length&&(u(``),c(e=>e+t.length),await Promise.all(t.map(async e=>{try{let t=await Zm(e,E.currentUser);o(e=>$m([...Qm(e),t]))}catch(e){u(e?.code===`storage/unauthorized`?`That kind of file is not accepted. Try a PDF, a document or a picture.`:rh(e))}finally{c(e=>e-1)}})))},h=e=>{u(``),o(t=>$m(Qm(t).filter(t=>t!==e)))},{over:g,dropProps:_}=oh({accept:e.accept,multiple:!0,disabled:f,onFiles:m,onReject:()=>u(`That kind of file is not accepted here.`)}),v=a||l;return(0,i.jsxs)(`div`,{className:`flex flex-col w-full relative`,children:[(0,i.jsx)(`label`,{className:`text-[13px] font-medium text-foreground/50 select-none mb-1.5 ml-1`,children:e.label}),p.length>0&&(0,i.jsx)(`ul`,{className:`flex flex-col gap-1.5 mb-2`,children:p.map(e=>(0,i.jsxs)(`li`,{className:`flex items-center gap-3 w-full rounded-xl px-4 py-2.5 glass-panel`,style:{borderRadius:`var(--input-radius, 0.75rem)`},children:[(0,i.jsx)(n.X,{className:`w-4 h-4 shrink-0 text-accent`}),(0,i.jsx)(`span`,{className:`flex-1 min-w-0 truncate text-[15px] text-foreground`,children:nh(e)}),(0,i.jsx)(`button`,{type:`button`,onClick:()=>h(e),"aria-label":`Remove ${nh(e)}`,title:`Remove`,className:`p-1 rounded-lg text-foreground/40 hover:text-red-500 hover:bg-red-500/10 transition-colors cursor-pointer shrink-0`,children:(0,i.jsx)(n.a,{className:`w-3.5 h-3.5`})})]},e))}),(0,i.jsxs)(`label`,{..._,className:`flex items-center gap-3 w-full rounded-xl px-4 py-3 glass-panel transition-all duration-300 cursor-pointer hover:border-accent ${f?`opacity-60 pointer-events-none`:``} ${g?`!border-accent bg-accent/[0.05]`:``}`,style:{borderRadius:`var(--input-radius, 0.75rem)`},children:[f?(0,i.jsx)(n.mt,{className:`w-4 h-4 animate-spin text-accent shrink-0`}):(0,i.jsx)(n.Jt,{className:`w-4 h-4 shrink-0 ${g?`text-accent`:`text-foreground/40`}`}),(0,i.jsx)(`span`,{className:`flex-1 min-w-0 truncate text-[15px] ${g?`text-accent`:`text-foreground/40`}`,children:g?`Drop to attach`:f?s>1?`Uploading ${s} files...`:`Uploading...`:p.length?`Add another file`:e.placeholder||`Attach files, or drop them here`}),!f&&(0,i.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-[12.5px] font-bold text-foreground/60 shrink-0`,children:[(0,i.jsx)(n.Jt,{className:`w-3.5 h-3.5`}),(0,i.jsx)(`span`,{className:`max-sm:hidden`,children:`Upload`})]}),(0,i.jsx)(`input`,{ref:d,type:`file`,multiple:!0,accept:e.accept,"aria-label":e.label,disabled:f,onChange:e=>m(e.target.files),className:`hidden`})]}),v&&(0,i.jsx)(`span`,{className:`text-xs text-red-500 font-medium mt-1.5 ml-1`,children:v})]})}var ch=[`mon`,`tue`,`wed`,`thu`,`fri`,`sat`,`sun`],lh={mon:`Monday`,tue:`Tuesday`,wed:`Wednesday`,thu:`Thursday`,fri:`Friday`,sat:`Saturday`,sun:`Sunday`},uh={mon:`Mon`,tue:`Tue`,wed:`Wed`,thu:`Thu`,fri:`Fri`,sat:`Sat`,sun:`Sun`},dh=[`sun`,`mon`,`tue`,`wed`,`thu`,`fri`,`sat`],fh=[{value:`text`,label:`Short text`},{value:`textarea`,label:`Long text`},{value:`tel`,label:`Phone`},{value:`email`,label:`Email`},{value:`number`,label:`Number`},{value:`date`,label:`Date`},{value:`select`,label:`Choose one`},{value:`checkbox`,label:`Yes-no`},{value:`file`,label:`A file`}],ph=new Set(fh.map(e=>e.value)),mh={text:`Your answer`,textarea:`A sentence or two`,tel:`+1 555 0123`,email:`jane@example.com`,number:`2`,date:``,select:`Choose one…`,checkbox:``,file:`Attach a file, or drop it here`},hh=new Set(Object.values(mh).filter(Boolean)),gh=e=>e!==`date`&&e!==`checkbox`,_h=(e,t)=>{if(!gh(t))return``;let n=String(e.placeholder||``).trim();return!n||hh.has(n)?mh[t]:e.placeholder},vh=[{name:`name`,type:`text`,label:`Your name`,placeholder:`Jane Doe`},{name:`email`,type:`email`,label:`Your email`,placeholder:`jane@example.com`}],yh=new Set(vh.map(e=>e.name)),bh=e=>yh.has(e),xh=e=>{let t=vh.find(t=>t.name===e);return{name:t.name,label:t.label,type:t.type,required:!0,placeholder:t.placeholder,options:[]}},Sh=(e,t)=>e.find(e=>e.name===t)||xh(t),Ch=()=>[xh(`name`),xh(`email`),{name:`note`,label:`Anything we should know?`,type:`textarea`,required:!1,placeholder:``,options:[]}],wh=()=>({name:``,label:``,type:`text`,required:!1,placeholder:mh.text,options:[]}),Th=e=>String(e||``).toLowerCase().trim().replace(/[^a-z0-9]+/g,`_`).replace(/^_+|_+$/g,``).slice(0,60);function Eh(e,t,n){if(e.name&&e.name!==Th(e.label))return e.name;let r=Th(t);if(!r)return``;let i=n.filter(t=>t!==e).map(e=>e.name);if(!i.includes(r))return r;let a=2;for(;i.includes(`${r}_${a}`);)a++;return`${r}_${a}`}var Dh=(e,t)=>{let n=String(e?.label||``),r=ph.has(String(e?.type))?String(e.type):`text`;return{name:String(e?.name||``).trim()||Th(n)||(n.trim()?`answer_${t+1}`:``),label:n,type:r,required:e?.required===!0,placeholder:String(e?.placeholder||``),options:r===`select`&&Array.isArray(e?.options)?e.options.map(e=>String(e||``)):[]}};function Oh(e){let t=Array.isArray(e)?e.map(Dh).filter(e=>e.name):Ch();return[...vh.map(e=>{let n=t.find(t=>t.name===e.name),r=xh(e.name);return n?{...r,label:n.label.trim()?n.label:r.label,placeholder:n.placeholder}:r}),...t.filter(e=>!bh(e.name))]}var kh=e=>e.filter(e=>e.label.trim()&&!bh(e.name));function Ah(e,t){let n={};for(let r of kh(e))r.required&&(String(t[r.name]||``).trim()||(n[r.name]=r.type===`checkbox`?`Please tick this to book.`:r.type===`file`?`Please attach a file to book.`:`Please answer this.`));return n}function jh(e,t){let n={};for(let r of kh(e)){let e=String(t[r.name]||``).trim();e&&(n[r.name]=e)}return n}function Mh(e,t){let n={};for(let r of kh(e)){let e=String(t[r.name]||``).trim();e&&(n[r.label.trim()]=e)}return n}var Nh=`booking`,Ph=`sys_schedules`,Fh=`pub_bookings`,Q=`mem_bookings`,Ih=[{value:`15`,label:`15 minutes`},{value:`30`,label:`30 minutes`},{value:`45`,label:`45 minutes`},{value:`60`,label:`1 hour`},{value:`90`,label:`1½ hours`},{value:`120`,label:`2 hours`}],Lh=[{value:`7`,label:`A week ahead`},{value:`14`,label:`Two weeks ahead`},{value:`30`,label:`A month ahead`},{value:`60`,label:`Two months ahead`},{value:`90`,label:`Three months ahead`}],Rh=[{value:`0`,label:`No notice needed`},{value:`2`,label:`At least 2 hours`},{value:`12`,label:`At least 12 hours`},{value:`24`,label:`At least a day`},{value:`48`,label:`At least two days`}],zh=Array.from({length:48},(e,t)=>{let n=`${String(Math.floor(t/2)).padStart(2,`0`)}:${t%2?`30`:`00`}`;return{value:n,label:n}}),Bh=[...zh.slice(1),{value:`24:00`,label:`Midnight`}],Vh={from:`09:00`,to:`17:00`},Hh=(e,t=e,n=``,r=eg())=>({id:e,memberId:t,memberName:n,name:``,description:``,questions:Ch(),paymentId:``,notifyOwner:!0,confirmBooker:!0,enabled:!1,timeZone:r,slotMinutes:30,days:{mon:[Vh],tue:[Vh],wed:[Vh],thu:[Vh],fri:[Vh],sat:[],sun:[]},blocked:[],horizonDays:30,noticeHours:12}),Uh=/^([01]\d|2[0-3]):[0-5]\d$/,Wh=/^(([01]\d|2[0-3]):[0-5]\d|24:00)$/,Gh=e=>{let t=String(e?.from||``),n=String(e?.to||``);return Uh.test(t)&&Wh.test(n)?{from:t,to:n}:null},$=e=>{let[t,n]=e.split(`:`).map(Number);return t*60+n},Kh=/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/,qh=e=>{let t=String(e||``);if(!Kh.test(t))return!1;let[n,r,i]=t.split(`-`).map(Number),a=new Date(Date.UTC(n,r-1,i));return a.getUTCFullYear()===n&&a.getUTCMonth()===r-1&&a.getUTCDate()===i};function Jh(e){if(!Array.isArray(e))return[];let t=new Map;for(let n of e){let e=typeof n==`string`?n:String(n?.date||``);if(!qh(e))continue;let r=Array.isArray(n?.windows)?n.windows.map(e=>Gh(e)).filter(e=>!!e&&$(e.to)>$(e.from)):[],i=t.get(e);i&&i.length&&r.length?t.set(e,[...i,...r]):t.set(e,i&&!i.length?[]:r)}return[...t.entries()].map(([e,t])=>({date:e,windows:t.sort((e,t)=>$(e.from)-$(t.from))})).sort((e,t)=>e.date.localeCompare(t.date))}function Yh(e,t){let n=e.blocked.find(e=>e.date===t);return n?n.windows.length?n.windows:[Zh]:[]}var Xh=(e,t)=>e.blocked.some(e=>e.date===t&&e.windows.length===0),Zh={from:`00:00`,to:`24:00`},Qh=(e,t,n)=>{let r=typeof e==`number`?e:Number(e);return!Number.isFinite(r)||r<0||n&&!n.includes(r)?t:r},$h=(e,t)=>{let n=!String(t?.memberId||``).trim(),r=n?e:String(t.memberId),i=String((n?t?.name:t?.memberName)||``),a=Hh(e,r,i,`UTC`),o={...a.days};for(let e of ch){let n=t?.days?.[e];o[e]=Array.isArray(n)?n.map(Gh).filter(e=>!!e):[]}let s=t?.days&&typeof t.days==`object`;return{id:e,memberId:r,memberName:i,name:String(t?.name||``),description:String(t?.description||``),questions:Oh(t?.questions),paymentId:String(t?.paymentId||``),notifyOwner:t?.notifyOwner!==!1,confirmBooker:t?.confirmBooker!==!1,enabled:t?.enabled===!0,timeZone:ng(t?.timeZone)?String(t.timeZone):a.timeZone,slotMinutes:Qh(t?.slotMinutes,30,Ih.map(e=>Number(e.value))),days:s?o:a.days,blocked:Jh(t?.blocked),horizonDays:Qh(t?.horizonDays,30),noticeHours:Qh(t?.noticeHours,12),createdAt:typeof t?.createdAt==`number`?t.createdAt:void 0,updatedAt:typeof t?.updatedAt==`number`?t.updatedAt:void 0}};function eg(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone||`UTC`}catch{return`UTC`}}var tg=new Map;function ng(e){if(typeof e!=`string`||!e.trim())return!1;let t=tg.get(e);if(t!==void 0)return t;let n=!1;try{new Intl.DateTimeFormat(`en-US`,{timeZone:e}),n=!0}catch{n=!1}return tg.set(e,n),n}function rg(){try{return Intl.supportedValuesOf?Intl.supportedValuesOf(`timeZone`):[`UTC`]}catch{return[`UTC`]}}function ig(e,t=12){let n=e.trim().toLowerCase().replace(/\s+/g,`_`),r=rg(),i=eg(),a=n?r.filter(e=>e.toLowerCase().includes(n)):r;return(a.includes(i)?[i,...a.filter(e=>e!==i)]:a).slice(0,t)}var ag=new Map,og=e=>{let t=ag.get(e);return t||(t=new Intl.DateTimeFormat(`en-US`,{timeZone:e,hourCycle:`h23`,weekday:`short`,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`}),ag.set(e,t)),t};function sg(e,t){let n={};for(let r of og(t).formatToParts(e))n[r.type]=r.value;let r=Number(n.year),i=Number(n.month),a=Number(n.day),o=Number(n.hour)%24,s=Number(n.minute);return{year:r,month:i,day:a,hour:o,minute:s,second:Number(n.second),weekday:(n.weekday||`Mon`).slice(0,3).toLowerCase(),dateKey:`${r}-${String(i).padStart(2,`0`)}-${String(a).padStart(2,`0`)}`,time:`${String(o).padStart(2,`0`)}:${String(s).padStart(2,`0`)}`}}function cg(e,t){let n=sg(t,e),r=Date.UTC(n.year,n.month-1,n.day,n.hour,n.minute,n.second);return Math.round((r-t.getTime())/6e4)}function lg(e,t,n){let[r,i,a]=e.split(`-`).map(Number),[o,s]=t.split(`:`).map(Number),c=Date.UTC(r,i-1,a,o,s),l=cg(n,new Date(c)),u=c-l*6e4,d=cg(n,new Date(u));return d!==l&&(u=c-d*6e4,cg(n,new Date(u))!==d&&(u=c-Math.min(l,d)*6e4)),new Date(u)}function ug(e,t){let[n,r,i]=e.split(`-`).map(Number),a=new Date(Date.UTC(n,r-1,i+t));return`${a.getUTCFullYear()}-${String(a.getUTCMonth()+1).padStart(2,`0`)}-${String(a.getUTCDate()).padStart(2,`0`)}`}function dg(e){let[t,n,r]=e.split(`-`).map(Number);return dh[new Date(Date.UTC(t,n-1,r)).getUTCDay()]}function fg(e,t){let[n,r]=e.split(`-`).map(Number);return new Intl.DateTimeFormat(t,{month:`long`,year:`numeric`,timeZone:`UTC`}).format(new Date(Date.UTC(n,r-1,1)))}function pg(e,t){let[n,r]=e.split(`-`).map(Number),i=new Date(Date.UTC(n,r-1+t,1));return`${i.getUTCFullYear()}-${String(i.getUTCMonth()+1).padStart(2,`0`)}`}var mg=(e,t)=>e.start<t.end&&t.start<e.end,hg=(e,t)=>`${e}__${t.replace(/[-:]/g,``).slice(0,15)}`,gg=[{value:``,label:`Theme`,hex:`var(--accent-color)`},{value:`rose`,label:`Rose`,hex:`#f43f5e`},{value:`amber`,label:`Amber`,hex:`#f59e0b`},{value:`emerald`,label:`Green`,hex:`#10b981`},{value:`sky`,label:`Blue`,hex:`#0ea5e9`},{value:`fuchsia`,label:`Pink`,hex:`#d946ef`},{value:`slate`,label:`Grey`,hex:`#64748b`}],_g=e=>(gg.find(t=>t.value===e)||gg[0]).hex,vg=(e,t)=>`color-mix(in srgb, ${_g(e)} ${t}%, transparent)`,yg=Array.from({length:96},(e,t)=>{let n=`${String(Math.floor(t/4)).padStart(2,`0`)}:${String(t%4*15).padStart(2,`0`)}`;return{value:n,label:n}}),bg=[...Ih,{value:`180`,label:`3 hours`},{value:`240`,label:`4 hours`}],xg=e=>e.own?(e.title||``).trim()||`Busy`:(e.name||``).trim()||`Someone`;function Sg(e,t){let{hour:n,minute:r}=sg(e,t),i=Math.ceil((n*60+r)/15);return i>=96?`23:45`:yg[i].value}function Cg(e,t){if(!e_(e))return[];let{now:n}=t,r=(t.taken||[]).filter(t=>t.memberId===e.memberId),i=e.timeZone,a=e.slotMinutes*6e4,o=n.getTime()+e.noticeHours*36e5,s=Math.max(1,Math.min(t.days??e.horizonDays,e.horizonDays)),c=sg(n,i).dateKey,l=new Map;for(let t=0;t<s;t++){let n=ug(c,t);if(Xh(e,n))continue;let s=Yh(e,n).map(e=>({start:lg(n,e.from,i).toISOString(),end:lg(n,e.to,i).toISOString()})),u=(e.days[dg(n)]||[]).filter(e=>$(e.to)>$(e.from)).sort((e,t)=>$(e.from)-$(t.from));for(let t of u){let c=lg(n,t.from,i).getTime(),u=lg(n,t.to,i).getTime();for(let t=c;t+a<=u;t+=a){if(t<o||l.has(t))continue;let n={start:new Date(t).toISOString(),end:new Date(t+a).toISOString(),memberId:e.memberId,scheduleId:e.id};r.some(e=>mg(e,n))||s.some(e=>mg(e,n))||l.set(t,n)}}}return[...l.keys()].sort((e,t)=>e-t).map(e=>l.get(e))}function wg(e,t){return e.flatMap(e=>Cg(e,t)).sort((e,t)=>e.start.localeCompare(t.start)||e.memberId.localeCompare(t.memberId)||e.scheduleId.localeCompare(t.scheduleId))}function Tg(e){let t=new Set,n=[];for(let r of e)t.has(r.memberId)||(t.add(r.memberId),n.push(r));return n}function Eg(e,t,n){let r=e.timeZone,i=sg(t,r).dateKey,a=[],o=[];for(let t=0;t<n;t++){let n=ug(i,t);if(!Xh(e,n)){for(let t of e.days[dg(n)]||[])$(t.to)<=$(t.from)||a.push({from:lg(n,t.from,r).getTime(),to:lg(n,t.to,r).getTime()});for(let t of Yh(e,n))o.push({from:lg(n,t.from,r).getTime(),to:lg(n,t.to,r).getTime()})}}return o.reduce((e,t)=>kg(e,t),Dg(a))}function Dg(e){let t=[...e].sort((e,t)=>e.from-t.from),n=[];for(let e of t){let t=n[n.length-1];t&&e.from<=t.to?t.to=Math.max(t.to,e.to):n.push({...e})}return n}function Og(e,t){let n=[],r=0,i=0;for(;r<e.length&&i<t.length;){let a=Math.max(e[r].from,t[i].from),o=Math.min(e[r].to,t[i].to);a<o&&n.push({from:a,to:o}),e[r].to<t[i].to?r++:i++}return n}function kg(e,t){let n=[];for(let r of e){if(t.to<=r.from||t.from>=r.to){n.push(r);continue}t.from>r.from&&n.push({from:r.from,to:t.from}),t.to<r.to&&n.push({from:t.to,to:r.to})}return n}function Ag(e,t){let n=Tg(e.filter(e_));if(!n.length)return[];if(n.length===1)return Cg(n[0],t);let{now:r}=t,i=Math.max(...n.map(e=>e.slotMinutes))*6e4,a=Math.min(...n.map(e=>e.horizonDays)),o=Math.max(1,Math.min(t.days??a,a)),s=r.getTime()+Math.max(...n.map(e=>e.noticeHours))*36e5,c=Eg(n[0],r,o);for(let e of n.slice(1)){if(!c.length)break;c=Og(c,Eg(e,r,o))}let l=new Set(n.map(e=>e.memberId));for(let e of t.taken||[]){if(!c.length)break;if(!l.has(e.memberId))continue;let t=Date.parse(e.start),n=Date.parse(e.end);!Number.isFinite(t)||!Number.isFinite(n)||n<=t||(c=kg(c,{from:t,to:n}))}let u=n[0],d=[];for(let e of c)for(let t=e.from;t+i<=e.to;t+=i)t<s||d.push({start:new Date(t).toISOString(),end:new Date(t+i).toISOString(),memberId:u.memberId,scheduleId:u.id});return d.sort((e,t)=>e.start.localeCompare(t.start))}var jg=(e,t,n)=>n?Ag(e,t):wg(e,t),Mg=(e,t)=>{let n=Tg(t);return n.length?n.map(t=>({start:e.start,end:e.end,memberId:t.memberId,scheduleId:t.id})):[e]},Ng=e=>new Set(e.map(e=>e.memberId)).size>1,Pg=(e,t)=>t.find(t=>t.id===e.scheduleId)||t.find(t=>t.memberId===e.memberId),Fg=e=>`/book/${e}`,Ig=e=>`/pay/${e}`;function Lg(e){let t=typeof window<`u`&&window.location?.origin?window.location.origin:``;return t?`${t}${e}`:e}function Rg(e,t,n){let r=new Map;for(let i of e){let e=new Date(i.start),{dateKey:a}=sg(e,t),o=r.get(a);o||(o={dateKey:a,label:zg(e,t,n),slots:[]},r.set(a,o)),o.slots.push(i)}return[...r.values()].sort((e,t)=>e.dateKey.localeCompare(t.dateKey))}function zg(e,t,n){return new Intl.DateTimeFormat(n,{timeZone:t,weekday:`short`,day:`numeric`,month:`short`,year:`numeric`}).format(e)}function Bg(e,t,n){return new Intl.DateTimeFormat(n,{timeZone:t,hour:`numeric`,minute:`2-digit`}).resolvedOptions().hour12===!0?new Intl.DateTimeFormat(n,{timeZone:t,hour:`numeric`,minute:`2-digit`}).format(e):new Intl.DateTimeFormat(n,{timeZone:t,hour:`2-digit`,minute:`2-digit`,hourCycle:`h23`}).format(e)}function Vg(e,t,n){let r=new Date(e.start),i=new Date(e.end);return`${zg(r,t,n)}, ${Bg(r,t,n)}–${Bg(i,t,n)}`}function Hg(e,t,n){let r=new Date(e.start);return{day:zg(r,t,n),time:`${Bg(r,t,n)} – ${Bg(new Date(e.end),t,n)}`}}var Ug=e=>e.replace(/_/g,` `).replace(/\//g,` / `);function Wg(e,t,n,r){let i=t.trim();return`${Vg(e,n,r)} (${Ug(n)})${i?` with ${i}`:``}`}var Gg=(e,t=!1)=>`${e.start}|${e.end}|${e.memberId}|${e.scheduleId}${t?`|t`:``}`;function Kg(e){if(typeof e!=`string`)return null;let[t,n,r,i]=e.split(`|`);return!t||!n||!r||Number.isNaN(Date.parse(t))||Number.isNaN(Date.parse(n))?null:{start:t,end:n,memberId:r,scheduleId:i||``}}var qg=e=>typeof e==`string`&&e.split(`|`)[4]===`t`;function Jg(e,t,n,r,i){return{[e]:Wg(t,n,r,i),[`${e}Start`]:t.start,[`${e}End`]:t.end,[`${e}With`]:n,[`${e}TimeZone`]:r}}function Yg(e,t){let n=e[`${t}Start`],r=e[`${t}End`];if(typeof n!=`string`||typeof r!=`string`||Number.isNaN(Date.parse(n))||Number.isNaN(Date.parse(r)))return null;let i=e[`${t}With`],a=e[`${t}TimeZone`];return{start:n,end:r,with:typeof i==`string`?i:``,timeZone:typeof a==`string`?a:``}}var Xg=e=>Object.keys(e||{}).some(t=>Yg(e,t)!==null);function Zg(e){return e.memberName.trim()?e.memberId.trim()?ng(e.timeZone)?Ih.some(t=>Number(t.value)===e.slotMinutes)?Qg(e,e.slotMinutes):`Say how long a booking lasts.`:`Pick a time zone we know, like Europe/Rome.`:`Say whose time this is.`:`Give the person the name visitors will see.`}function Qg(e,t=0){if(!ng(e.timeZone))return`Pick a time zone we know, like Europe/Rome.`;let n=!1;for(let r of ch){let i=e.days[r]||[];for(let e of i){if(n=!0,$(e.to)<=$(e.from))return`On ${lh[r]}, the end must come after the start.`;if(t&&$(e.to)-$(e.from)<t)return`On ${lh[r]}, the hours are shorter than one booking.`}let a=i.slice().sort((e,t)=>$(e.from)-$(t.from));for(let e=1;e<a.length;e++)if($(a[e].from)<$(a[e-1].to))return`On ${lh[r]}, the two stretches of hours overlap.`}return n?``:`Turn on at least one day.`}var $g=e=>Qg(e)===``,e_=e=>e.enabled&&Zg(e)===``,t_={15:`A short meeting`,30:`A short meeting`,45:`A 45-minute meeting`,60:`A 1-hour meeting`,90:`A 1½-hour meeting`,120:`A 2-hour meeting`},n_=e=>t_[e.slotMinutes]||`A meeting`,r_=e=>e.name.trim()||n_(e),i_=e=>{let t=r_(e),n=e.memberName.trim();return n?`${t} with ${n}`:t},a_=(e,t=x_())=>!!e&&t.some(t=>t.id===e);function o_(e,t=``,n=x_()){return e&&a_(e.id,n)?r_(e):t.trim()}var s_=e=>{let t=(e.scheduleName||``).trim(),n=(e.memberName||``).trim();return t&&n?`${t} with ${n}`:t||(n?`A meeting with ${n}`:`A meeting`)},c_=e=>Ih.find(t=>Number(t.value)===e)?.label||`${e} min`,l_=e=>{let t=e.memberName.trim();return`${c_(e.slotMinutes)}${t?` with ${t}`:``}. Pick a time that suits you.`},u_=e=>{let t=e.description.trim();return t&&t!==l_(e)?t:``},d_=e=>{let[t,...n]=c_(e).split(` `),r=n.join(` `)||`min`;return{value:t,unit:r.startsWith(`minute`)?`min`:r}},f_=(e,t)=>e.length===t.length&&e.every((e,n)=>e.from===t[n].from&&e.to===t[n].to);function p_(e){let t=ch.filter(t=>(e.days[t]||[]).length);if(!t.length)return``;let n=e.days[t[0]],r=t.every(t=>f_(e.days[t],n)),i=t.map(e=>ch.indexOf(e)),a=i.every((e,t)=>t===0||e===i[t-1]+1)&&t.length>2?`${uh[t[0]]}–${uh[t[t.length-1]]}`:t.map(e=>uh[e]).join(`, `);return r?`${a} ${n.map(e=>`${e.from}–${e.to}`).join(`, `)}`:`${a}, hours vary`}function m_(e){let t=i_(e),n=p_(e);return n?`${t} — ${n} · ${c_(e.slotMinutes)} · ${Ug(e.timeZone)}`:`${t} — no hours yet`}var h_=(e=new Date)=>new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(0,10),g_=e=>e.name.trim()||`Working hours`,__=e=>{let t=e.memberName.trim();return t?`${t} · ${g_(e)}`:g_(e)};function v_(e,t=h_()){let n=p_(e),r=g_(e);if(!n)return`${r} — no hours yet`;let i=e.blocked.filter(e=>e.date>=t).length,a=i?` · ${i} day${i===1?``:`s`} blocked`:``;return`${r} — ${n} · ${Ug(e.timeZone)}${a}`}var y_=[],b_=e=>{y_=e},x_=()=>y_,S_=[],C_=e=>{S_=e},w_=()=>S_,T_=()=>{let e=new Set(y_.map(e=>e.id));return[...y_,...S_.filter(t=>!e.has(t.id)&&e_(t))]},E_=[{value:`calendar`,label:`A full calendar — the page is about booking`},{value:`compact`,label:`A compact time picker — one question among others`}],D_=[{value:`each`,label:`An individual schedule — they book one of us`},{value:`all`,label:`The united team schedule — one meeting with all of us`},{value:`choose`,label:`Both — the visitor chooses one of us or all of us`}],O_=new Set(D_.map(e=>e.value)),k_=e=>O_.has(String(e?.party))?String(e.party):e?.together===!0?`all`:`each`,A_=e=>(Array.isArray(e?.schedules)?e.schedules:Array.isArray(e?.members)?e.members:[]).filter(e=>typeof e==`string`||typeof e==`number`).map(e=>String(e).trim()).filter(Boolean);function j_(e){let t=e?.booking;if(!t||typeof t!=`object`)return null;let n=A_(t);return n.length?{schedules:n,party:k_(t),ask:String(t.ask||``),how:String(t.how||``)}:null}var M_=(e,t,n=[])=>{let r=t.find(t=>t.id===e);if(r)return r;let i=n.find(t=>t.id===e);return i?t.find(e=>e.id===(i.scheduleId||i.id)):void 0},N_=(e,t,n=[])=>{let r=[];for(let i of e){let e=M_(i,t,n),a=e?e.id:i;r.includes(a)||r.push(a)}return r},P_=(e,t,n=[])=>{let r=[];for(let i of e.schedules){let e=M_(i,t,n);e&&!r.some(t=>t.id===e.id)&&r.push(e)}return r};function F_(e,t,n){if(e.includes(t))return e.filter(e=>e!==t);let r=n.find(e=>e.id===t)?.memberId;return[...r?e.filter(e=>n.find(t=>t.id===e)?.memberId!==r):e,t]}var I_=e=>{let t=e.map(e=>e.memberName.trim()||`a team member`);return t.length<=1?t.join(``):`${t.slice(0,-1).join(`, `)} and ${t[t.length-1]}`},L_=e=>{let t=e.map(i_);return t.length<=1?t.join(``):`${t.slice(0,-1).join(`, `)}, and ${t[t.length-1]}`};function R_(e,t,n=t){let r=j_(e);if(!r)return``;let i=P_(r,t,n);if(!i.length)return`The schedules picked for this page no longer exist — pick one on the Schedule screen.`;let a=i.find(e=>!$g(e));return a?`Finish ${__(a)} on the Schedule screen first.`:r.how.trim()?``:`Say what this page should do with those hours.`}var z_=`calls?|meetings?|times?|slots?|sessions?|appointments?|visits?|consultations?|chats?|demos?`,B_=e=>/\b(book|books|booked|booking|bookings|appointment|appointments|reservation|reservations)\b/i.test(e)||RegExp(`\\bschedul\\w*\\s+(?:a|an|my|our|your|their|the|some)?\\s*(?:${z_})\\b`,`i`).test(e),V_=/\b(calls?|meetings?|sessions?|appointments?|consultations?|chats?|demos?|visits?|interviews?|viewings?|classes|lessons?|slots?|times?|diar(?:y|ies)|calendars?)\b/i,H_=e=>{let t=j_(e);return[e?.brief,e?.pageChange,t?.how,t?.ask].map(e=>String(e||``).trim()).filter(Boolean).join(`
|
|
12
|
+
`)},U_=e=>B_(e)||V_.test(e),W_=(e,t=j_(e))=>!!t&&(!!t.ask.trim()||t.party!==`each`||U_(H_(e))),G_=`Booking goes through the app's own form system: the page's form gets ONE question of type 'schedule', and the built-in form draws the picker — never build a calendar, a time picker, a list of times or a bookings collection of your own. The app shows every visitor the free times in their own time zone, stops two people taking the same time, and lists every booking on my Schedule screen. It also tells the people it was booked with — the booking is in their bell and on their own calendar the moment it is made — so never send a notification of your own about a booking.`,K_=(e,t=`time`,n=`each`)=>{let r=n===`all`?`, together: true`:n===`choose`?`, party: 'choose'`:``;return`{ name: '${t}', type: 'schedule', label: 'Pick a time', required: true, schedules: [${e.map(e=>`'${e}'`).join(`, `)}]${r} }`},q_=`With together: true the app offers only the times every single one of them is free at the same moment — in the visitor's own time zone — and one booking takes that time in every one of their calendars and tells every one of them. Never work the shared times out yourself, never draw a calendar or a list of anyone's hours, never ask the visitor to pick a person first, and never make more than one booking or more than one time question.`,J_=`With party: 'choose' the built-in picker shows the visitor a switch above the times — meet one of us, or meet all of us. On 'one of us' it offers each person's own free times with their name under each; on 'all of us' only the times every one of them is free at once, and the booking is then made and announced the right way for whichever they chose. Never build that switch, a calendar or a list of anyone's hours yourself, never ask the visitor to pick a person before the switch, and never make more than one time question.`,Y_=()=>`More than one person can be booked here, so decide from my words which kind of booking this is. If my words ask for ONE meeting that all of them attend — a united calendar, a time that suits everyone, all of us in it together — add together: true to that question. ${q_} If my words ask to let the visitor pick either — one of us or all of us — add party: 'choose' instead. ${J_} If my words ask only for a time with ONE of them, leave the question as it is: the app then offers each person's own free times, with their name under each, and the visitor picks one of them.`,X_=e=>`Before the time is picked, this page asks the visitor: ${e}. Put each of those on the same form as one more question, choosing the kind of box each answer needs, and keep a name question and an email question on it as well — a visitor who is already signed in is never asked those two, the app fills them in from their account itself.`,Z_=`Decide how the picker looks from my words and add a look to that question. look: 'calendar' when the page is about booking — the question draws a whole calendar with the free times under it, so show the form inline with <ContactPopup formId='…' isInline /> and give it the full width of the page, the other questions following once a time is picked. look: 'compact' when booking is one question among others — the question draws a compact picker of days and times and sits among the other questions like any of them, and the form shows the way any other form on the page does. If my words do not say, a page that is about nothing but booking gets the calendar and every other page gets the compact picker.`,Q_=`Read them with useBookings() from 'your-ai-workflow-firebase-os' — { loading, bookings, error }, each booking with id, start and end (ISO, UTC), memberId, memberName, name, email, answers and formId — the upcoming ones, soonest first; show error when it is set, format times in the reader's own zone, and cancel one with cancelBooking(id, { reason, side: 'host' }) from the same package — always with a reason, because it is what the other side reads. Never read mem_bookings or pub_bookings by hand, and never write to them. An entry with own:true is an event the owner put on their own calendar rather than a booking: it has no name or email, so title every entry with eventName(booking) from the same package. An entry with cancelled:true was called off — its time is free again, so keep it in the list greyed out and struck through rather than dropping it, and show its cancelReason when it has one. An entry with pending:true is booked but NOT yet agreed to by the person whose hour it is: mark it Pending and never draw it as a settled meeting. They accept their own with acceptBooking(id) — offer that only when booking.memberId is the signed-in person's own uid, because a meeting in somebody else's diary is not theirs to agree to. Turning a booking down is cancelBooking with a reason, never a state of its own.`,$_=e=>{let t=Tg(e).map(e=>`'${e.memberId}'`).join(`, `);return`This page is built on ${I_(e)}'s hours — their week, their own time zone and the days they are away, kept on my Schedule screen. Read them with useTeamHours() from 'your-ai-workflow-firebase-os' and use the ones whose memberId is ${t}; my app's instructions say what is ready to use with them. Never type anybody's hours or times into the page, never invent one, and never read or write sys_schedules yourself.`},ev=(e,t,n)=>{let r=`The free times come from my Schedule screen and follow my hours there, so a change to my week changes this page — never state a length, and never type a day, an hour or a time into the page. ${G_}`;return t===`all`?`People book ONE meeting with ${e} on this page — all of them in it together. ${r}`:t===`choose`?`People book time with ${e} on this page and choose for themselves whether it is with one of them or with all of them at once. ${r}`:`People book time with ${e} on this page${n?` — the visitor picks one of them, then one of that person’s free times`:``}. ${r}`};function tv(e,t,n,r=t){let i=j_(e);if(!i)return[];let a=P_(i,t,r);if(!a.length)return[];let o=i.how.trim(),s=i.ask.trim();if(!W_(e,i))return[$_(a),...o?[`Here is what this page should do with those hours: ${o}`]:[]];let c=Tg(a),l=I_(c),u=[];if(n)u.push(`This page is where my team follows the times people book with ${l}. ${Q_}`);else{let e=Ng(c),t=e?i.party:`each`;u.push(ev(l,t,e),`Add exactly this question to the page's form, copied as it is: ${K_(c.map(e=>e.id),`time`,t)}`),t===`all`?u.push(q_):t===`choose`?u.push(J_):e&&u.push(Y_()),u.push(Z_)}return s&&!n&&u.push(X_(s)),o&&u.push(`Here is how booking should work on this page: ${o}`),u}function nv(e,t,n,r,i=n){let a=j_(t);if(!a||!W_(t,a))return``;let o=Tg(P_(a,n,i));if(!o.length)return``;let s=I_(o);return r?`Times are booked with ${s} on the page at ${e}, which this page is linked to. Show those bookings here. ${Q_}`:`Times are booked with ${s} on the page at ${e}, which this page is linked to — the booking itself happens there. Put no picker on this page unless I ask for one below.`}var rv=`rounded-2xl border border-[var(--panel-border)] bg-[var(--panel-bg)] transition-colors hover:border-accent/40`,iv=`inline-flex items-center justify-center gap-1.5 h-8 px-2.5 sm:h-9 sm:px-3 shrink-0 whitespace-nowrap rounded-[var(--btn-radius,0.75rem)] text-[12.5px] font-semibold border border-[var(--panel-border)] bg-transparent text-foreground/60 hover:text-foreground hover:border-accent/40 hover:bg-foreground/[0.04] active:scale-[0.98] transition-all cursor-pointer disabled:opacity-40 disabled:pointer-events-none`,av=`w-full h-11 px-4 rounded-[var(--input-radius,0.75rem)] border border-[var(--panel-border)] bg-[var(--panel-bg)] text-[14px] text-foreground outline-none transition-all duration-300 placeholder:text-foreground/35 hover:border-accent/40 focus:border-accent disabled:opacity-50 disabled:cursor-not-allowed console-field`,ov=`w-full h-11 flex items-center px-4 rounded-[var(--input-radius,0.75rem)] border border-[var(--panel-border)] bg-[var(--panel-bg)] transition-all duration-300 hover:border-accent/40 focus-within:border-accent console-field`,sv=`flex-1 min-w-0 h-full bg-transparent border-none outline-none shadow-none text-[14px] text-foreground placeholder:text-foreground/35 disabled:cursor-not-allowed`,cv=`text-[12.5px] sm:text-[13px] font-medium text-foreground/50 select-none`,lv=`text-[11px] sm:text-[11.5px] text-foreground/40 font-medium leading-snug`;function uv({label:e=`cog`}){return(0,i.jsx)(n.N,{role:`img`,"aria-label":e,className:`inline-block w-[1.1em] h-[1.1em] align-[-0.18em] mx-[0.08em] text-foreground/85`})}function dv({children:e,tone:t=`quiet`}){return(0,i.jsx)(`p`,{className:`text-[12.5px] font-medium leading-relaxed px-1 ${t===`error`?`text-red-500`:`text-foreground/50`}`,children:e})}function fv({onClick:e,children:t}){return(0,i.jsx)(`button`,{type:`button`,onClick:e,className:`text-accent font-bold hover:underline cursor-pointer`,children:t})}function pv({state:e=`saved`,label:t}){return(0,i.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-[11.5px] font-semibold text-foreground/50 whitespace-nowrap shrink-0`,children:[e===`saving`?(0,i.jsx)(n.mt,{className:`w-3 h-3 animate-spin text-foreground/40 shrink-0`}):(0,i.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0 ${e===`saved`?`bg-emerald-500`:e===`error`?`bg-red-500`:`bg-foreground/25`}`}),t]})}function mv({icon:e,children:t,onClick:r,disabled:a,busy:o,tone:s=`default`,className:c=``,title:l,compact:u}){return(0,i.jsxs)(`button`,{type:`button`,title:l,onClick:r,disabled:a||o,className:`${iv} ${s===`danger`?`hover:text-red-500 hover:border-red-500/40 hover:bg-red-500/[0.06]`:``} ${u?`max-sm:w-8 max-sm:px-0 max-sm:gap-0 max-sm:border-transparent max-sm:hover:border-transparent max-sm:hover:bg-foreground/[0.06]`:``} ${c}`,children:[o?(0,i.jsx)(n.mt,{className:`w-3.5 h-3.5 animate-spin shrink-0`}):e?(0,i.jsx)(e,{className:`w-3.5 h-3.5 shrink-0`}):null,u?(0,i.jsx)(`span`,{className:`max-sm:hidden sm:inline-flex items-center gap-1.5`,children:t}):t]})}function hv({to:e,title:t,children:r,className:a=``}){return(0,i.jsxs)(`a`,{href:e,target:`_blank`,rel:`noreferrer`,title:t,onClick:e=>e.stopPropagation(),className:`${iv} max-sm:w-8 max-sm:px-0 max-sm:gap-0 max-sm:border-transparent max-sm:hover:border-transparent max-sm:hover:bg-foreground/[0.06] ${a}`,children:[(0,i.jsx)(n.Bt,{className:`w-3.5 h-3.5 shrink-0`}),(0,i.jsx)(`span`,{className:`max-sm:hidden`,children:r})]})}var gv=`w-6 h-6 rounded-md flex items-center justify-center text-inherit outline-none hover:text-foreground hover:bg-foreground/[0.07] focus-visible:text-foreground focus-visible:ring-2 focus-visible:ring-accent transition-colors cursor-pointer disabled:opacity-25 disabled:pointer-events-none`;function _v({label:e,canUp:t=!0,canDown:r=!0,onMove:a,hideOnPhone:o,className:s=``}){let c=(t,r)=>(0,i.jsx)(`button`,{type:`button`,title:t===`up`?`Move up`:`Move down`,"aria-label":`Move ${e} ${t}`,disabled:!r,onClick:()=>a(t),className:gv,children:t===`up`?(0,i.jsx)(n.vn,{className:`w-3 h-3`}):(0,i.jsx)(n.Sn,{className:`w-3 h-3`})});return(0,i.jsxs)(`div`,{className:`${o?`max-sm:hidden sm:flex`:`flex`} items-center shrink-0 text-foreground/40 [@media(hover:hover)]:opacity-0 group-hover:opacity-100 group-focus-within:opacity-100 transition-opacity duration-150 `+s,onClick:e=>e.stopPropagation(),children:[c(`up`,t),c(`down`,r)]})}function vv({icon:e,title:t,description:a,actions:o,children:s,defaultOpen:c=!0,collapsible:l=!0}){let[u,d]=(0,r.useState)(c),f=l?u:!0,p=typeof o==`function`?o({open:()=>d(!0)}):o;return(0,i.jsxs)(`div`,{className:`rounded-2xl border border-[var(--panel-border)]/60 bg-foreground/[0.015] overflow-hidden transition-all`,children:[(0,i.jsxs)(`div`,{className:`w-full px-4 sm:px-5 py-4 grid grid-cols-[auto_minmax(0,1fr)_auto_auto] items-center gap-x-3 sm:gap-x-3.5 gap-y-0.5 text-left`,children:[e&&(0,i.jsx)(`div`,{className:`row-start-1 col-start-1 row-span-2 self-center w-10 h-10 rounded-2xl flex items-center justify-center shrink-0 border border-[var(--panel-border)]/50 bg-accent/10 text-accent`,children:(0,i.jsx)(e,{className:`w-5 h-5`})}),(0,i.jsx)(`span`,{className:`row-start-1 col-start-2 min-w-0 text-[15px] font-bold text-foreground tracking-tight leading-tight truncate self-end`,children:t}),p&&(0,i.jsx)(`div`,{className:`row-start-1 row-span-2 col-start-3 self-center justify-self-end flex items-center gap-1 sm:gap-2 shrink-0`,children:p}),l&&(0,i.jsx)(`button`,{type:`button`,onClick:()=>d(e=>!e),"aria-expanded":f,"aria-label":f?`Collapse ${t}`:`Expand ${t}`,className:`row-start-1 col-start-4 row-span-2 self-center w-8 h-8 rounded-xl border border-[var(--panel-border)]/60 hover:border-accent/40 flex items-center justify-center text-foreground/50 hover:text-foreground hover:bg-foreground/5 transition-all cursor-pointer justify-self-end`,children:(0,i.jsx)(n.in,{className:`w-4 h-4 transition-transform duration-200 ${f?`rotate-180`:``}`})}),a&&(0,i.jsx)(`span`,{className:`row-start-2 col-start-2 min-w-0 text-[12px] text-foreground/50 font-normal leading-snug truncate self-start`,children:a})]}),(0,i.jsx)(dd,{initial:!1,children:f&&(0,i.jsx)(cp.div,{initial:{height:0,opacity:0},animate:{height:`auto`,opacity:1},exit:{height:0,opacity:0},className:`overflow-hidden`,children:(0,i.jsx)(`div`,{className:`border-t border-[var(--panel-border)]/40 p-4 sm:p-5 flex flex-col gap-5 bg-background/30`,children:s})})})]})}function yv({icon:e,title:t,description:n,chip:r,enabled:a,onChange:o,label:s,children:c}){return(0,i.jsxs)(`div`,{className:`rounded-2xl border border-[var(--panel-border)]/60 bg-foreground/[0.015] overflow-hidden`,children:[(0,i.jsxs)(`div`,{className:`w-full px-4 sm:px-5 py-4 grid grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-x-3 sm:gap-x-3.5 gap-y-0.5`,children:[(0,i.jsx)(`div`,{className:`row-start-1 col-start-1 row-span-2 self-center w-10 h-10 rounded-2xl flex items-center justify-center shrink-0 border border-[var(--panel-border)]/50 bg-accent/10 text-accent`,children:(0,i.jsx)(e,{className:`w-5 h-5`})}),(0,i.jsx)(`span`,{className:`row-start-1 col-start-2 min-w-0 text-[15px] font-bold text-foreground tracking-tight leading-tight truncate self-end`,children:t}),(0,i.jsx)(`span`,{className:`row-start-2 col-start-2 min-w-0 text-[12px] text-foreground/50 font-normal leading-snug truncate self-start`,children:n}),(0,i.jsxs)(`div`,{className:`row-start-1 row-span-2 col-start-3 self-center justify-self-end flex items-center gap-2 sm:gap-3 shrink-0`,children:[r&&(0,i.jsx)(`span`,{className:`max-sm:hidden`,children:(0,i.jsx)(pv,{state:r.state,label:r.label})}),a!==null&&(0,i.jsx)(Ev,{enabled:a,onChange:o,label:s||t})]})]}),c&&(0,i.jsx)(`div`,{className:`border-t border-[var(--panel-border)]/40 p-4 sm:p-5 flex flex-col gap-4 bg-background/30`,children:c})]})}function bv({label:e,hint:t,action:n,children:r,error:a}){return(0,i.jsxs)(`div`,{className:`flex flex-col w-full`,children:[(0,i.jsxs)(`div`,{className:`flex items-center justify-between gap-3 mb-1 sm:mb-1.5 ml-1`,children:[(0,i.jsx)(`label`,{className:cv,children:e}),n]}),r,t&&!a&&(0,i.jsx)(`span`,{className:`text-[11px] sm:text-[11.5px] text-foreground/40 font-medium leading-snug mt-1 sm:mt-1.5 px-1`,children:t}),a&&(0,i.jsx)(`span`,{className:`text-[11.5px] font-semibold text-red-500 leading-snug mt-1 sm:mt-1.5 px-1`,children:a})]})}function xv({label:e,hint:t,value:n,onChange:r,onBlur:a,placeholder:o,prefix:s,error:c,disabled:l,action:u}){return(0,i.jsx)(bv,{label:e,hint:t,error:c,action:u,children:s?(0,i.jsxs)(`div`,{className:`${ov} ${c?`is-invalid border-red-500/60`:``} ${l?`opacity-50`:``}`,children:[(0,i.jsx)(`span`,{className:`mr-0.5 text-[14px] font-semibold text-foreground/40 select-none shrink-0`,children:s}),(0,i.jsx)(`input`,{type:`text`,value:n??``,disabled:l,placeholder:o,onChange:e=>r(e.target.value),onBlur:a,"aria-label":e,className:`${sv} no-glow`})]}):(0,i.jsx)(`input`,{type:`text`,value:n??``,disabled:l,placeholder:o,onChange:e=>r(e.target.value),onBlur:a,"aria-label":e,className:`${av} ${c?`is-invalid border-red-500/60`:``}`})})}function Sv({value:e,className:t=``,...n}){let a=(0,r.useRef)(null),{placeholder:o}=n,s=r.default.useCallback(()=>{let e=a.current;if(!e)return;e.style.height=`auto`;let t=e.scrollHeight;!e.value&&e.placeholder&&(e.value=e.placeholder,t=Math.max(t,e.scrollHeight),e.value=``),e.style.height=`${t+(e.offsetHeight-e.clientHeight)}px`},[]);return(0,r.useLayoutEffect)(s,[s,e,o]),(0,r.useEffect)(()=>{let e=a.current;if(!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(s);return e.parentElement&&t.observe(e.parentElement),()=>t.disconnect()},[s]),(0,i.jsx)(`textarea`,{ref:a,value:e??``,onInput:s,className:`${t} resize-none overflow-hidden`,...n,rows:n.rows||1})}function Cv({label:e,hint:t,value:n,onChange:r,onBlur:a,placeholder:o,rows:s,error:c}){return(0,i.jsx)(bv,{label:e,hint:t,error:c,children:(0,i.jsx)(Sv,{value:n??``,placeholder:o,rows:s,onChange:e=>r(e.target.value),onBlur:a,"aria-label":e,className:`${av.replace(`h-11 `,``)} min-h-11 py-2.5 leading-5 ${c?`is-invalid border-red-500/60`:``}`})})}function wv({label:e,hint:t,value:n,onChange:r,options:a,placeholder:o=`None`,allowEmpty:s=!0,disabled:c}){let l=[...s?[{value:``,label:o}]:[],...a.filter(e=>e.value!==``)];return(0,i.jsx)(bv,{label:e,hint:t,children:(0,i.jsx)(zm,{ariaLabel:e,value:n??``,options:l,onChange:r,disabled:c,className:`console-select`,dense:!0,portal:!0,direction:`auto`})})}function Tv({label:e,hint:t,enabled:n,onChange:r,disabled:a,hintWideOnly:o}){return(0,i.jsxs)(`div`,{className:`flex items-center justify-between gap-4 w-full`,children:[(0,i.jsxs)(`div`,{className:`flex flex-col gap-0.5 min-w-0 ml-1`,children:[(0,i.jsx)(`span`,{className:`text-[13px] font-medium text-foreground/80`,children:e}),t&&(0,i.jsx)(`span`,{className:`text-[11px] sm:text-[11.5px] text-foreground/40 font-medium leading-snug${o?` max-sm:hidden`:``}`,children:t})]}),(0,i.jsx)(Ev,{enabled:n,onChange:r,disabled:a,label:e})]})}function Ev({enabled:e,onChange:t,disabled:n,label:r}){return(0,i.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":e,"aria-label":r,disabled:n,onClick:n=>{n.stopPropagation(),t(!e)},className:`relative w-10 h-6 rounded-full transition-colors shrink-0 cursor-pointer disabled:opacity-40 disabled:cursor-not-allowed ${e?`bg-accent`:`bg-foreground/15`}`,children:(0,i.jsx)(`span`,{className:`absolute top-1 left-1 w-4 h-4 rounded-full bg-[var(--button-fg,#fff)] shadow transition-transform ${e?`translate-x-4`:`translate-x-0`}`})})}function Dv({saving:e,savedAt:t,error:n}){return n?(0,i.jsx)(pv,{state:`error`,label:n}):e?(0,i.jsx)(pv,{state:`saving`,label:`Saving`}):t?(0,i.jsx)(pv,{state:`saved`,label:`Saved`}):null}function Ov({label:e=`Time zone`,hint:t,value:a,onChange:o,compact:s}){let[c,l]=(0,r.useState)(``),u=eg(),d=(a||``).trim(),f=(0,r.useMemo)(()=>ig(c),[c]),p=c.trim().length>0,m=t??(d===u?`Detected from your browser.`:`Your browser is in ${Ug(u)}.`),h=(0,i.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,i.jsxs)(`div`,{className:ov,children:[d&&!p?(0,i.jsxs)(`span`,{className:`inline-flex items-center gap-2 mr-2.5 shrink-0 min-w-0 text-accent`,children:[(0,i.jsx)(n.Ot,{className:`w-4 h-4 shrink-0`}),(0,i.jsx)(`span`,{className:`text-[13px] font-semibold truncate`,children:Ug(d)}),(0,i.jsx)(n.an,{className:`w-3.5 h-3.5 shrink-0`})]}):(0,i.jsx)(n.F,{className:`w-4 h-4 mr-2.5 text-foreground/30 shrink-0`}),(0,i.jsx)(`input`,{type:`text`,value:c,onChange:e=>l(e.target.value),placeholder:d?`Type a city to change it`:`Type a city, e.g. Rome`,"aria-label":`Search time zones`,className:`${sv} no-glow`})]}),p&&(0,i.jsx)(`div`,{className:`rounded-[var(--input-radius,0.75rem)] border border-[var(--panel-border)] bg-[var(--panel-bg)] p-1.5 max-h-56 overflow-y-auto`,children:f.length>0?(0,i.jsx)(`div`,{className:`flex flex-col`,children:f.map(e=>(0,i.jsxs)(`button`,{type:`button`,"aria-pressed":e===d,onClick:()=>{o(e),l(``)},className:`w-full text-left px-2.5 py-1.5 rounded-lg text-[13px] font-medium transition-colors cursor-pointer ${e===d?`bg-accent text-[var(--button-fg,#fff)]`:`text-foreground/70 hover:text-foreground hover:bg-foreground/[0.06]`}`,children:[Ug(e),e===u?` · detected`:``]},e))}):(0,i.jsx)(`span`,{className:`block px-2 py-2 text-[12px] font-medium text-foreground/45`,children:`Nothing close to that. Try a big city near you, like London or Chicago.`})})]});return s?h:(0,i.jsx)(bv,{label:e,hint:m,children:h})}function kv({timeZone:e,onTimeZone:t,action:a}){let[o,s]=(0,r.useState)(!1);return(0,i.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,i.jsxs)(`div`,{className:`flex gap-3 ${a?`max-sm:flex-col max-sm:items-stretch sm:items-center sm:justify-between`:``}`,children:[(0,i.jsxs)(`p`,{className:`flex items-center gap-1.5 text-[12px] font-medium text-foreground/50`,children:[(0,i.jsx)(n.Ot,{className:`w-3.5 h-3.5 text-foreground/35 shrink-0`,"aria-hidden":!0}),(0,i.jsxs)(`span`,{children:[`Times in `,Ug(e),` · `,(0,i.jsx)(`button`,{type:`button`,onClick:()=>s(e=>!e),className:`text-accent font-semibold hover:underline cursor-pointer`,children:o?`Done`:`Change`})]})]}),a]}),o&&(0,i.jsx)(Ov,{compact:!0,value:e,onChange:e=>{t(e),s(!1)}})]})}var Av=(e,t)=>!!e&&e.memberId===t.memberId&&e.start===t.start&&e.scheduleId===t.scheduleId,jv=`relative flex flex-col items-center justify-center w-full min-h-11 px-3 py-2 rounded-[var(--input-radius,0.75rem)] border text-[14px] font-semibold transition-all duration-200 cursor-pointer`;function Mv({slots:e,value:t,onChange:r,timeZone:a,members:o,together:s}){let c=!s&&new Set(o.map(e=>e.memberId)).size>1,l=e=>(o.find(t=>t.id===e.scheduleId)||o.find(t=>t.memberId===e.memberId))?.memberName.trim()||``;return e.length?(0,i.jsx)(`div`,{className:`grid gap-2 [grid-template-columns:repeat(auto-fill,minmax(96px,1fr))]`,role:`listbox`,"aria-label":`Free times`,children:e.map(e=>{let o=Av(t,e),s=Bg(new Date(e.start),a),u=c?l(e):``;return(0,i.jsxs)(`button`,{type:`button`,role:`option`,"aria-selected":o,"aria-label":u?`${s} with ${u}`:s,onClick:()=>r(o?null:e),className:`${jv} ${o?`bg-accent border-accent text-[var(--button-fg,#fff)] shadow-md shadow-accent/25`:`border-[var(--panel-border)] bg-transparent text-foreground/75 hover:border-accent/50 hover:text-foreground hover:bg-foreground/[0.04] active:scale-[0.98]`}`,children:[o&&(0,i.jsx)(n.an,{className:`absolute left-2.5 w-3.5 h-3.5`,"aria-hidden":!0}),(0,i.jsx)(`span`,{className:`tabular-nums`,children:s}),u&&(0,i.jsx)(`span`,{className:`text-[11px] font-medium leading-tight ${o?`opacity-90`:`text-foreground/50`}`,children:u})]},`${hg(e.memberId,e.start)}__${e.scheduleId}`)})}):null}function Nv(e,t,n,i,a){let o=(0,r.useMemo)(()=>Rg(jg(e,{now:i?i():new Date,taken:t},!!a),n),[e,t,n,i,a]),s=a&&e.length?Tg(e).reduce((e,t)=>Math.min(e,t.horizonDays),1/0):e.reduce((e,t)=>Math.max(e,t.horizonDays),0);return{days:o,horizon:Number.isFinite(s)?s:0}}var Pv=(e,t)=>e?sg(new Date(e.start),t).dateKey:``;function Fv({horizon:e}){return(0,i.jsx)(`p`,{className:`text-[13px] font-medium text-foreground/50 py-2`,children:e?`No free times in the next ${e} days.`:`No free times at the moment.`})}function Iv({members:e,value:t,onChange:n,taken:a,timeZone:o,onTimeZone:s,now:c,together:l}){let{days:u,horizon:d}=Nv(e,a,o,c,l),[f,p]=(0,r.useState)({tz:o,day:``}),m=f.tz===o?f.day:``,h=(u.some(e=>e.dateKey===m)?m:``)||Pv(t,o)||u[0]?.dateKey||``,g=u.find(e=>e.dateKey===h)||u[0];return(0,i.jsxs)(`div`,{className:`flex flex-col gap-3 w-full`,children:[u.length===0?(0,i.jsx)(Fv,{horizon:d}):(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(`div`,{className:`flex gap-2 overflow-x-auto no-scrollbar pb-1 -mx-1 px-1`,role:`tablist`,"aria-label":`Days with free times`,children:u.map(e=>{let t=e.dateKey===g?.dateKey;return(0,i.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":t,onClick:()=>p({tz:o,day:e.dateKey}),className:`shrink-0 px-3.5 py-2 rounded-xl text-[13px] font-semibold whitespace-nowrap transition-all cursor-pointer glass-panel ${t?`bg-accent text-[var(--button-fg,#fff)] border-accent shadow-lg shadow-accent/20`:`text-foreground/70 hover:text-foreground hover:border-accent`}`,style:{borderRadius:`var(--input-radius, 0.75rem)`},children:e.label},e.dateKey)})}),g&&(0,i.jsx)(Mv,{slots:g.slots,value:t,onChange:n,timeZone:o,members:e,together:l})]}),(0,i.jsx)(kv,{timeZone:o,onTimeZone:s})]})}var Lv=`rounded-2xl flex items-center justify-center shrink-0 border border-[var(--panel-border)]/50 bg-accent/10 text-accent`;function Rv({slot:e,timeZone:t,who:r,onChange:a}){let o=Hg(e,t),s=(r||``).trim();return(0,i.jsxs)(`div`,{className:`flex items-center gap-3 rounded-2xl border border-[var(--panel-border)]/60 bg-foreground/[0.015] px-3.5 py-3`,children:[(0,i.jsx)(`div`,{className:`w-10 h-10 ${Lv}`,children:(0,i.jsx)(n.pn,{className:`w-4 h-4`})}),(0,i.jsxs)(`div`,{className:`flex flex-col min-w-0 flex-1 gap-0.5`,children:[(0,i.jsx)(`span`,{className:`text-[14px] sm:text-[15px] font-bold text-foreground leading-tight truncate`,children:o.day}),(0,i.jsxs)(`span`,{className:`text-[12.5px] sm:text-[13px] font-semibold text-foreground/55 leading-tight tabular-nums truncate`,children:[o.time,s?` · with ${s}`:``]})]}),(0,i.jsxs)(`button`,{type:`button`,onClick:a,"aria-label":`Change the time`,className:`shrink-0 cursor-pointer flex items-center justify-center transition-all max-sm:w-9 max-sm:h-9 max-sm:rounded-xl max-sm:border max-sm:border-[var(--panel-border)] max-sm:text-foreground/50 max-sm:hover:text-accent max-sm:hover:border-accent/40 max-sm:active:scale-[0.98] sm:text-[12.5px] sm:font-bold sm:text-accent sm:hover:underline`,children:[(0,i.jsx)(n.q,{className:`w-3.5 h-3.5 sm:hidden`,"aria-hidden":!0}),(0,i.jsx)(`span`,{className:`max-sm:hidden`,children:`Change`})]})]})}var zv=[`M`,`T`,`W`,`T`,`F`,`S`,`S`],Bv=`rounded-2xl border border-[var(--panel-border)]/60 bg-foreground/[0.015] overflow-hidden`,Vv=`flex items-center justify-between gap-2 px-3.5 py-2.5 border-b border-[var(--panel-border)]/40`,Hv=`w-8 h-8 rounded-xl border border-[var(--panel-border)]/60 flex items-center justify-center shrink-0 text-foreground/50 hover:text-foreground hover:border-accent/40 hover:bg-foreground/5 active:scale-[0.98] transition-all cursor-pointer`;function Uv(...e){let t=(0,r.useRef)(null),[n,i]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let e=t.current;if(!e)return;let n=()=>i(e.scrollTop+e.clientHeight<e.scrollHeight-2);n(),e.addEventListener(`scroll`,n,{passive:!0});let r=typeof ResizeObserver>`u`?null:new ResizeObserver(n);return r?.observe(e),()=>{e.removeEventListener(`scroll`,n),r?.disconnect()}},e),{ref:t,moreBelow:n}}var Wv=()=>(0,i.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-x-px bottom-px h-10 rounded-b-2xl bg-gradient-to-t from-[var(--bg-color)] to-transparent`}),Gv=e=>e.slice(0,7);function Kv(e){let t=`${e}-01`,n=ch.indexOf(dg(t)),r=Array.from({length:n},()=>null);for(let n=0;;n++){let i=ug(t,n);if(Gv(i)!==e)break;r.push(i)}return r}function qv({members:e,value:t,onChange:a,taken:o,timeZone:s,onTimeZone:c,now:l,together:u}){let{days:d,horizon:f}=Nv(e,o,s,l,u),p=sg(l?l():new Date,s).dateKey,m=new Map(d.map(e=>[e.dateKey,e])),h=Pv(t,s),[g,_]=(0,r.useState)(()=>({tz:s,day:h,month:Gv(h||d[0]?.dateKey||p)})),v=g.tz===s,y=v?g.day:h,b=v?g.month:Gv(h||d[0]?.dateKey||p),x=e=>_({tz:s,day:y,month:e(b)}),S=e=>_({tz:s,day:e,month:b}),C=y?m.get(y):void 0,w=Kv(b),T=C?.slots.length||0,{ref:E,moreBelow:D}=Uv(T,y);return(0,i.jsxs)(`div`,{className:`flex flex-col gap-4 w-full`,children:[d.length===0&&(0,i.jsx)(Fv,{horizon:f}),(0,i.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-[minmax(0,1.15fr)_minmax(0,1fr)] gap-3 md:gap-4 w-full md:items-stretch`,children:[(0,i.jsxs)(`div`,{className:`${Bv} w-full min-w-0`,children:[(0,i.jsxs)(`div`,{className:Vv,children:[(0,i.jsx)(`h4`,{className:`text-[14px] font-bold text-foreground tracking-tight truncate`,children:fg(b)}),(0,i.jsxs)(`div`,{className:`flex items-center gap-1.5 shrink-0`,children:[(0,i.jsx)(`button`,{type:`button`,onClick:()=>x(()=>Gv(p)),className:`h-8 px-3 rounded-xl border border-[var(--panel-border)]/60 text-[12.5px] font-semibold text-foreground/60 hover:text-foreground hover:border-accent/40 hover:bg-foreground/5 active:scale-[0.98] transition-all cursor-pointer`,children:`Today`}),(0,i.jsx)(`button`,{type:`button`,"aria-label":`Previous month`,onClick:()=>x(e=>pg(e,-1)),className:Hv,children:(0,i.jsx)(n.rn,{className:`w-4 h-4`})}),(0,i.jsx)(`button`,{type:`button`,"aria-label":`Next month`,onClick:()=>x(e=>pg(e,1)),className:Hv,children:(0,i.jsx)(n.nn,{className:`w-4 h-4`})})]})]}),(0,i.jsx)(`div`,{className:`p-3`,children:(0,i.jsxs)(`div`,{className:`grid grid-cols-7 gap-1 w-full max-w-[26rem] mx-auto`,role:`grid`,"aria-label":fg(b),children:[zv.map((e,t)=>(0,i.jsx)(`div`,{className:`text-center text-[10.5px] font-bold uppercase tracking-wider text-foreground/35 pb-1`,children:e},t)),w.map((e,t)=>{if(!e)return(0,i.jsx)(`div`,{"aria-hidden":!0},`blank-${t}`);let n=m.has(e),r=e===y,a=e===p,o=Number(e.slice(8,10));return(0,i.jsxs)(`button`,{type:`button`,role:`gridcell`,"aria-label":m.get(e)?.label||e,"aria-selected":r,"aria-disabled":!n,disabled:!n,onClick:()=>S(e),className:`relative flex items-center justify-center h-10 md:h-11 rounded-xl text-[13.5px] md:text-[14px] font-semibold tabular-nums transition-all ${r?`bg-accent text-[var(--button-fg,#fff)] shadow-md shadow-accent/25 cursor-pointer`:n?`text-foreground hover:bg-foreground/[0.06] cursor-pointer`:`text-foreground/25 cursor-default`} ${a&&!r?`ring-1 ring-inset ring-accent/45`:``}`,children:[o,n&&(0,i.jsx)(`span`,{"aria-hidden":!0,className:`absolute bottom-1 w-1 h-1 rounded-full ${r?`bg-[var(--button-fg,#fff)]`:`bg-accent`}`})]},e)})]})})]}),(0,i.jsx)(`div`,{className:`w-full min-w-0 md:relative md:min-h-[320px]`,children:(0,i.jsxs)(`div`,{className:`${Bv} flex flex-col md:absolute md:inset-0`,children:[(0,i.jsxs)(`div`,{className:Vv,children:[(0,i.jsx)(`p`,{className:`text-[13px] font-bold text-foreground tracking-tight truncate`,children:C?C.label:`Pick a day`}),T>0&&(0,i.jsxs)(`span`,{className:`text-[11.5px] font-semibold text-foreground/40 shrink-0 tabular-nums`,children:[T,` `,T===1?`time`:`times`]})]}),(0,i.jsxs)(`div`,{className:`relative flex-1 min-h-0`,children:[(0,i.jsx)(`div`,{ref:E,className:`p-3 h-full overflow-y-auto styled-scrollbars-mini`,children:C?(0,i.jsx)(Mv,{slots:C.slots,value:t,onChange:a,timeZone:s,members:e,together:u}):(0,i.jsxs)(`div`,{className:`flex flex-col items-center justify-center text-center gap-2 py-8 px-2`,children:[(0,i.jsx)(n.un,{className:`w-5 h-5 text-foreground/25`,"aria-hidden":!0}),(0,i.jsx)(`p`,{className:`text-[12.5px] font-medium text-foreground/45 leading-relaxed`,children:d.length>0?`Pick a day with a dot to see its times.`:`No times to show.`})]})}),D&&(0,i.jsx)(Wv,{})]})]})})]}),(0,i.jsx)(kv,{timeZone:s,onTimeZone:c})]})}var Jv=e=>e?.kind===`link`?`link`:`schedule`,Yv=e=>e?.kind!==`schedule`&&e?.kind!==`link`,Xv=()=>`l_${Date.now().toString(36)}${Math.random().toString(36).slice(2,6)}`,Zv=()=>`s_${Date.now().toString(36)}${Math.random().toString(36).slice(2,6)}`,Qv=(e,t)=>({id:e,scheduleId:t.id,memberId:t.memberId,memberName:t.memberName,name:``,description:``,slotMinutes:30,horizonDays:30,noticeHours:12,questions:Ch(),paymentId:``,notifyOwner:!0,confirmBooker:!0,enabled:!0}),$v=(e,t,n)=>{let r=typeof e==`number`?e:Number(e);return!Number.isFinite(r)||r<0||n&&!n.includes(r)?t:r},ey=(e,t)=>({id:e,scheduleId:String(t?.scheduleId||``),memberId:String(t?.memberId||``),memberName:String(t?.memberName||``),name:String(t?.name||``),description:String(t?.description||``),slotMinutes:$v(t?.slotMinutes,30,Ih.map(e=>Number(e.value))),horizonDays:$v(t?.horizonDays,30),noticeHours:$v(t?.noticeHours,12),questions:Oh(t?.questions),paymentId:String(t?.paymentId||``),notifyOwner:t?.notifyOwner!==!1,confirmBooker:t?.confirmBooker!==!1,enabled:t?.enabled===!0,createdAt:typeof t?.createdAt==`number`?t.createdAt:void 0,updatedAt:typeof t?.updatedAt==`number`?t.updatedAt:void 0});function ty(e,t){return t?{...t,id:e.id,scheduleId:t.id,memberId:t.memberId,memberName:e.memberName||t.memberName,name:e.name,description:e.description,slotMinutes:e.slotMinutes,horizonDays:e.horizonDays,noticeHours:e.noticeHours,questions:e.questions,paymentId:e.paymentId,notifyOwner:e.notifyOwner,confirmBooker:e.confirmBooker,enabled:e.enabled,createdAt:e.createdAt,updatedAt:e.updatedAt,joined:!0}:null}function ny(e){let t=new Map(e.schedules.map(e=>[e.id,e])),n=new Set(e.legacyIds),r=e.schedules.filter(e=>n.has(e.id));for(let n of e.links){let e=ty(n,t.get(n.scheduleId));e&&r.push(e)}return r.sort((e,t)=>(e.createdAt||0)-(t.createdAt||0)||e.id.localeCompare(t.id))}var ry=e=>e.name.trim()||n_(e),iy=(e,t)=>t?`${ry(e)} — ${c_(e.slotMinutes)} · ${__(t)}`:`${ry(e)} — the hours it was booked in are gone`,ay=(e,t)=>{let n=t?ty(e,t):null;return n&&e_(n)?{state:`saved`,label:`Bookable`}:{state:`off`,label:e.enabled?`In progress`:`Turned off`}};function oy(e,t){if(!t)return`The hours this link was booked in are gone — pick another set.`;let n=ty(e,t);return n?Zg({...n,enabled:!0}):`The hours this link was booked in are gone — pick another set.`}function sy(e,t=`Working hours`){let n=[],r=[],i=new Map;for(let a of e){let e=[a.memberId,a.timeZone,JSON.stringify(a.days),JSON.stringify(a.blocked)].join(`|`),o=i.get(e);o||(o={...Hh(Zv(),a.memberId,a.memberName,a.timeZone),name:t,days:a.days,blocked:a.blocked,enabled:!0,createdAt:a.createdAt},i.set(e,o),n.push(o)),r.push({...Qv(a.id,o),memberName:a.memberName,name:a.name,description:a.description,slotMinutes:a.slotMinutes,horizonDays:a.horizonDays,noticeHours:a.noticeHours,questions:a.questions,paymentId:a.paymentId,notifyOwner:a.notifyOwner,confirmBooker:a.confirmBooker,enabled:a.enabled,createdAt:a.createdAt})}return{schedules:n,links:r}}var cy=e=>{let{id:t,...n}=e;return{...n,kind:`link`}},ly=e=>({kind:`schedule`,memberId:e.memberId,memberName:e.memberName,name:e.name,timeZone:e.timeZone,days:e.days,blocked:e.blocked,enabled:!0,createdAt:e.createdAt||Date.now()}),uy=e=>e.entryId?`${e.entryId}__${e.start}`:e.id;function dy(e){let t=e.filter(e=>!e.cancelled),n=t.length?t:e;return{copyIds:e.map(e=>e.id),pending:n.some(e=>e.pending),partySize:n.length,partyAccepted:n.filter(e=>!e.pending).length}}function fy(e){let t=new Map;for(let n of e){if(n.own)continue;let e=uy(n),r=t.get(e);r?r.push(n):t.set(e,[n])}let n=new Map;for(let e of t.values()){let t=dy(e);for(let r of e)n.set(r.id,t)}return n}var py=5*6e4;function my(e,t,n){let r=new Set(t.map(e=>e.id));return e.filter(e=>r.has(hg(e.memberId,e.start))?!1:(e.createdAt||0)<n-py)}var hy=(e,t=``)=>({id:hg(e.memberId,e.start),memberId:e.memberId,memberName:t,scheduleId:``,scheduleName:``,own:!1,title:``,color:``,paymentId:``,paymentSession:``,cancelled:!1,cancelledAt:0,cancelReason:``,cancelledBy:``,cancelledSide:``,cancelledByUid:``,pending:!1,acceptedAt:0,heldOnly:!0,copyIds:[],partySize:0,partyAccepted:0,start:e.start,end:e.end,timeZone:``,name:``,email:``,answers:{},formId:``,entryId:``,uid:``,createdAt:e.createdAt||0}),gy=(e,t)=>(e.createdAt||0)-(t.createdAt||0)||e.id.localeCompare(t.id),_y={schedules:[],links:[],legacyIds:[]};function vy(){let[e,t]=(0,r.useState)({loading:!0,docs:_y});return(0,r.useEffect)(()=>{let e=re(Ph,()=>(0,s.collection)(D,Ph),e=>{let n=[],r=[],i=[];e.forEach(e=>{let t=e.data();if(Jv(t)===`link`){r.push(ey(e.id,t));return}let a=$h(e.id,t);if(Yv(t)){n.push(a),i.push(e.id);return}n.push({...a,enabled:!0})}),n.sort(gy),r.sort(gy);let a={schedules:n,links:r,legacyIds:i};b_(ny(a)),C_(n),t({loading:!1,docs:a})},()=>t({loading:!1,docs:_y}));return()=>e()},[]),e}function yy(){let{loading:e,docs:t}=vy();return{loading:e,schedules:(0,r.useMemo)(()=>ny(t),[t])}}function by(){let{loading:e,docs:t}=vy();return{loading:e,schedules:t.schedules}}function xy(){let{loading:e,docs:t}=vy();return{loading:e,schedules:(0,r.useMemo)(()=>{let e=ny(t),n=new Set(e.map(e=>e.id));return[...e,...t.schedules.filter(e=>!n.has(e.id)&&e_(e))]},[t])}}function Sy(e){let[t,n]=(0,r.useState)({id:``,schedule:null});return(0,r.useEffect)(()=>{if(!e)return;let t=!1;return Cy(e).then(r=>{t||n({id:e,schedule:r})}).catch(()=>{t||n({id:e,schedule:null})}),()=>{t=!0}},[e]),e?t.id===e?{loading:!1,schedule:t.schedule}:{loading:!0,schedule:null}:{loading:!1,schedule:null}}async function Cy(e){let t=await(0,s.getDoc)((0,s.doc)(D,Ph,e));if(!t.exists())return null;let n=t.data();if(Jv(n)!==`link`){let e=$h(t.id,n);return Yv(n)?e:{...e,name:``}}let r=ey(t.id,n);if(!r.scheduleId)return null;let i=await(0,s.getDoc)((0,s.doc)(D,Ph,r.scheduleId));return i.exists()?ty(r,$h(i.id,i.data())):null}async function wy(e){if(e.joined)return console.error(`Refused to save a joined bookable as one schedule`,e.id),`That meeting is a booking link on a schedule — change the link or the schedule, not the two at once.`;try{return await(0,s.setDoc)((0,s.doc)(D,Ph,e.id),{...ly(e),updatedAt:Date.now()}),null}catch(e){return console.error(`Could not save the schedule`,e),`The hours could not be saved — make sure you are signed in and that this schedule is yours, then try again.`}}async function Ty(e){try{return await(0,s.setDoc)((0,s.doc)(D,Ph,e.id),{...cy(e),updatedAt:Date.now()}),null}catch(e){return console.error(`Could not save the booking link`,e),`The link could not be saved — make sure you are signed in and that this schedule is yours, then try again.`}}async function Ey(e){try{return await(0,s.deleteDoc)((0,s.doc)(D,Ph,e)),null}catch(e){return console.error(`Could not remove the booking link`,e),`It could not be removed — make sure you are signed in and that this link is yours, then try again.`}}async function Dy(e){if(!e.length)return null;let{schedules:t,links:n}=sy(e);try{let e=Date.now();for(let n of t)await(0,s.setDoc)((0,s.doc)(D,Ph,n.id),{...ly(n),updatedAt:e});for(let t of n)await(0,s.setDoc)((0,s.doc)(D,Ph,t.id),{...cy(t),updatedAt:e});return null}catch(e){return console.error(`Could not split the older schedules into hours and links`,e),`Your older schedules could not be tidied into hours and booking links — make sure you are signed in, then reload the screen.`}}async function Oy(e){try{return await(0,s.deleteDoc)((0,s.doc)(D,Ph,e)),null}catch(e){return console.error(`Could not remove the schedule`,e),`It could not be removed — make sure you are signed in and that this schedule is yours, then try again.`}}var ky=e=>e.name.trim()||e.email.split(`@`)[0]||``;function Ay(){let[e,t]=(0,r.useState)({loading:!0,members:[]});return(0,r.useEffect)(()=>{let e=re(`user_profiles/team`,()=>(0,s.query)((0,s.collection)(D,`user_profiles`),(0,s.where)(`role`,`in`,[`internal`,`admin`])),e=>{let n=[];e.forEach(e=>{let t=e.data()||{},r=t.role===`admin`||t.role===`internal`?t.role:null;!r||t.inactive===!0||n.push({id:e.id,name:String(t.displayName||``),email:String(t.email||``),role:r})}),n.sort((e,t)=>(e.name||e.email).localeCompare(t.name||t.email)),t({loading:!1,members:n})},()=>t({loading:!1,members:[]}));return()=>e()},[]),e}function jy(e,t){let[n,i]=(0,r.useState)([]),a=e.slice().sort().join(`,`),o=t.toISOString();return(0,r.useEffect)(()=>{if(!a)return;let e=new Set(a.split(`,`)),n=new Date(t.getTime()-Ny).toISOString(),r=(0,s.onSnapshot)((0,s.query)((0,s.collection)(D,Fh),(0,s.where)(`start`,`>=`,n)),t=>{let n=[];t.forEach(t=>{let r=t.data()||{},i=String(r.memberId||``);if(!e.has(i))return;let a={memberId:i,start:String(r.start||``),end:String(r.end||``),createdAt:typeof r.createdAt==`number`?r.createdAt:0};a.end>=o&&n.push(a)}),i(n)},()=>i([]));return()=>r()},[a,o]),a?n:My}var My=[],Ny=4*36e5,Py=15*6e4,Fy=`taken`,Iy=`That time was just taken — pick another.`;function Ly(e){let t=Date.parse(e.start),n=Date.parse(e.end),r=Math.ceil((t-Ny)/Py)*Py,i=[];for(let t=r;t<n;t+=Py)i.push(hg(e.memberId,new Date(t).toISOString()));return i}async function Ry(e){let t=hg(e.memberId,e.start);try{return await(0,s.runTransaction)(D,async n=>{let r=(0,s.doc)(D,Fh,t),i=Ly(e).filter(e=>e!==t),[a,...o]=await Promise.all([n.get(r),...i.map(e=>n.get((0,s.doc)(D,Fh,e)))]);if(a.exists())throw Error(Fy);for(let t of o){if(!t.exists())continue;let n=t.data()||{};if(mg({start:String(n.start||``),end:String(n.end||``)},e))throw Error(Fy)}n.set(r,{memberId:e.memberId,start:e.start,end:e.end,createdAt:Date.now()})}),null}catch(e){return e?.message===Fy?Iy:(console.error(`Could not claim the time`,e),`The time could not be saved — check your connection and try again.`)}}async function zy(e){try{await(0,s.deleteDoc)((0,s.doc)(D,Fh,hg(e.memberId,e.start)))}catch{}}async function By(e,t){try{return await(0,s.setDoc)((0,s.doc)(D,Q,hg(e.memberId,e.start)),{memberId:e.memberId,memberName:t.memberName,scheduleId:t.scheduleId,scheduleName:t.scheduleName,paymentId:t.paymentId||``,paymentSession:t.paymentSession||``,start:e.start,end:e.end,timeZone:t.timeZone,name:t.name,email:t.email.trim().toLowerCase(),answers:t.answers,formId:t.formId,entryId:t.entryId,uid:E.currentUser?.uid||`guest`,createdAt:Date.now(),pending:!0}),null}catch(e){return console.error(`Could not write the booking`,e),`The booking could not be saved — check your connection and try again.`}}var Vy=(e,t)=>({id:e,memberId:String(t?.memberId||``),scheduleId:String(t?.scheduleId||``),scheduleName:String(t?.scheduleName||``),own:t?.own===!0,title:String(t?.title||``),color:String(t?.color||``),paymentId:String(t?.paymentId||``),paymentSession:String(t?.paymentSession||``),cancelled:t?.cancelled===!0,cancelledAt:typeof t?.cancelledAt==`number`?t.cancelledAt:0,cancelReason:String(t?.cancelReason||``),cancelledBy:String(t?.cancelledBy||``),cancelledSide:t?.cancelledSide===`host`||t?.cancelledSide===`booker`?t.cancelledSide:``,cancelledByUid:String(t?.cancelledByUid||``),pending:t?.pending===!0,acceptedAt:typeof t?.acceptedAt==`number`?t.acceptedAt:0,heldOnly:!1,copyIds:[e],partySize:1,partyAccepted:t?.pending===!0?0:1,start:String(t?.start||``),end:String(t?.end||``),memberName:String(t?.memberName||``),timeZone:String(t?.timeZone||``),name:String(t?.name||``),email:String(t?.email||``),answers:t?.answers&&typeof t.answers==`object`?Object.fromEntries(Object.entries(t.answers).map(([e,t])=>[e,String(t??``)])):{},formId:String(t?.formId||``),entryId:String(t?.entryId||``),uid:String(t?.uid||``),createdAt:typeof t?.createdAt==`number`?t.createdAt:0});function Hy(e={}){let[t,n]=(0,r.useState)({loading:!0,bookings:[],error:null}),i=(e.members||[]).slice().sort().join(`,`),a=!!e.includePast,o=e.now;return(0,r.useEffect)(()=>{let e=i?new Set(i.split(`,`)):null,t=(o?o():new Date).toISOString(),r=(0,s.onSnapshot)(a?(0,s.collection)(D,Q):(0,s.query)((0,s.collection)(D,Q),(0,s.where)(`end`,`>=`,t)),t=>{let r=(o?o():new Date).toISOString(),i=[];t.forEach(t=>{let n=Vy(t.id,t.data());e&&!e.has(n.memberId)||i.push(n)});let s=i.filter(e=>e.end>=r).sort((e,t)=>e.start.localeCompare(t.start)),c=a?i.filter(e=>e.end<r).sort((e,t)=>t.start.localeCompare(e.start)):[];n({loading:!1,bookings:[...s,...c],error:null})},e=>{n({loading:!1,bookings:[],error:String(e?.code||``).includes(`permission`)?`This is for the team — sign in as a team member or admin to see the bookings.`:`The bookings could not be loaded.`})});return()=>r()},[i,a,o]),t}function Uy(e,t,n){return re(`${Q}/uid=${e}`,()=>(0,s.query)((0,s.collection)(D,Q),(0,s.where)(`uid`,`==`,e)),e=>t(e.docs),n)}function Wy(e,t,n){return re(`${Q}/email=${e}`,()=>(0,s.query)((0,s.collection)(D,Q),(0,s.where)(`email`,`==`,e)),e=>t(e.docs),n)}function Gy(e,t){let[n,i]=(0,r.useState)(Ky),[a,o]=(0,r.useState)(Ky),s=t.trim().toLowerCase();(0,r.useEffect)(()=>{if(e)return Uy(e,e=>i({done:!0,list:e.map(e=>Vy(e.id,e.data())),error:null}),e=>i({done:!0,list:[],error:Jy(e)}))},[e]),(0,r.useEffect)(()=>{if(s)return Wy(s,e=>o({done:!0,list:e.map(e=>Vy(e.id,e.data())),error:null}),e=>o({done:!0,list:[],error:Jy(e)}))},[s]);let c=e?n:qy,l=s?a:qy;return{loading:!c.done||!l.done,bookings:(0,r.useMemo)(()=>Qy(Zy(c.list,l.list)),[c.list,l.list]),error:c.error&&l.error?c.error:null}}var Ky={done:!1,list:[],error:null},qy={done:!0,list:[],error:null},Jy=e=>String(e?.code||``).includes(`permission`)?`These are not readable from this account.`:`The bookings could not be loaded.`,Yy=e=>{let t=new Set(e.legacyIds);return new Set(e.schedules.filter(e=>!t.has(e.id)).map(e=>e.id))},Xy=(e,t)=>e.map(e=>e.scheduleId&&t.has(e.scheduleId)?{...e,scheduleName:``}:e);function Zy(...e){let t=new Map;for(let n of e)for(let e of n)e.own||t.set(e.id,e);return[...t.values()].sort((e,t)=>e.start.localeCompare(t.start))}function Qy(e){let t=new Map;for(let n of e){let e=uy(n),r=t.get(e);r?r.push(n):t.set(e,[n])}return[...t.values()].map(e=>{let t=dy(e);if(e.length===1)return{...e[0],...t};let n=e.map(e=>e.memberName.trim()).filter(Boolean),r=n.length<=1?n.join(``):`${n.slice(0,-1).join(`, `)} and ${n[n.length-1]}`,i=e.find(e=>e.cancelled&&(e.cancelReason||e.cancelledBy));return{...e[0],...t,memberName:r,cancelled:e.every(e=>e.cancelled),cancelReason:i?.cancelReason||e[0].cancelReason,cancelledBy:i?.cancelledBy||e[0].cancelledBy,cancelledSide:i?.cancelledSide||e[0].cancelledSide}})}async function $y(e,t){try{return await(0,s.setDoc)((0,s.doc)(D,Q,e),{color:t},{merge:!0}),null}catch(e){return console.error(`Could not colour the booking`,e),`The colour could not be saved — make sure you are signed in as a team member and try again.`}}async function eb(e){let t={memberId:e.memberId,scheduleId:``,start:e.start,end:e.end},n=await Ry(t);if(n)return n===`That time was just taken — pick another.`?`Something is already booked at that time — pick another.`:n;try{return await(0,s.setDoc)((0,s.doc)(D,Q,hg(e.memberId,e.start)),{memberId:e.memberId,memberName:e.memberName,scheduleId:``,scheduleName:``,paymentId:``,paymentSession:``,own:!0,title:e.title,color:e.color,start:e.start,end:e.end,timeZone:e.timeZone,name:``,email:``,answers:e.note?{note:e.note}:{},formId:``,entryId:``,uid:E.currentUser?.uid||``,createdAt:Date.now()}),null}catch(e){return console.error(`Could not save the event`,e),await zy(t),`The event could not be saved — make sure you are signed in as a team member and try again.`}}async function tb(e){try{return await(0,s.setDoc)((0,s.doc)(D,Q,e),{pending:!1,acceptedAt:Date.now()},{merge:!0}),null}catch(e){return console.error(`Could not accept the booking`,e),`It could not be accepted — make sure you are signed in as a team member and try again.`}}async function nb(e,t={}){try{let n=t.ids?.length?t.ids:await rb(e),r={cancelled:!0,cancelledAt:Date.now(),cancelReason:(t.reason||``).trim(),cancelledBy:(t.by||``).trim(),cancelledSide:t.side||``,...t.byUid&&t.side!==`booker`?{cancelledByUid:t.byUid}:{}};for(let e of n)await(0,s.setDoc)((0,s.doc)(D,Q,e),r,{merge:!0}),await(0,s.deleteDoc)((0,s.doc)(D,Fh,e));return null}catch(e){return console.error(`Could not cancel the booking`,e),t.side===`booker`?`It could not be cancelled — check your connection and try again.`:`It could not be cancelled — make sure you are signed in as a team member and try again.`}}async function rb(e){try{let t=await(0,s.getDoc)((0,s.doc)(D,Q,e)),n=t.exists()&&t.data()||{},r=String(n.entryId||``),i=String(n.start||``);if(!r||!i)return[e];let a=await(0,s.getDocs)((0,s.query)((0,s.collection)(D,Q),(0,s.where)(`entryId`,`==`,r))),o=new Set([e]);return a.forEach(e=>{String(e.data()?.start||``)===i&&o.add(e.id)}),[...o]}catch{return[e]}}async function ib(e,t){try{let n=t?.length?t:await rb(e);for(let e of n)await(0,s.deleteDoc)((0,s.doc)(D,Q,e)),await(0,s.deleteDoc)((0,s.doc)(D,Fh,e));return null}catch(e){return console.error(`Could not remove the booking`,e),`It could not be removed — make sure you are signed in as a team member and try again.`}}async function ab(e,t){try{return await(0,s.deleteDoc)((0,s.doc)(D,Fh,hg(e,t))),null}catch(e){return console.error(`Could not free the held time`,e),`The time could not be freed — make sure you are signed in as a team member and try again.`}}var ob=new Set([`uid`,`formId`,`submittedAt`,`submitterName`,`submitterEmail`,`submitterAvatar`]),sb=(e,t)=>{if(!e||typeof e!=`object`)return{};let n;try{n=JSON.parse(JSON.stringify(e))}catch{return{}}let r={};for(let[e,i]of Object.entries(n||{}))ob.has(e)||e in t||(r[e]=i);return r},cb=r.default.lazy(()=>Promise.resolve().then(()=>require(`./PhoneInputField-CP17hM3V.cjs`))),lb=/^[^\s@,;]+@[^\s@,;.]+(\.[^\s@,;.]+)*\.[a-z]{2,}$/i;function ub({field:e,value:t,error:n,timeZone:a,onTimeZone:o,onChange:s}){let{schedules:c}=xy(),l=A_(e),u=c.filter(e=>l.includes(e.id)&&e_(e)),d=new Set(u.map(e=>e.memberId)).size>1,f=k_(e),p=f===`choose`&&d,[m,h]=(0,r.useState)(!1),g=d&&(f===`all`||p&&m),_=g?Tg(u):[],[v]=(0,r.useState)(()=>new Date),y=jy(u.map(e=>e.memberId),v),b=Kg(t),x=e.look===`calendar`?qv:Iv;return(0,i.jsxs)(`div`,{className:`flex flex-col w-full`,children:[(0,i.jsx)(`label`,{className:`text-[13px] font-medium text-foreground/50 select-none mb-1.5 ml-1`,children:e.label}),p&&(0,i.jsx)(`div`,{className:`flex gap-1.5 mb-2.5 p-1 rounded-[var(--input-radius,0.75rem)] border border-[var(--panel-border)] bg-[var(--panel-bg)] w-fit`,children:[{on:!m,label:`One of them`,v:!1},{on:m,label:`All of them`,v:!0}].map(e=>(0,i.jsx)(`button`,{type:`button`,"aria-pressed":e.on,onClick:()=>{e.v!==m&&(h(e.v),s(``))},className:`px-3 h-8 rounded-[calc(var(--input-radius,0.75rem)-0.25rem)] text-[12.5px] font-semibold transition-all cursor-pointer ${e.on?`bg-accent text-[var(--button-fg,#fff)] shadow-sm`:`text-foreground/55 hover:text-foreground`}`,children:e.label},e.label))}),g&&(0,i.jsxs)(`p`,{className:`text-[12.5px] font-medium text-foreground/50 mb-2 ml-1`,children:[`Times `,I_(_),` are all free.`]}),(0,i.jsx)(x,{members:u,value:b,onChange:e=>s(e?Gg(e,g):``),taken:y,timeZone:a,onTimeZone:o,together:g}),n&&(0,i.jsx)(`span`,{className:`text-xs text-red-500 font-medium mt-1.5 ml-1`,children:n})]})}var db=(e,t)=>{let n=e.find(e=>e.type===`text`&&/name/i.test(String(e.name||``)))||e.find(e=>e.type===`text`);return String(n&&t[n.name]||E.currentUser?.displayName||``).trim()},fb=(e,t)=>{let n=e.find(e=>e.type===`email`);return String(n&&t[n.name]||E.currentUser?.email||``).trim()},pb=(e,t)=>{let n=k_(e);if(!(n===`all`||n===`choose`&&qg(t)))return[];let r=A_(e),i=Tg(T_().filter(e=>r.includes(e.id)&&e_(e)));return i.length>1?i:[]};function mb(e,t){if(!t||!e.some(e=>e?.type===`schedule`))return{};let n={},r=String(t.email||``).trim(),i=e.find(e=>e?.type===`email`&&e.name);i&&r&&(n[i.name]=r);let a=String(t.displayName||``).trim(),o=e.find(e=>e?.type===`text`&&e.name&&/name/i.test(`${e.name} ${e.label||``}`));return o&&a&&(n[o.name]=a),n}var hb=(e,t)=>Object.fromEntries(e.filter(e=>e.type!==`schedule`&&e.name&&t[e.name]!==void 0&&t[e.name]!==``).map(e=>[e.name,String(t[e.name])]));function gb({onClose:e,formId:t,formConfig:a,isInline:o,bare:c,onSubmitted:d,extra:p}){let[h,g]=(0,r.useState)({}),[_,y]=(0,r.useState)(`idle`),[b,x]=(0,r.useState)(``),[S,C]=(0,r.useState)({}),[w,T]=(0,r.useState)(()=>eg()),[O,ee]=(0,r.useState)(``),te=(0,r.useRef)(null),[k,A]=(0,r.useState)(a||null),[j,M]=(0,r.useState)(!a),ne=(0,l.useNavigate)(),N=v(),{user:re}=vn(),ie=mb(k?.fields||[],re),ae=String(re?.displayName||``).trim(),oe=String(re?.email||``).trim(),P=e=>{let t=(typeof window<`u`?window.__FBOS_FORMS__:null)||{};return N?.defaultConfigs?.[e]||N?.defaultConfigs?.[`${e}Form`]||t[e]||(e===`contact`?f:e===`support`?m:null)};(0,r.useEffect)(()=>{if(a){A(a),M(!1);return}if(!t){A(P(`contact`)),M(!1);return}if(!localStorage.getItem(`fbos_custom_form_${t}`)){let e=P(t);if(e){A(e),M(!1);return}}try{let e=localStorage.getItem(`fbos_form_${t}`);e&&(A(JSON.parse(e)),M(!1))}catch{}(async()=>{try{let e=await(0,s.getDoc)((0,s.doc)(D,`sys_forms`,t));if(e.exists()){let n={...e.data(),id:e.id};A(n),localStorage.setItem(`fbos_form_${t}`,JSON.stringify(n))}else{let e=P(t);e&&(A(e),localStorage.removeItem(`fbos_custom_form_${t}`))}}catch(e){console.error(`Failed to load form config:`,e);let n=P(t);n&&A(n)}finally{M(!1)}})()},[t,a]),(0,r.useEffect)(()=>{k&&k.fields&&g(e=>{let t={...e},n=!1;return k.fields.forEach(e=>{(e.name===`contactEmail`||e.type===`email`)&&!t[e.name]&&E.currentUser?.email&&(t[e.name]=E.currentUser.email,n=!0)}),n?t:e})},[k]),(0,r.useEffect)(()=>{function t(t){te.current&&!te.current.contains(t.target)&&e?.()}return document.addEventListener(`mousedown`,t),()=>document.removeEventListener(`mousedown`,t)},[e]),(0,r.useEffect)(()=>{if(o)return;let t=t=>{t.key===`Escape`&&e?.()};return document.addEventListener(`keydown`,t),()=>document.removeEventListener(`keydown`,t)},[e,o]),(0,r.useEffect)(()=>{if(!o)return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=`unset`}},[o]);let F=async n=>{n.preventDefault();let r=(k?.fields||[]).filter(e=>e.type===`email`),i={},o={};r.forEach(e=>{let t=String(h[e.name]??``).trim();t&&(o[e.name]=t,lb.test(t)||(i[e.name]=`That does not look like an email address — check for a typo, e.g. jane@example.com`))}),(k?.fields||[]).filter(e=>e.type===`file`&&e.required&&!h[e.name]).forEach(e=>{i[e.name]=`Please attach a file before sending.`});let c=(k?.fields||[]).filter(e=>e.type===`schedule`);if(c.filter(e=>e.required&&!Kg(h[e.name])).forEach(e=>{i[e.name]=`Pick a time before sending.`}),Object.keys(i).length>0){C(i);return}C({}),y(`loading`),x(``);try{let n=lp(k),r=t||k?.systemName||k?.title||`unknown`,i=[],l=[],u=async()=>{for(let e of l)await zy(e)};for(let e of c){let t=Kg(h[e.name]);if(!t)continue;let n=pb(e,h[e.name]),r=n.length?Mg(t,n):[t],a=[],o=null;for(let e of r){if(o=await Ry(e),o)break;l.push(e);let t=Pg(e,T_());a.push({slot:e,memberName:t?.memberName||``,scheduleId:t?.id||e.scheduleId,scheduleName:o_(t,String(k?.title||``))})}if(o){await u(),C({[e.name]:o}),y(`idle`);return}i.push({field:e,slot:t,whoName:n.length?I_(n):a[0]?.memberName||``,each:a})}let f={...h,...o,...ie};for(let e of i)delete f[e.field.name],Object.assign(f,Jg(e.field.name,e.slot,e.whoName,w));let m=E.currentUser?{uid:E.currentUser.uid,submitterName:E.currentUser.displayName||``,submitterEmail:E.currentUser.email||``,submitterAvatar:E.currentUser.photoURL||``}:{uid:`guest`},_=i.length>0,v;if(_)v=(0,s.doc)((0,s.collection)(D,n));else try{v=await(0,s.addDoc)((0,s.collection)(D,n),{...sb(p,f),...f,...m,formId:r,submittedAt:(0,s.serverTimestamp)()})}catch(e){throw await u(),e}let b=k?.fields||[],S=``;for(let e of i)for(let t of e.each){let e=await By(t.slot,{memberName:t.memberName,scheduleId:t.scheduleId,scheduleName:t.scheduleName,timeZone:w,name:db(b,f),email:fb(b,f),answers:hb(b,f),formId:r,entryId:v.id});if(e){await u(),y(`error`),x(e);return}S||=hg(t.slot.memberId,t.slot.start)}i.length&&ee(i.map(e=>Wg(e.slot,e.whoName,w)).join(`; `)),y(`success`);try{d?.(Object.fromEntries(Object.entries(f).map(([e,t])=>[e,String(t??``)])),_?{collection:Q,id:S}:{collection:n,id:v.id})}catch{}setTimeout(()=>{k?.redirectTo&&!a&&(k.redirectTo.startsWith(`/`)?ne(k.redirectTo):window.location.href=k.redirectTo),e?.(),y(`idle`),g({}),ee(``)},3e3)}catch(e){console.error(`Submission error:`,e),y(`error`),x(`We could not send your message right now. Please try again.`)}},[se,ce]=(0,r.useState)(!1);if((0,r.useEffect)(()=>{let e;return j||!k&&!a?e=setTimeout(()=>ce(!0),150):ce(!1),()=>clearTimeout(e)},[j,k,a]),j||!k)return se?o?(0,i.jsx)(`div`,{className:`w-full flex items-center justify-center py-[10vh]`,children:(0,i.jsxs)(`div`,{className:`p-4 rounded-2xl glass-panel border border-[var(--panel-border)]/40 bg-background/80 shadow-md flex items-center gap-3`,children:[(0,i.jsx)(n.mt,{className:`w-4 h-4 animate-spin text-accent`}),(0,i.jsx)(`span`,{className:`text-[12px] font-medium text-foreground/60 tracking-wide`,children:`Loading form...`})]})}):(0,u.createPortal)((0,i.jsx)(`div`,{className:`fixed inset-0 z-[100] flex items-center justify-center bg-background/10 backdrop-blur-sm`,children:(0,i.jsxs)(`div`,{className:`p-4 rounded-2xl glass-panel border border-[var(--panel-border)]/40 bg-background/80 shadow-xl flex items-center gap-3`,children:[(0,i.jsx)(n.mt,{className:`w-4 h-4 animate-spin text-accent`}),(0,i.jsx)(`span`,{className:`text-[12px] font-medium text-foreground/60 tracking-wide`,children:`Loading form...`})]})}),document.body):null;let I=(k.fields||[]).find(e=>e.type===`schedule`&&e.look===`calendar`),le=I?Kg(h[I.name]):null,ue=!!I&&!le,de=ue?`max-w-[880px]`:`max-w-[500px]`,fe=le?pb(I,h[I.name]):[],pe=le?fe.length?I_(fe):Pg(le,T_())?.memberName||``:``,me=(0,i.jsx)(`div`,{className:`relative z-10 w-full`,children:_===`success`?(0,i.jsxs)(cp.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`flex flex-col items-center justify-center py-8 text-center`,children:[(0,i.jsx)(`div`,{className:`w-16 h-16 rounded-full bg-green-500/10 border border-green-500/20 flex items-center justify-center text-green-500 mb-4`,children:(0,i.jsx)(n.en,{className:`w-8 h-8`})}),(0,i.jsx)(`h4`,{className:`text-lg font-bold text-foreground mb-2`,children:`Message Sent!`}),(0,i.jsx)(`p`,{className:`text-[14px] text-foreground/60 leading-relaxed`,children:`Thank you for your interest. We'll get back to you shortly.`}),O&&(0,i.jsxs)(`p`,{className:`text-[14px] font-semibold text-foreground mt-3`,children:[`Booked: `,O]})]}):_===`loading`?(0,i.jsxs)(cp.div,{initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,i.jsx)(n.mt,{className:`w-10 h-10 animate-spin text-accent mb-4`}),(0,i.jsx)(`h4`,{className:`text-lg font-bold text-foreground tracking-tight`,children:`Processing`}),(0,i.jsx)(`p`,{className:`text-[13px] text-foreground/50 mt-1`,children:`Please wait a moment...`})]}):(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(`div`,{className:o&&c?`sr-only`:`mb-6 text-center`,children:[(0,i.jsx)(`h3`,{className:`text-2xl sm:text-3xl font-extrabold mb-2 text-foreground tracking-tight break-words`,children:k.title}),k.description&&(0,i.jsx)(`p`,{className:`text-[14px] md:text-[15px] font-medium text-foreground/60 tracking-wide leading-relaxed`,children:k.description})]}),_===`error`&&(0,i.jsxs)(cp.div,{initial:{opacity:0,y:-10},animate:{opacity:1,y:0},className:`mb-4 p-3 sm:p-4 rounded-xl bg-red-500/10 border border-red-500/20 flex items-start gap-3`,children:[(0,i.jsx)(n.tn,{className:`w-5 h-5 text-red-500 shrink-0 mt-0.5`}),(0,i.jsx)(`p`,{className:`text-[14px] font-medium text-red-500/90`,children:b})]}),(0,i.jsxs)(`form`,{onSubmit:F,className:`flex flex-col gap-4 sm:gap-5 w-full`,children:[I&&(le?(0,i.jsx)(Rv,{slot:le,timeZone:w,who:pe,onChange:()=>g(e=>({...e,[I.name]:``}))}):(0,i.jsx)(ub,{field:I,value:h[I.name]||``,error:S[I.name],timeZone:w,onTimeZone:T,onChange:e=>g(t=>({...t,[I.name]:e}))})),!ue&&Object.keys(ie).length>0&&(0,i.jsxs)(`div`,{className:`flex items-center gap-2 rounded-xl px-4 py-3 glass-panel`,style:{borderRadius:`var(--input-radius, 0.75rem)`},children:[(0,i.jsx)(`span`,{className:`text-[13px] font-medium text-foreground/50 shrink-0`,children:`Booking as`}),(0,i.jsx)(`span`,{className:`text-[14px] font-semibold text-foreground truncate`,children:[ae,oe].filter(Boolean).join(` · `)})]}),!ue&&[...k.fields||[]].filter(e=>e!==I&&!(e.name in ie)).sort((e,t)=>{let n=e.type===`checkbox`,r=t.type===`checkbox`;return n&&!r?1:!n&&r?-1:0}).map((e,t)=>{if(e.type===`schedule`)return(0,i.jsx)(ub,{field:e,value:h[e.name]||``,error:S[e.name],timeZone:w,onTimeZone:T,onChange:t=>{g(n=>({...n,[e.name]:t})),S[e.name]&&C(t=>{let n={...t};return delete n[e.name],n})}},t);if(e.type===`tel`)return(0,i.jsx)(r.Suspense,{fallback:(0,i.jsx)(`div`,{className:`h-12 w-full glass-panel animate-pulse rounded-xl`}),children:(0,i.jsx)(cb,{field:e,value:h[e.name]||``,onChange:t=>g(n=>({...n,[e.name]:t}))})},t);if(e.type===`file`)return(0,i.jsx)(sh,{field:e,value:h[e.name]||``,error:S[e.name],onChange:t=>{g(n=>({...n,[e.name]:t(n[e.name]||``)})),S[e.name]&&C(t=>{let n={...t};return delete n[e.name],n})}},t);if(e.type===`textarea`)return(0,i.jsxs)(`div`,{className:`flex flex-col w-full relative`,children:[(0,i.jsx)(`label`,{className:`text-[13px] font-medium text-foreground/50 select-none mb-1.5 ml-1`,children:e.label}),(0,i.jsx)(`textarea`,{required:e.required,rows:3,placeholder:e.placeholder,value:h[e.name]||``,onChange:t=>g(n=>({...n,[e.name]:t.target.value})),className:`flex w-full rounded-xl text-[15px] text-foreground px-4 py-3 transition-all duration-300 placeholder:text-foreground/40 focus:outline-none focus:border-accent glow-focus disabled:cursor-not-allowed disabled:opacity-50 glass-panel min-h-[100px] resize-none`})]},t);if(e.type===`select`)return(0,i.jsx)(`div`,{className:`w-full`,children:(0,i.jsx)(zm,{label:e.label,direction:`auto`,value:h[e.name]||``,options:[{value:``,label:(0,i.jsx)(`span`,{className:`text-foreground/40`,children:`Select an option...`})},...(e.options||[]).map(e=>({value:e,label:e}))],onChange:t=>g(n=>({...n,[e.name]:t}))})},t);if(e.type===`checkbox`)return(0,i.jsxs)(`label`,{className:`flex items-center gap-3 w-full cursor-pointer group py-2`,children:[(0,i.jsxs)(`div`,{className:`relative flex items-center justify-center w-5 h-5 rounded border border-foreground/20 bg-background/50 group-hover:border-accent transition-colors`,children:[(0,i.jsx)(`input`,{type:`checkbox`,required:e.required,checked:!!h[e.name],onChange:t=>g(n=>({...n,[e.name]:t.target.checked})),className:`absolute opacity-0 w-full h-full cursor-pointer`}),h[e.name]&&(0,i.jsx)(`span`,{className:`w-2.5 h-2.5 bg-accent rounded-sm shrink-0`})]}),(0,i.jsx)(`span`,{className:`text-[14px] font-medium text-foreground/80 leading-snug group-hover:text-foreground transition-colors`,children:e.label})]},t);if(e.type===`date`){let r=h[e.name]||``;return(0,i.jsxs)(`div`,{className:`flex flex-col w-full relative`,children:[(0,i.jsx)(`label`,{className:`text-[13px] font-medium text-foreground/50 select-none mb-1.5 ml-1`,children:e.label}),(0,i.jsxs)(`div`,{className:`relative flex items-center lift-focus`,children:[(0,i.jsx)(`input`,{type:`date`,required:e.required,value:r,onChange:t=>g(n=>({...n,[e.name]:t.target.value})),className:`date-field block h-12 w-full text-[15px] pl-4 pr-11 py-2 transition-all duration-300 focus:outline-none focus:border-accent glow-focus disabled:cursor-not-allowed disabled:opacity-50 glass-panel ${r?`text-foreground`:`text-foreground/40`}`,style:{borderRadius:`var(--input-radius, 0.75rem)`}}),(0,i.jsx)(n.cn,{className:`w-4 h-4 text-foreground/50 absolute right-4 pointer-events-none`})]})]},t)}return e.type===`age`?(0,i.jsx)(Im,{label:e.label,required:e.required,type:`number`,min:0,max:120,placeholder:e.placeholder||`Age (Max 120)`,value:h[e.name]||``,onChange:t=>{let n=t.target.value;if(n===``)g(t=>({...t,[e.name]:``}));else{let t=Math.max(0,Math.min(120,parseInt(n,10)));g(n=>({...n,[e.name]:isNaN(t)?``:String(t)}))}}},t):e.type===`currency`||e.type===`number`&&e.name===`budget`?(0,i.jsxs)(`div`,{className:`flex flex-col w-full relative`,children:[(0,i.jsx)(`label`,{className:`text-[13px] font-medium text-foreground/50 select-none mb-1.5 ml-1`,children:e.label}),(0,i.jsxs)(`div`,{className:`relative flex items-center justify-center lift-focus`,children:[(0,i.jsx)(`span`,{className:`absolute left-4 text-foreground/70 font-bold flex items-center h-full z-10 pointer-events-none text-[15px]`,children:e.currencySymbol||`$`}),(0,i.jsx)(`input`,{required:e.required,type:`number`,placeholder:e.placeholder,value:h[e.name]||``,onChange:t=>g(n=>({...n,[e.name]:t.target.value})),className:`block h-12 w-full text-[15px] text-foreground pl-8 pr-4 py-2 transition-all duration-300 placeholder:text-foreground/40 focus:outline-none focus:border-accent glow-focus disabled:cursor-not-allowed disabled:opacity-50 glass-panel`,style:{borderRadius:`var(--input-radius, 0.75rem)`}})]})]},t):(0,i.jsx)(Im,{label:e.label,required:e.required,type:e.type,placeholder:e.placeholder,currencySymbol:e.currencySymbol,error:S[e.name],value:h[e.name]||``,onChange:t=>{g(n=>({...n,[e.name]:t.target.value})),S[e.name]&&C(t=>{let n={...t};return delete n[e.name],n})}},t)}),le?(0,i.jsxs)(`div`,{className:`flex flex-col gap-4 pt-1`,children:[(0,i.jsx)(`div`,{className:`h-px bg-[var(--panel-border)]/60`}),(0,i.jsx)(kv,{timeZone:w,onTimeZone:T,action:(0,i.jsx)(Lm,{type:`submit`,className:`max-sm:w-full h-11 px-6 text-[13.5px] font-bold shrink-0`,isLoading:!1,children:k.submitText||k.buttonName||`Submit`})})]}):!ue&&(0,i.jsx)(`div`,{className:`pt-2`,children:(0,i.jsx)(Lm,{type:`submit`,className:`w-full px-6 md:px-8 py-3 md:py-3.5 rounded-xl font-semibold tracking-wide btn-primary text-[15px] shadow-xl transition-all duration-300 hover:-translate-y-1 active:scale-95 flex items-center justify-center`,isLoading:!1,children:k.submitText||k.buttonName||`Submit`})})]})]})});return o&&c?(0,i.jsx)(`div`,{className:`w-full relative`,children:me}):o?(0,i.jsx)(`div`,{className:`w-full flex justify-center flex-col items-center`,children:(0,i.jsxs)(cp.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`w-full ${de} p-6 sm:p-8 lg:p-10 rounded-3xl md:rounded-3xl glass-form relative glow-hover shadow-[0_8px_32px_rgba(0,0,0,0.08)] z-10 mx-auto transition-[max-width] duration-500 ease-out`,children:[(0,i.jsx)(`div`,{className:`absolute -inset-[1px] bg-gradient-to-br from-[var(--primary-glow)] to-transparent opacity-30 blur-[20px] rounded-3xl md:rounded-3xl -z-10`}),me]})}):(0,u.createPortal)((0,i.jsxs)(`div`,{className:`fixed inset-0 z-[100] flex items-start justify-center p-4 py-20 md:py-10 h-[-webkit-fill-available] md:h-screen w-screen overflow-y-auto no-scrollbar`,children:[(0,i.jsx)(cp.div,{onClick:e,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:`fixed inset-0 bg-background/60 backdrop-blur-xl cursor-pointer`}),(0,i.jsxs)(cp.div,{initial:{opacity:0,scale:.95,y:10},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.95,y:10},ref:te,className:`w-full ${de} p-6 sm:p-8 lg:p-10 rounded-3xl md:rounded-3xl glass-popover relative shadow-[0_8px_32px_rgba(0,0,0,0.08)] z-10 mx-auto my-auto border border-[var(--panel-border)] shrink-0 transition-[max-width] duration-500 ease-out`,children:[(0,i.jsx)(`div`,{className:`absolute -inset-[1px] bg-gradient-to-br from-[var(--primary-glow)] to-transparent opacity-30 blur-[20px] rounded-3xl md:rounded-3xl -z-10`}),me]})]}),document.body)}Object.defineProperty(exports,`$`,{enumerable:!0,get:function(){return rv}}),Object.defineProperty(exports,`$i`,{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,`$n`,{enumerable:!0,get:function(){return h_}}),Object.defineProperty(exports,`$r`,{enumerable:!0,get:function(){return Yt}}),Object.defineProperty(exports,`$t`,{enumerable:!0,get:function(){return Ah}}),Object.defineProperty(exports,`A`,{enumerable:!0,get:function(){return fy}}),Object.defineProperty(exports,`Ai`,{enumerable:!0,get:function(){return ke}}),Object.defineProperty(exports,`An`,{enumerable:!0,get:function(){return fg}}),Object.defineProperty(exports,`Ar`,{enumerable:!0,get:function(){return pn}}),Object.defineProperty(exports,`At`,{enumerable:!0,get:function(){return lh}}),Object.defineProperty(exports,`B`,{enumerable:!0,get:function(){return Hv}}),Object.defineProperty(exports,`Bi`,{enumerable:!0,get:function(){return ae}}),Object.defineProperty(exports,`Bn`,{enumerable:!0,get:function(){return K_}}),Object.defineProperty(exports,`Br`,{enumerable:!0,get:function(){return Ot}}),Object.defineProperty(exports,`Bt`,{enumerable:!0,get:function(){return Lg}}),Object.defineProperty(exports,`C`,{enumerable:!0,get:function(){return Ay}}),Object.defineProperty(exports,`Ci`,{enumerable:!0,get:function(){return Ue}}),Object.defineProperty(exports,`Cn`,{enumerable:!0,get:function(){return v_}}),Object.defineProperty(exports,`Cr`,{enumerable:!0,get:function(){return vn}}),Object.defineProperty(exports,`Ct`,{enumerable:!0,get:function(){return E_}}),Object.defineProperty(exports,`D`,{enumerable:!0,get:function(){return Xy}}),Object.defineProperty(exports,`Di`,{enumerable:!0,get:function(){return je}}),Object.defineProperty(exports,`Dn`,{enumerable:!0,get:function(){return nv}}),Object.defineProperty(exports,`Dr`,{enumerable:!0,get:function(){return rn}}),Object.defineProperty(exports,`Dt`,{enumerable:!0,get:function(){return fh}}),Object.defineProperty(exports,`E`,{enumerable:!0,get:function(){return Yy}}),Object.defineProperty(exports,`Ei`,{enumerable:!0,get:function(){return be}}),Object.defineProperty(exports,`En`,{enumerable:!0,get:function(){return w_}}),Object.defineProperty(exports,`Er`,{enumerable:!0,get:function(){return sn}}),Object.defineProperty(exports,`Et`,{enumerable:!0,get:function(){return mh}}),Object.defineProperty(exports,`F`,{enumerable:!0,get:function(){return oy}}),Object.defineProperty(exports,`Fi`,{enumerable:!0,get:function(){return it}}),Object.defineProperty(exports,`Fn`,{enumerable:!0,get:function(){return Ig}}),Object.defineProperty(exports,`Fr`,{enumerable:!0,get:function(){return cn}}),Object.defineProperty(exports,`Ft`,{enumerable:!0,get:function(){return Lh}}),Object.defineProperty(exports,`G`,{enumerable:!0,get:function(){return Kv}}),Object.defineProperty(exports,`Gi`,{enumerable:!0,get:function(){return de}}),Object.defineProperty(exports,`Gn`,{enumerable:!0,get:function(){return hg}}),Object.defineProperty(exports,`Gr`,{enumerable:!0,get:function(){return Vt}}),Object.defineProperty(exports,`Gt`,{enumerable:!0,get:function(){return Cg}}),Object.defineProperty(exports,`H`,{enumerable:!0,get:function(){return Bv}}),Object.defineProperty(exports,`Hi`,{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,`Hn`,{enumerable:!0,get:function(){return i_}}),Object.defineProperty(exports,`Hr`,{enumerable:!0,get:function(){return At}}),Object.defineProperty(exports,`Ht`,{enumerable:!0,get:function(){return kh}}),Object.defineProperty(exports,`I`,{enumerable:!0,get:function(){return iy}}),Object.defineProperty(exports,`Ii`,{enumerable:!0,get:function(){return Ne}}),Object.defineProperty(exports,`In`,{enumerable:!0,get:function(){return F_}}),Object.defineProperty(exports,`Ir`,{enumerable:!0,get:function(){return Dt}}),Object.defineProperty(exports,`It`,{enumerable:!0,get:function(){return Rh}}),Object.defineProperty(exports,`J`,{enumerable:!0,get:function(){return Lv}}),Object.defineProperty(exports,`Ji`,{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,`Jn`,{enumerable:!0,get:function(){return Hg}}),Object.defineProperty(exports,`Jr`,{enumerable:!0,get:function(){return Lt}}),Object.defineProperty(exports,`Jt`,{enumerable:!0,get:function(){return Hh}}),Object.defineProperty(exports,`K`,{enumerable:!0,get:function(){return Uv}}),Object.defineProperty(exports,`Ki`,{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,`Kn`,{enumerable:!0,get:function(){return c_}}),Object.defineProperty(exports,`Kr`,{enumerable:!0,get:function(){return Ut}}),Object.defineProperty(exports,`Kt`,{enumerable:!0,get:function(){return wg}}),Object.defineProperty(exports,`L`,{enumerable:!0,get:function(){return ry}}),Object.defineProperty(exports,`Li`,{enumerable:!0,get:function(){return He}}),Object.defineProperty(exports,`Ln`,{enumerable:!0,get:function(){return u_}}),Object.defineProperty(exports,`Lr`,{enumerable:!0,get:function(){return St}}),Object.defineProperty(exports,`Lt`,{enumerable:!0,get:function(){return yg}}),Object.defineProperty(exports,`M`,{enumerable:!0,get:function(){return Qv}}),Object.defineProperty(exports,`Mi`,{enumerable:!0,get:function(){return Me}}),Object.defineProperty(exports,`Mn`,{enumerable:!0,get:function(){return Tg}}),Object.defineProperty(exports,`Mr`,{enumerable:!0,get:function(){return on}}),Object.defineProperty(exports,`Mt`,{enumerable:!0,get:function(){return gg}}),Object.defineProperty(exports,`N`,{enumerable:!0,get:function(){return ty}}),Object.defineProperty(exports,`Ni`,{enumerable:!0,get:function(){return Te}}),Object.defineProperty(exports,`Nn`,{enumerable:!0,get:function(){return j_}}),Object.defineProperty(exports,`Nr`,{enumerable:!0,get:function(){return un}}),Object.defineProperty(exports,`Nt`,{enumerable:!0,get:function(){return bg}}),Object.defineProperty(exports,`O`,{enumerable:!0,get:function(){return By}}),Object.defineProperty(exports,`Oi`,{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(exports,`On`,{enumerable:!0,get:function(){return I_}}),Object.defineProperty(exports,`Or`,{enumerable:!0,get:function(){return fn}}),Object.defineProperty(exports,`Ot`,{enumerable:!0,get:function(){return G_}}),Object.defineProperty(exports,`P`,{enumerable:!0,get:function(){return ay}}),Object.defineProperty(exports,`Pi`,{enumerable:!0,get:function(){return nt}}),Object.defineProperty(exports,`Pn`,{enumerable:!0,get:function(){return Mg}}),Object.defineProperty(exports,`Pr`,{enumerable:!0,get:function(){return $t}}),Object.defineProperty(exports,`Pt`,{enumerable:!0,get:function(){return zh}}),Object.defineProperty(exports,`Q`,{enumerable:!0,get:function(){return uv}}),Object.defineProperty(exports,`Qi`,{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,`Qn`,{enumerable:!0,get:function(){return Ug}}),Object.defineProperty(exports,`Qr`,{enumerable:!0,get:function(){return Bt}}),Object.defineProperty(exports,`Qt`,{enumerable:!0,get:function(){return Mh}}),Object.defineProperty(exports,`R`,{enumerable:!0,get:function(){return Xv}}),Object.defineProperty(exports,`Ri`,{enumerable:!0,get:function(){return Je}}),Object.defineProperty(exports,`Rn`,{enumerable:!0,get:function(){return r_}}),Object.defineProperty(exports,`Rr`,{enumerable:!0,get:function(){return Ct}}),Object.defineProperty(exports,`Rt`,{enumerable:!0,get:function(){return Ih}}),Object.defineProperty(exports,`S`,{enumerable:!0,get:function(){return by}}),Object.defineProperty(exports,`Si`,{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,`Sn`,{enumerable:!0,get:function(){return $g}}),Object.defineProperty(exports,`Sr`,{enumerable:!0,get:function(){return _n}}),Object.defineProperty(exports,`St`,{enumerable:!0,get:function(){return Nh}}),Object.defineProperty(exports,`T`,{enumerable:!0,get:function(){return Uy}}),Object.defineProperty(exports,`Ti`,{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(exports,`Tn`,{enumerable:!0,get:function(){return x_}}),Object.defineProperty(exports,`Tr`,{enumerable:!0,get:function(){return dn}}),Object.defineProperty(exports,`Tt`,{enumerable:!0,get:function(){return D_}}),Object.defineProperty(exports,`U`,{enumerable:!0,get:function(){return Vv}}),Object.defineProperty(exports,`Ui`,{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,`Un`,{enumerable:!0,get:function(){return L_}}),Object.defineProperty(exports,`Ur`,{enumerable:!0,get:function(){return Rt}}),Object.defineProperty(exports,`Ut`,{enumerable:!0,get:function(){return l_}}),Object.defineProperty(exports,`V`,{enumerable:!0,get:function(){return qv}}),Object.defineProperty(exports,`Vi`,{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,`Vn`,{enumerable:!0,get:function(){return m_}}),Object.defineProperty(exports,`Vr`,{enumerable:!0,get:function(){return Tt}}),Object.defineProperty(exports,`Vt`,{enumerable:!0,get:function(){return Sh}}),Object.defineProperty(exports,`W`,{enumerable:!0,get:function(){return Wv}}),Object.defineProperty(exports,`Wi`,{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,`Wn`,{enumerable:!0,get:function(){return pg}}),Object.defineProperty(exports,`Wr`,{enumerable:!0,get:function(){return wt}}),Object.defineProperty(exports,`Wt`,{enumerable:!0,get:function(){return n_}}),Object.defineProperty(exports,`X`,{enumerable:!0,get:function(){return kv}}),Object.defineProperty(exports,`Xi`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,`Xn`,{enumerable:!0,get:function(){return k_}}),Object.defineProperty(exports,`Xr`,{enumerable:!0,get:function(){return Pt}}),Object.defineProperty(exports,`Xt`,{enumerable:!0,get:function(){return e_}}),Object.defineProperty(exports,`Y`,{enumerable:!0,get:function(){return Mv}}),Object.defineProperty(exports,`Yi`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`Yn`,{enumerable:!0,get:function(){return jg}}),Object.defineProperty(exports,`Yr`,{enumerable:!0,get:function(){return Ft}}),Object.defineProperty(exports,`Yt`,{enumerable:!0,get:function(){return Yh}}),Object.defineProperty(exports,`Z`,{enumerable:!0,get:function(){return Ov}}),Object.defineProperty(exports,`Zi`,{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,`Zn`,{enumerable:!0,get:function(){return A_}}),Object.defineProperty(exports,`Zr`,{enumerable:!0,get:function(){return It}}),Object.defineProperty(exports,`Zt`,{enumerable:!0,get:function(){return jh}}),Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return yy}}),Object.defineProperty(exports,`_i`,{enumerable:!0,get:function(){return Qe}}),Object.defineProperty(exports,`_n`,{enumerable:!0,get:function(){return Bg}}),Object.defineProperty(exports,`_r`,{enumerable:!0,get:function(){return Im}}),Object.defineProperty(exports,`_t`,{enumerable:!0,get:function(){return xv}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return Ry}}),Object.defineProperty(exports,`aa`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`ai`,{enumerable:!0,get:function(){return bt}}),Object.defineProperty(exports,`an`,{enumerable:!0,get:function(){return _h}}),Object.defineProperty(exports,`ar`,{enumerable:!0,get:function(){return sh}}),Object.defineProperty(exports,`at`,{enumerable:!0,get:function(){return ov}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return vy}}),Object.defineProperty(exports,`bi`,{enumerable:!0,get:function(){return rt}}),Object.defineProperty(exports,`bn`,{enumerable:!0,get:function(){return g_}}),Object.defineProperty(exports,`br`,{enumerable:!0,get:function(){return cp}}),Object.defineProperty(exports,`bt`,{enumerable:!0,get:function(){return hv}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return zy}}),Object.defineProperty(exports,`ci`,{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,`cn`,{enumerable:!0,get:function(){return Wg}}),Object.defineProperty(exports,`cr`,{enumerable:!0,get:function(){return qm}}),Object.defineProperty(exports,`ct`,{enumerable:!0,get:function(){return _v}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return Ty}}),Object.defineProperty(exports,`di`,{enumerable:!0,get:function(){return Xe}}),Object.defineProperty(exports,`dn`,{enumerable:!0,get:function(){return eg}}),Object.defineProperty(exports,`dr`,{enumerable:!0,get:function(){return th}}),Object.defineProperty(exports,`dt`,{enumerable:!0,get:function(){return vv}}),Object.defineProperty(exports,`ea`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,`ei`,{enumerable:!0,get:function(){return ut}}),Object.defineProperty(exports,`en`,{enumerable:!0,get:function(){return R_}}),Object.defineProperty(exports,`er`,{enumerable:!0,get:function(){return Y_}}),Object.defineProperty(exports,`et`,{enumerable:!0,get:function(){return bv}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return wy}}),Object.defineProperty(exports,`fi`,{enumerable:!0,get:function(){return $e}}),Object.defineProperty(exports,`fn`,{enumerable:!0,get:function(){return Xg}}),Object.defineProperty(exports,`fr`,{enumerable:!0,get:function(){return rh}}),Object.defineProperty(exports,`ft`,{enumerable:!0,get:function(){return dv}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return Hy}}),Object.defineProperty(exports,`gi`,{enumerable:!0,get:function(){return ve}}),Object.defineProperty(exports,`gn`,{enumerable:!0,get:function(){return zg}}),Object.defineProperty(exports,`gr`,{enumerable:!0,get:function(){return Lm}}),Object.defineProperty(exports,`gt`,{enumerable:!0,get:function(){return Cv}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return ky}}),Object.defineProperty(exports,`hi`,{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,`hn`,{enumerable:!0,get:function(){return vg}}),Object.defineProperty(exports,`hr`,{enumerable:!0,get:function(){return zm}}),Object.defineProperty(exports,`ht`,{enumerable:!0,get:function(){return yv}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return nb}}),Object.defineProperty(exports,`ia`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`ii`,{enumerable:!0,get:function(){return vt}}),Object.defineProperty(exports,`in`,{enumerable:!0,get:function(){return Fg}}),Object.defineProperty(exports,`ir`,{enumerable:!0,get:function(){return lg}}),Object.defineProperty(exports,`it`,{enumerable:!0,get:function(){return av}}),Object.defineProperty(exports,`j`,{enumerable:!0,get:function(){return my}}),Object.defineProperty(exports,`ji`,{enumerable:!0,get:function(){return Be}}),Object.defineProperty(exports,`jn`,{enumerable:!0,get:function(){return Sg}}),Object.defineProperty(exports,`jr`,{enumerable:!0,get:function(){return an}}),Object.defineProperty(exports,`jt`,{enumerable:!0,get:function(){return Bh}}),Object.defineProperty(exports,`k`,{enumerable:!0,get:function(){return hy}}),Object.defineProperty(exports,`ki`,{enumerable:!0,get:function(){return Ke}}),Object.defineProperty(exports,`kn`,{enumerable:!0,get:function(){return B_}}),Object.defineProperty(exports,`kr`,{enumerable:!0,get:function(){return en}}),Object.defineProperty(exports,`kt`,{enumerable:!0,get:function(){return ch}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return Ey}}),Object.defineProperty(exports,`li`,{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,`ln`,{enumerable:!0,get:function(){return Xh}}),Object.defineProperty(exports,`lr`,{enumerable:!0,get:function(){return nh}}),Object.defineProperty(exports,`lt`,{enumerable:!0,get:function(){return sv}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return Dy}}),Object.defineProperty(exports,`mi`,{enumerable:!0,get:function(){return _e}}),Object.defineProperty(exports,`mn`,{enumerable:!0,get:function(){return xg}}),Object.defineProperty(exports,`mr`,{enumerable:!0,get:function(){return Km}}),Object.defineProperty(exports,`mt`,{enumerable:!0,get:function(){return pv}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return tb}}),Object.defineProperty(exports,`na`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`ni`,{enumerable:!0,get:function(){return pt}}),Object.defineProperty(exports,`nn`,{enumerable:!0,get:function(){return tv}}),Object.defineProperty(exports,`nr`,{enumerable:!0,get:function(){return Ag}}),Object.defineProperty(exports,`nt`,{enumerable:!0,get:function(){return mv}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return ib}}),Object.defineProperty(exports,`oa`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`oi`,{enumerable:!0,get:function(){return Le}}),Object.defineProperty(exports,`on`,{enumerable:!0,get:function(){return gh}}),Object.defineProperty(exports,`or`,{enumerable:!0,get:function(){return oh}}),Object.defineProperty(exports,`ot`,{enumerable:!0,get:function(){return cv}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return $y}}),Object.defineProperty(exports,`pi`,{enumerable:!0,get:function(){return Ve}}),Object.defineProperty(exports,`pn`,{enumerable:!0,get:function(){return _g}}),Object.defineProperty(exports,`pr`,{enumerable:!0,get:function(){return Ym}}),Object.defineProperty(exports,`pt`,{enumerable:!0,get:function(){return wv}}),Object.defineProperty(exports,`q`,{enumerable:!0,get:function(){return Rv}}),Object.defineProperty(exports,`qi`,{enumerable:!0,get:function(){return le}}),Object.defineProperty(exports,`qn`,{enumerable:!0,get:function(){return d_}}),Object.defineProperty(exports,`qr`,{enumerable:!0,get:function(){return zt}}),Object.defineProperty(exports,`qt`,{enumerable:!0,get:function(){return wh}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return eb}}),Object.defineProperty(exports,`ra`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`ri`,{enumerable:!0,get:function(){return ft}}),Object.defineProperty(exports,`rn`,{enumerable:!0,get:function(){return P_}}),Object.defineProperty(exports,`rr`,{enumerable:!0,get:function(){return sg}}),Object.defineProperty(exports,`rt`,{enumerable:!0,get:function(){return lv}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return ab}}),Object.defineProperty(exports,`sa`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`si`,{enumerable:!0,get:function(){return Fe}}),Object.defineProperty(exports,`sn`,{enumerable:!0,get:function(){return Eh}}),Object.defineProperty(exports,`sr`,{enumerable:!0,get:function(){return Xm}}),Object.defineProperty(exports,`st`,{enumerable:!0,get:function(){return fv}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return gb}}),Object.defineProperty(exports,`ta`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`ti`,{enumerable:!0,get:function(){return ht}}),Object.defineProperty(exports,`tn`,{enumerable:!0,get:function(){return s_}}),Object.defineProperty(exports,`tr`,{enumerable:!0,get:function(){return Ng}}),Object.defineProperty(exports,`tt`,{enumerable:!0,get:function(){return iv}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return Oy}}),Object.defineProperty(exports,`ui`,{enumerable:!0,get:function(){return Ye}}),Object.defineProperty(exports,`un`,{enumerable:!0,get:function(){return p_}}),Object.defineProperty(exports,`ur`,{enumerable:!0,get:function(){return Qm}}),Object.defineProperty(exports,`ut`,{enumerable:!0,get:function(){return Dv}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return Gy}}),Object.defineProperty(exports,`vi`,{enumerable:!0,get:function(){return st}}),Object.defineProperty(exports,`vn`,{enumerable:!0,get:function(){return N_}}),Object.defineProperty(exports,`vr`,{enumerable:!0,get:function(){return Fm}}),Object.defineProperty(exports,`vt`,{enumerable:!0,get:function(){return Ev}}),Object.defineProperty(exports,`w`,{enumerable:!0,get:function(){return Wy}}),Object.defineProperty(exports,`wi`,{enumerable:!0,get:function(){return qe}}),Object.defineProperty(exports,`wn`,{enumerable:!0,get:function(){return bh}}),Object.defineProperty(exports,`wr`,{enumerable:!0,get:function(){return ln}}),Object.defineProperty(exports,`wt`,{enumerable:!0,get:function(){return Z_}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return jy}}),Object.defineProperty(exports,`xi`,{enumerable:!0,get:function(){return Ze}}),Object.defineProperty(exports,`xn`,{enumerable:!0,get:function(){return Qg}}),Object.defineProperty(exports,`xr`,{enumerable:!0,get:function(){return dd}}),Object.defineProperty(exports,`xt`,{enumerable:!0,get:function(){return Q}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return Sy}}),Object.defineProperty(exports,`yi`,{enumerable:!0,get:function(){return Ge}}),Object.defineProperty(exports,`yn`,{enumerable:!0,get:function(){return __}}),Object.defineProperty(exports,`yr`,{enumerable:!0,get:function(){return up}}),Object.defineProperty(exports,`yt`,{enumerable:!0,get:function(){return Tv}}),Object.defineProperty(exports,`z`,{enumerable:!0,get:function(){return Zv}}),Object.defineProperty(exports,`zi`,{enumerable:!0,get:function(){return We}}),Object.defineProperty(exports,`zn`,{enumerable:!0,get:function(){return Zg}}),Object.defineProperty(exports,`zr`,{enumerable:!0,get:function(){return kt}}),Object.defineProperty(exports,`zt`,{enumerable:!0,get:function(){return Q_}});
|