{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/Gdw4PFaebBg7otYjbV0a/dcn7aXLoeairMqUE2xn1/util.js", "ssg:https://framerusercontent.com/modules/a9L165TciBHZyMGFIwtU/yEBIwtxcNyYOPf43vN85/styles.js", "ssg:https://framerusercontent.com/modules/OgWgndAFyvu2Uat4ngWh/46M5bSSTGskoeUN6XI4j/ssr.js", "ssg:https://framerusercontent.com/modules/nND5KreKFoT8ms7HKata/Vmif4IbMKvsbPZXwEHBz/formatter.js", "ssg:https://framerusercontent.com/modules/AG73ox21oKVyje0VXkyK/HNU4IYD8anfZXhjtw7bP/index.js", "ssg:https://framer.com/m/NumberFlowReact-yGat.js", "ssg:https://framerusercontent.com/modules/DPwgyTlYyPqF8EltT6Wk/7V1eDDmIfgMJSy3hQjXS/NumberFlow_Prod.js", "ssg:https://framerusercontent.com/modules/O43u43t5NmwP8IsuJCWH/13yQyyywl5iEAURE60t3/B0Q6MGivd.js", "ssg:https://framerusercontent.com/modules/zYxIQYjt4R6OwcuScLYo/fu04tgPhcCRf6ACjCWYo/uMVHIHtKf.js"],
  "sourcesContent": ["export const BROWSER=typeof window!==\"undefined\";export const createElement=(tagName,optionsOrChildren,_children)=>{const element=document.createElement(tagName);const[options,children]=Array.isArray(optionsOrChildren)?[undefined,optionsOrChildren]:[optionsOrChildren,_children];if(options)Object.assign(element,options);children===null||children===void 0?void 0:children.forEach(child=>element.appendChild(child));return element;};// Makeshift .offsetRight\nexport const offset=(el,justify)=>{var _this;var _offsetWidth;return justify===\"left\"?el.offsetLeft:((_offsetWidth=(_this=el.offsetParent instanceof HTMLElement?el.offsetParent:null)===null||_this===void 0?void 0:_this.offsetWidth)!==null&&_offsetWidth!==void 0?_offsetWidth:0)-el.offsetWidth-el.offsetLeft;};export const visible=el=>el.offsetWidth>0&&el.offsetHeight>0;// HMR-safe customElements.define\nexport const define=(name,constructor)=>{if(BROWSER&&customElements.get(name)!==constructor)customElements.define(name,constructor);};export function forEach(arr,fn,{reverse=false}={}){const len=arr.length;for(let i=reverse?len-1:0;reverse?i>=0:i<len;reverse?i--:i++){fn(arr[i],i);}}// Math.max that handles nullish numbers\nexport const max=(n1,n2)=>{if(n1==null)return n2;if(n2==null)return n1;return Math.max(n1,n2);};export const html=String.raw;export const css=String.raw;\nexport const __FramerMetadata__ = {\"exports\":{\"Mutable\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Justify\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"define\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"visible\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"offset\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"html\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createElement\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"forEach\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"max\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"BROWSER\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HTMLProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./util.map", "import{css,BROWSER}from\"https://framerusercontent.com/modules/Gdw4PFaebBg7otYjbV0a/dcn7aXLoeairMqUE2xn1/util.js\";export const supportsLinear=BROWSER&&typeof CSS!==\"undefined\"&&CSS.supports&&CSS.supports(\"animation-timing-function\",\"linear(1,2)\");export const supportsMod=BROWSER&&typeof CSS!==\"undefined\"&&CSS.supports&&CSS.supports(\"line-height\",\"mod(1,1)\");export const prefersReducedMotion=BROWSER&&typeof matchMedia!==\"undefined\"?matchMedia(\"(prefers-reduced-motion: reduce)\"):null;// Register animated vars:\nexport const opacityDeltaVar=\"--_number-flow-d-opacity\";export const widthDeltaVar=\"--_number-flow-d-width\";export const dxVar=\"--_number-flow-dx\";export const deltaVar=\"--_number-flow-d\";export const supportsAtProperty=(()=>{try{CSS.registerProperty({name:opacityDeltaVar,syntax:\"<number>\",inherits:false,initialValue:\"0\"});CSS.registerProperty({name:dxVar,syntax:\"<length>\",inherits:true,initialValue:\"0px\"});CSS.registerProperty({name:widthDeltaVar,syntax:\"<number>\",inherits:false,initialValue:\"0\"});CSS.registerProperty({name:deltaVar,syntax:\"<number>\",inherits:true,initialValue:\"0\"});return true;}catch{return false;}})();// Don't use CSS.registerProperty for vars needed during SSR:\nexport const charHeight=\"var(--number-flow-char-height, 1em)\";// Mask technique taken from:\n// https://expensive.toys/blog/blur-vignette\nexport const maskHeight=\"var(--number-flow-mask-height, 0.25em)\";export const halfMaskHeight=`calc(${maskHeight} / 2)`;const maskWidth=\"var(--number-flow-mask-width, 0.5em)\";const scaledMaskWidth=`calc(${maskWidth} / var(--scale-x))`;const cornerGradient=`#000 0, transparent 71%`// or transparent ${maskWidth}\n;const styles=css`\n\t:host {\n\t\tdisplay: inline-block;\n\t\tdirection: ltr;\n\t\twhite-space: nowrap;\n\t\tisolation: isolate; /* for .number z-index */\n\t\t/* Technically this is only needed on the .number, but applying it here makes the ::selection the same height for the whole element: */\n\t\tline-height: ${charHeight} !important;\n\t}\n\n\t.number,\n\t.number__inner {\n\t\tdisplay: inline-block;\n\t\ttransform-origin: left top;\n\t}\n\n\t:host([data-will-change]) :is(.number, .number__inner, .section, .digit, .digit__num, .symbol) {\n\t\twill-change: transform;\n\t}\n\n\t.number {\n\t\t--scale-x: calc(1 + var(${widthDeltaVar}) / var(--width));\n\t\ttransform: translateX(var(${dxVar})) scaleX(var(--scale-x));\n\n\t\tmargin: 0 calc(-1 * ${maskWidth});\n\t\tposition: relative; /* for z-index */\n\n\t\t/* overflow: clip; /* helpful to not affect page layout, but breaks baseline alignment in Safari :/ */\n\t\t/* -webkit- prefixed properties have better support than unprefixed ones: */\n\t\t-webkit-mask-image:\n\t\t\t/* Horizontal: */\n\t\t\tlinear-gradient(\n\t\t\t\tto right,\n\t\t\t\ttransparent 0,\n\t\t\t\t#000 ${scaledMaskWidth},\n\t\t\t\t#000 calc(100% - ${scaledMaskWidth}),\n\t\t\t\ttransparent\n\t\t\t),\n\t\t\t/* Vertical: */\n\t\t\t\tlinear-gradient(\n\t\t\t\t\tto bottom,\n\t\t\t\t\ttransparent 0,\n\t\t\t\t\t#000 ${maskHeight},\n\t\t\t\t\t#000 calc(100% - ${maskHeight}),\n\t\t\t\t\ttransparent 100%\n\t\t\t\t),\n\t\t\t/* TL corner */ radial-gradient(at bottom right, ${cornerGradient}),\n\t\t\t/* TR corner */ radial-gradient(at bottom left, ${cornerGradient}),\n\t\t\t/* BR corner */ radial-gradient(at top left, ${cornerGradient}),\n\t\t\t/* BL corner */ radial-gradient(at top right, ${cornerGradient});\n\t\t-webkit-mask-size:\n\t\t\t100% calc(100% - ${maskHeight} * 2),\n\t\t\tcalc(100% - ${scaledMaskWidth} * 2) 100%,\n\t\t\t${scaledMaskWidth} ${maskHeight},\n\t\t\t${scaledMaskWidth} ${maskHeight},\n\t\t\t${scaledMaskWidth} ${maskHeight},\n\t\t\t${scaledMaskWidth} ${maskHeight};\n\t\t-webkit-mask-position:\n\t\t\tcenter,\n\t\t\tcenter,\n\t\t\ttop left,\n\t\t\ttop right,\n\t\t\tbottom right,\n\t\t\tbottom left;\n\t\t-webkit-mask-repeat: no-repeat;\n\t}\n\n\t.number__inner {\n\t\tpadding: ${halfMaskHeight} ${maskWidth};\n\t\t/* invert parent's: */\n\t\ttransform: scaleX(calc(1 / var(--scale-x))) translateX(calc(-1 * var(${dxVar})));\n\t}\n\n\t/* Put number underneath other sections. Negative z-index messed up text cursor and selection, weirdly: */\n\t:host > :not(.number) {\n\t\tz-index: 5;\n\t}\n\n\t.section,\n\t.symbol {\n\t\tdisplay: inline-block;\n\t\t/* for __exiting: */\n\t\tposition: relative;\n\t\tisolation: isolate; /* also helpful for mix-blend-mode in symbol__value */\n\t}\n\n\t.section::after {\n\t\t/*\n\t\t * We seem to need some type of character to ensure baseline alignment continues working\n\t\t * even when empty\n\t\t */\n\t\tcontent: '\\200b'; /* zero-width space */\n\t\tdisplay: inline-block;\n\t}\n\n\t.section--justify-left {\n\t\ttransform-origin: center left;\n\t}\n\n\t.section--justify-right {\n\t\ttransform-origin: center right;\n\t}\n\n\t.section__exiting,\n\t.symbol__exiting {\n\t\tmargin: 0 !important;\n\t\tposition: absolute !important;\n\t\tz-index: -1;\n\t}\n\n\t.digit {\n\t\tdisplay: inline-block;\n\t\tposition: relative;\n\t\t--c: var(--current) + var(${deltaVar});\n\t}\n\n\t.digit__num,\n\t.number .section::after {\n\t\tpadding: ${halfMaskHeight} 0;\n\t}\n\n\t.digit__num {\n\t\tdisplay: inline-block;\n\t\t/* Claude + https://buildui.com/recipes/animated-counter */\n\t\t--offset-raw: mod(var(--length) + var(--n) - mod(var(--c), var(--length)), var(--length));\n\t\t--offset: calc(\n\t\t\tvar(--offset-raw) - var(--length) * round(down, var(--offset-raw) / (var(--length) / 2), 1)\n\t\t);\n\t\t/* Technically we just need var(--offset)*100%, but clamping should reduce the layer size: */\n\t\t--y: clamp(-100%, var(--offset) * 100%, 100%);\n\t\ttransform: translateY(var(--y));\n\t}\n\n\t.digit__num:not(.is-current) {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 50%;\n\t\ttransform: translateX(-50%) translateY(var(--y));\n\t}\n\n\t.digit:not(.is-spinning) .digit__num:not(.is-current) {\n\t\tdisplay: none;\n\t}\n\n\t.symbol__value {\n\t\tdisplay: inline-block;\n\t\tmix-blend-mode: plus-lighter; /* better crossfades e.g. + <-> - */\n\t\twhite-space: pre; /* some symbols are spaces or thin spaces */\n\t}\n\n\t.section--justify-left .symbol__exiting {\n\t\tleft: 0;\n\t}\n\n\t.section--justify-right .symbol__exiting {\n\t\tright: 0;\n\t}\n\n\t.animate-presence {\n\t\topacity: calc(1 + var(${opacityDeltaVar}));\n\t}\n`;export default styles;\nexport const __FramerMetadata__ = {\"exports\":{\"supportsMod\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"prefersReducedMotion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"dxVar\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"deltaVar\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"halfMaskHeight\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"supportsLinear\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"maskHeight\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"opacityDeltaVar\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"charHeight\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"widthDeltaVar\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"supportsAtProperty\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./styles.map", "import{css,html,BROWSER}from\"https://framerusercontent.com/modules/Gdw4PFaebBg7otYjbV0a/dcn7aXLoeairMqUE2xn1/util.js\";import{charHeight,halfMaskHeight,maskHeight}from\"https://framerusercontent.com/modules/a9L165TciBHZyMGFIwtU/yEBIwtxcNyYOPf43vN85/styles.js\";export const ServerSafeHTMLElement=BROWSER?HTMLElement:class{}// for types\n;const styles=css`\n\t:host {\n\t\tdisplay: inline-block;\n\t\tdirection: ltr;\n\t\twhite-space: nowrap;\n\t\tline-height: ${charHeight} !important;\n\t}\n\n\tspan {\n\t\tdisplay: inline-block;\n\t}\n\n\t:host([data-will-change]) span {\n\t\twill-change: transform;\n\t}\n\n\t.number,\n\t.digit {\n\t\tpadding: ${halfMaskHeight} 0;\n\t}\n\n\t.symbol {\n\t\twhite-space: pre; /* some symbols are spaces or thin spaces */\n\t}\n`;const renderPart=part=>`<span class=\"${part.type===\"integer\"||part.type===\"fraction\"?\"digit\":\"symbol\"}\" part=\"${part.type===\"integer\"||part.type===\"fraction\"?`digit ${part.type}-digit`:part.type}\">${part.value}</span>`;const renderSection=(section,part)=>`<span part=\"${part}\">${section.reduce((str,p)=>str+renderPart(p),\"\")}</span>`;export const renderInnerHTML=data=>// shadowroot=\"open\" non-standard attribute for old Chrome:\n    html`<template shadowroot=\"open\" shadowrootmode=\"open\"\n\t\t\t><style>\n\t\t\t\t${styles}</style\n\t\t\t>${renderSection(data.pre,\"left\")}<span part=\"number\" class=\"number\"\n\t\t\t\t>${renderSection(data.integer,\"integer\")}${renderSection(data.fraction,\"fraction\")}</span\n\t\t\t>${renderSection(data.post,\"right\")}</template\n\t\t><span\n\t\t\tstyle=\"font-kerning: none; display: inline-block; line-height: ${charHeight} !important; padding: ${maskHeight} 0;\"\n\t\t\t>${data.valueAsString}</span\n\t\t>`// ^ fallback for browsers that don't support DSD\n;\nexport const __FramerMetadata__ = {\"exports\":{\"ServerSafeHTMLElement\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"renderInnerHTML\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ssr.map", "// Merge the plus and minus sign types\nexport function formatToData(value,formatter,prefix,suffix){const parts=formatter.formatToParts(value);if(prefix)parts.unshift({type:\"prefix\",value:prefix});if(suffix)parts.push({type:\"suffix\",value:suffix});console.log(prefix,suffix);const pre=[];const _integer=[]// we do a second pass to key these from RTL\n;const fraction=[];const post=[];const counts={};const generateKey=type=>{var _counts_type;return`${type}:${counts[type]=((_counts_type=counts[type])!==null&&_counts_type!==void 0?_counts_type:-1)+1}`;};let valueAsString=\"\";let seenInteger=false,seenDecimal=false;for(const part of parts){valueAsString+=part.value;// Merge plus and minus sign types (doing it this way appeases TypeScript)\nconst type=part.type===\"minusSign\"||part.type===\"plusSign\"?\"sign\":part.type;if(type===\"integer\"){seenInteger=true;_integer.push(...part.value.split(\"\").map(d=>({type,value:parseInt(d)})));}else if(type===\"group\"){_integer.push({type,value:part.value});}else if(type===\"decimal\"){seenDecimal=true;fraction.push({type,value:part.value,key:generateKey(type)});}else if(type===\"fraction\"){fraction.push(...part.value.split(\"\").map(d=>({type,value:parseInt(d),key:generateKey(type),pos:-1-counts[type]})));}else{(seenInteger||seenDecimal?post:pre).push({type,value:part.value,key:generateKey(type)});}}const integer=[];// Key the integer parts RTL, for better layout animations\nfor(let i=_integer.length-1;i>=0;i--){const p=_integer[i];integer.unshift(p.type===\"integer\"?{...p,key:generateKey(p.type),pos:counts[p.type]}:{...p,key:generateKey(p.type)});}return{pre,integer,fraction,post,valueAsString,value:typeof value==\"string\"?parseFloat(value):value};}\nexport const __FramerMetadata__ = {\"exports\":{\"KeyedSymbolPart\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"formatToData\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Value\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"KeyedDigitPart\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NumberPartKey\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Format\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NumberPartType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Data\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"KeyedNumberPart\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./formatter.map", "function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{createElement,offset,visible,max,forEach}from\"https://framerusercontent.com/modules/Gdw4PFaebBg7otYjbV0a/dcn7aXLoeairMqUE2xn1/util.js\";import{ServerSafeHTMLElement}from\"https://framerusercontent.com/modules/OgWgndAFyvu2Uat4ngWh/46M5bSSTGskoeUN6XI4j/ssr.js\";import styles,{supportsMod,supportsLinear,dxVar,opacityDeltaVar,prefersReducedMotion,supportsAtProperty,widthDeltaVar,deltaVar}from\"https://framerusercontent.com/modules/a9L165TciBHZyMGFIwtU/yEBIwtxcNyYOPf43vN85/styles.js\";export{prefersReducedMotion}from\"https://framerusercontent.com/modules/a9L165TciBHZyMGFIwtU/yEBIwtxcNyYOPf43vN85/styles.js\";export{renderInnerHTML}from\"https://framerusercontent.com/modules/OgWgndAFyvu2Uat4ngWh/46M5bSSTGskoeUN6XI4j/ssr.js\";export*from\"https://framerusercontent.com/modules/nND5KreKFoT8ms7HKata/Vmif4IbMKvsbPZXwEHBz/formatter.js\";export{BROWSER,define}from\"https://framerusercontent.com/modules/Gdw4PFaebBg7otYjbV0a/dcn7aXLoeairMqUE2xn1/util.js\";export const canAnimate=supportsMod&&supportsLinear&&supportsAtProperty;let styleSheet;// This one is used internally for framework wrappers, and\n// doesn't include things like attribute support:\nexport class NumberFlowLite extends ServerSafeHTMLElement{get animated(){return this._animated;}set animated(val){var // Finish any in-flight animations (instead of cancel, which won't trigger their finish events):\n_this_shadowRoot;if(this.animated===val)return;this._animated=val;(_this_shadowRoot=this.shadowRoot)===null||_this_shadowRoot===void 0?void 0:_this_shadowRoot.getAnimations().forEach(a=>a.finish());}set data(data){if(data==null){return;}const{pre,integer,fraction,post,value}=data;// Initialize if needed\nif(!this.created){this._data=data;// This will overwrite the DSD if any:\nthis.attachShadow({mode:\"open\"});// Add stylesheet\nif(typeof CSSStyleSheet!==\"undefined\"&&this.shadowRoot.adoptedStyleSheets){if(!styleSheet){styleSheet=new CSSStyleSheet;styleSheet.replaceSync(styles);}this.shadowRoot.adoptedStyleSheets=[styleSheet];}else{const style=document.createElement(\"style\");style.textContent=styles;this.shadowRoot.appendChild(style);}this._pre=new SymbolSection(this,pre,{justify:\"right\",part:\"left\"});this.shadowRoot.appendChild(this._pre.el);this._num=new Num(this,integer,fraction);this.shadowRoot.appendChild(this._num.el);this._post=new SymbolSection(this,post,{justify:\"left\",part:\"right\"});this.shadowRoot.appendChild(this._post.el);}else{const prev=this._data;this._data=data;this.computedTrend=typeof this.trend===\"function\"?this.trend(prev.value,value):this.trend;this.startingPos=undefined;if(this.computedTrend&&this.continuous){// Find the starting pos based on the parts, not the value,\n// to handle e.g. compact notation where value = 1000 and integer part = 1\nconst prevNumber=prev.integer.concat(prev.fraction).filter(p=>p.type===\"integer\"||p.type===\"fraction\");const number=data.integer.concat(data.fraction).filter(p=>p.type===\"integer\"||p.type===\"fraction\");const firstChangedPrev=prevNumber.find(pp=>!number.find(p=>p.pos===pp.pos&&p.value===pp.value));const firstChanged=number.find(p=>!prevNumber.find(pp=>p.pos===pp.pos&&p.value===pp.value));this.startingPos=max(firstChangedPrev===null||firstChangedPrev===void 0?void 0:firstChangedPrev.pos,firstChanged===null||firstChanged===void 0?void 0:firstChanged.pos);}this.computedAnimated=canAnimate&&this._animated&&(!this.respectMotionPreference||!(prefersReducedMotion===null||prefersReducedMotion===void 0?void 0:prefersReducedMotion.matches))&&// https://github.com/barvian/number-flow/issues/9\nvisible(this);if(!this.manual)this.willUpdate();this._pre.update(pre);this._num.update({integer,fraction});this._post.update(post);if(!this.manual)this.didUpdate();}this.created=true;}willUpdate(){// Not super safe to check animated here, b/c the prop may not have been updated yet:\nthis._pre.willUpdate();this._num.willUpdate();this._post.willUpdate();}didUpdate(){// Safe to call this here because we know the animated prop is up-to-date\nif(!this.computedAnimated)return;// If we're already animating, cancel the previous animationsfinish event:\nif(this._abortAnimationsFinish)this._abortAnimationsFinish.abort();else this.dispatchEvent(new Event(\"animationsstart\"));this._pre.didUpdate();this._num.didUpdate();this._post.didUpdate();const controller=new AbortController;Promise.all(this.shadowRoot.getAnimations().map(a=>a.finished)).then(()=>{if(!controller.signal.aborted){this.dispatchEvent(new Event(\"animationsfinish\"));this._abortAnimationsFinish=undefined;}});this._abortAnimationsFinish=controller;}constructor(){super();_define_property(this,\"_animated\",void 0);_define_property(this,\"created\",false);_define_property(this,\"_pre\",void 0);_define_property(this,\"_num\",void 0);_define_property(this,\"_post\",void 0);_define_property(this,\"computedTrend\",void 0);_define_property(this,\"startingPos\",void 0);_define_property(this,\"computedAnimated\",void 0);_define_property(this,\"_data\",void 0);_define_property(this,\"manual\",false);_define_property(this,\"_abortAnimationsFinish\",void 0);const{animated,...props}=this.constructor.defaultProps;this._animated=this.computedAnimated=animated;Object.assign(this,props);}}/**\n     * Use `private _private` properties instead of `#private` to avoid # polyfill and\n     * reduce bundle size. Also, use `readonly` properties instead of getters to save on bundle\n     * size, even though you have to do gross stuff like `(this as Mutable<...>)` until TS\n     * supports e.g. https://github.com/microsoft/TypeScript/issues/37487\n     */_define_property(NumberFlowLite,\"defaultProps\",{transformTiming:{duration:900,// Make sure to keep this minified:\neasing:`linear(0,.005,.019,.039,.066,.096,.129,.165,.202,.24,.278,.316,.354,.39,.426,.461,.494,.526,.557,.586,.614,.64,.665,.689,.711,.731,.751,.769,.786,.802,.817,.831,.844,.856,.867,.877,.887,.896,.904,.912,.919,.925,.931,.937,.942,.947,.951,.955,.959,.962,.965,.968,.971,.973,.976,.978,.98,.981,.983,.984,.986,.987,.988,.989,.99,.991,.992,.992,.993,.994,.994,.995,.995,.996,.996,.9963,.9967,.9969,.9972,.9975,.9977,.9979,.9981,.9982,.9984,.9985,.9987,.9988,.9989,1)`},spinTiming:undefined,opacityTiming:{duration:450,easing:\"ease-out\"},animated:true,trend:(oldValue,value)=>Math.sign(value-oldValue),continuous:false,respectMotionPreference:true,digits:undefined});class Num{willUpdate(){this._prevWidth=this.el.offsetWidth;this._prevLeft=this.el.getBoundingClientRect().left;this._integer.willUpdate();this._fraction.willUpdate();}update({integer,fraction}){this._integer.update(integer);this._fraction.update(fraction);}didUpdate(){const rect=this.el.getBoundingClientRect();// Do this before starting to animate:\nthis._integer.didUpdate();this._fraction.didUpdate();const dx=this._prevLeft-rect.left;const width=this.el.offsetWidth;// We convert scale to width delta in px to better handle interruptions and keep them in\n// sync with translations:\nconst dWidth=this._prevWidth-width;this.el.style.setProperty(\"--width\",String(width));this.el.animate({[dxVar]:[`${dx}px`,\"0px\"],[widthDeltaVar]:[dWidth,0]},{...this.flow.transformTiming,composite:\"accumulate\"});}constructor(flow,integer,fraction,{className,...props}={}){_define_property(this,\"flow\",void 0);_define_property(this,\"el\",void 0);_define_property(this,\"_inner\",void 0);_define_property(this,\"_integer\",void 0);_define_property(this,\"_fraction\",void 0);_define_property(this,\"_prevWidth\",void 0);_define_property(this,\"_prevLeft\",void 0);this.flow=flow;this._integer=new NumberSection(flow,integer,{justify:\"right\",part:\"integer\"});this._fraction=new NumberSection(flow,fraction,{justify:\"left\",part:\"fraction\"});this._inner=createElement(\"span\",{className:`number__inner`},[this._integer.el,this._fraction.el]);this.el=createElement(\"span\",{...props,part:\"number\",className:`number ${className!==null&&className!==void 0?className:\"\"}`},[this._inner]);}}class Section{addChar(part,{startDigitsAtZero=false,...props}={}){const comp=part.type===\"integer\"||part.type===\"fraction\"?new Digit(this,part.type,startDigitsAtZero?0:part.value,part.pos,{...props,onRemove:this.onCharRemove(part.key)}):new Sym(this,part.type,part.value,{...props,onRemove:this.onCharRemove(part.key)});this.children.set(part.key,comp);return comp;}unpop(char){char.el.classList.remove(\"section__exiting\");char.el.style.top=\"\";char.el.style[this.justify]=\"\";}pop(chars){// Calculate offsets for removed before popping, to avoid layout thrashing:\nchars.forEach(char=>{char.el.style.top=`${char.el.offsetTop}px`;char.el.style[this.justify]=`${offset(char.el,this.justify)}px`;});chars.forEach(char=>{char.el.classList.add(\"section__exiting\");char.present=false;});}addNewAndUpdateExisting(parts){const added=new Map;const updated=new Map;// Add new parts before any other updates, so we can save their position correctly:\nconst reverse=this.justify===\"left\";const op=reverse?\"prepend\":\"append\";forEach(parts,part=>{let comp;// Already exists/needs update, so set aside for now\nif(this.children.has(part.key)){comp=this.children.get(part.key);updated.set(part,comp);this.unpop(comp);comp.present=true;}else{// New part\ncomp=this.addChar(part,{startDigitsAtZero:true,animateIn:true});added.set(part,comp);}this.el[op](comp.el);},{reverse});if(this.flow.computedAnimated){const rect=this.el.getBoundingClientRect()// this should only cause a layout if there were added children\n;added.forEach(comp=>{comp.willUpdate(rect);});}// Update added children to their initial value (we start them at 0)\nadded.forEach((comp,part)=>{comp.update(part.value);});// Update any updated children\nupdated.forEach((comp,part)=>{comp.update(part.value);});}willUpdate(){const rect=this.el.getBoundingClientRect();this._prevOffset=rect[this.justify];this.children.forEach(comp=>comp.willUpdate(rect));}didUpdate(){const rect=this.el.getBoundingClientRect();// Make sure to pass this in before starting to animate:\nthis.children.forEach(comp=>comp.didUpdate(rect));const offset=rect[this.justify];const dx=this._prevOffset-offset;// Technically checking for children could get weird during multiple interruptions\n// but probably still worth it;\nif(dx&&this.children.size)this.el.animate({transform:[`translateX(${dx}px)`,\"none\"]},{...this.flow.transformTiming,composite:\"accumulate\"});}constructor(flow,parts,{justify,className,...props},children){_define_property(this,\"flow\",void 0);_define_property(this,\"el\",void 0);_define_property(this,\"justify\",void 0);// All children in the DOM:\n_define_property(this,\"children\",void 0);_define_property(this,\"onCharRemove\",void 0);_define_property(this,\"_prevOffset\",void 0);this.flow=flow;this.children=new Map;this.onCharRemove=key=>()=>{this.children.delete(key);};this.justify=justify;const chars=parts.map(p=>this.addChar(p).el);this.el=createElement(\"span\",{...props,className:`section section--justify-${justify} ${className!==null&&className!==void 0?className:\"\"}`},children?children(chars):chars);}}class NumberSection extends Section{update(parts){const removed=new Map;this.children.forEach((comp,key)=>{// Keep track of removed children:\nif(!parts.find(p=>p.key===key)){removed.set(key,comp);}// Put everything back into the flow briefly, to recompute offsets:\nthis.unpop(comp);});this.addNewAndUpdateExisting(parts);// Set all removed digits to 0, for mathematical correctness:\nremoved.forEach(comp=>{if(comp instanceof Digit)comp.update(0);});// Then end with them popped out again:\nthis.pop(removed);}}class SymbolSection extends Section{update(parts){const removed=new Map;this.children.forEach((comp,key)=>{// Keep track of removed children:\nif(!parts.find(p=>p.key===key)){removed.set(key,comp);}});// Pop them, before any additions\nthis.pop(removed);this.addNewAndUpdateExisting(parts);}}class AnimatePresence{get present(){return this._present;}set present(val){if(this._present===val)return;this._present=val;if(!this.flow.computedAnimated){if(!val)this._remove();return;}this.el.style.setProperty(\"--_number-flow-d-opacity\",val?\"0\":\"-.999\");this.el.animate({[opacityDeltaVar]:val?[-.9999,0]:[.999,0]},{...this.flow.opacityTiming,composite:\"accumulate\"});if(val)this.flow.removeEventListener(\"animationsfinish\",this._remove);else this.flow.addEventListener(\"animationsfinish\",this._remove,{once:true});}constructor(flow,el,{onRemove,animateIn=false}={}){_define_property(this,\"flow\",void 0);_define_property(this,\"el\",void 0);_define_property(this,\"_present\",void 0);_define_property(this,\"_onRemove\",void 0);_define_property(this,\"_remove\",void 0);this.flow=flow;this.el=el;this._present=true;this._remove=()=>{var _this__onRemove,_this;this.el.remove();(_this__onRemove=(_this=this)._onRemove)===null||_this__onRemove===void 0?void 0:_this__onRemove.call(_this);};this.el.classList.add(\"animate-presence\");// This craziness is the only way I could figure out how to get the opacity\n// accumulation to work in all browsers. Accumulating -1 onto opacity directly\n// failed in both FF and Safari, and setting a delta to -1 still failed in FF\nif(this.flow.computedAnimated&&animateIn){this.el.animate({[opacityDeltaVar]:[-.9999,0]},{...this.flow.opacityTiming,composite:\"accumulate\"});}this._onRemove=onRemove;}}class Char extends AnimatePresence{constructor(section,value,el,props){super(section.flow,el,props);_define_property(this,\"section\",void 0);_define_property(this,\"value\",void 0);_define_property(this,\"el\",void 0);this.section=section;this.value=value;this.el=el;}}class Digit extends Char{willUpdate(parentRect){const rect=this.el.getBoundingClientRect();this._prevValue=this.value;const prevOffset=rect[this.section.justify]-parentRect[this.section.justify];const halfWidth=rect.width/2;this._prevCenter=this.section.justify===\"left\"?prevOffset+halfWidth:prevOffset-halfWidth;}update(value){var _this__numbers_this_value,_this__numbers_value;(_this__numbers_this_value=this._numbers[this.value])===null||_this__numbers_this_value===void 0?void 0:_this__numbers_this_value.classList.remove(\"is-current\");this.el.style.setProperty(\"--current\",String(value));(_this__numbers_value=this._numbers[value])===null||_this__numbers_value===void 0?void 0:_this__numbers_value.classList.add(\"is-current\");this.value=value;}didUpdate(parentRect){const rect=this.el.getBoundingClientRect();const offset=rect[this.section.justify]-parentRect[this.section.justify];const halfWidth=rect.width/2;const center=this.section.justify===\"left\"?offset+halfWidth:offset-halfWidth;const dx=this._prevCenter-center;if(dx)this.el.animate({transform:[`translateX(${dx}px)`,\"none\"]},{...this.flow.transformTiming,composite:\"accumulate\"});const diff=this.diff;if(!diff)return;this.el.classList.add(\"is-spinning\");var _this_flow_spinTiming;this.el.animate({[deltaVar]:[-diff,0]},{...(_this_flow_spinTiming=this.flow.spinTiming)!==null&&_this_flow_spinTiming!==void 0?_this_flow_spinTiming:this.flow.transformTiming,composite:\"accumulate\"});// Hoisting the callback out prevents duplicates:\nthis.flow.addEventListener(\"animationsfinish\",this._onAnimationsFinish,{once:true});}get diff(){let trend=this.flow.computedTrend;const diff=this.value-this._prevValue;// Loop once if it's continuous:\nif(!diff&&this.flow.startingPos!=null&&this.flow.startingPos>=this.pos){return this._length*trend// trend must exist if there's a startingPos\n;}// Make it per-digit if no root trend:\ntrend||(trend=Math.sign(diff));// Loop around if need be:\nif(trend<0&&this.value>this._prevValue)return this.value-this._length-this._prevValue;else if(trend>0&&this.value<this._prevValue)return this._length-this._prevValue+this.value;return diff;}constructor(section,type,value,pos,props){var _section_flow_digits_pos,_section_flow_digits;var _section_flow_digits_pos_max;const length=((_section_flow_digits_pos_max=(_section_flow_digits=section.flow.digits)===null||_section_flow_digits===void 0?void 0:(_section_flow_digits_pos=_section_flow_digits[pos])===null||_section_flow_digits_pos===void 0?void 0:_section_flow_digits_pos.max)!==null&&_section_flow_digits_pos_max!==void 0?_section_flow_digits_pos_max:9)+1;const numbers=Array.from({length}).map((_,i)=>{const num=createElement(\"span\",{className:`digit__num${i===value?\" is-current\":\"\"}`},[document.createTextNode(String(i))]);num.style.setProperty(\"--n\",String(i));return num;});const el=createElement(\"span\",{part:`digit ${type}-digit`,className:`digit`},numbers);el.style.setProperty(\"--current\",String(value));el.style.setProperty(\"--length\",String(length));super(section,value,el,props);_define_property(this,\"pos\",void 0);_define_property(this,\"_numbers\",void 0);_define_property(this,\"_length\",void 0);_define_property(this,\"_prevValue\",void 0);// Relative to parent:\n_define_property(this,\"_prevCenter\",void 0);_define_property(this,\"_onAnimationsFinish\",void 0);this.pos=pos;this._onAnimationsFinish=()=>{this.el.classList.remove(\"is-spinning\");};this._numbers=numbers;this._length=length;}}class Sym extends Char{willUpdate(parentRect){if(this.type===\"decimal\")return;// decimal never needs animation b/c it's the first in a left aligned section and never moves\nconst rect=this.el.getBoundingClientRect();this._prevOffset=rect[this.section.justify]-parentRect[this.section.justify];}update(value){if(this.value!==value){// Pop the current value:\nconst current=this._children.get(this.value);current.present=false;current.el.classList.add(\"symbol__exiting\");// If we already have the new value and it hasn't finished removing, reclaim it:\nif(this._children.has(value)){const prev=this._children.get(value);prev.present=true;prev.el.classList.remove(\"symbol__exiting\");}else{// Otherwise, create a new one:\nconst newVal=createElement(\"span\",{className:\"symbol__value\",textContent:value});this.el.appendChild(newVal);this._children.set(value,new AnimatePresence(this.flow,newVal,{animateIn:true,onRemove:this._onChildRemove(value)}));}}this.value=value;}didUpdate(parentRect){if(this.type===\"decimal\")return;const rect=this.el.getBoundingClientRect();const offset=rect[this.section.justify]-parentRect[this.section.justify];const dx=this._prevOffset-offset;if(dx)this.el.animate({transform:[`translateX(${dx}px)`,\"none\"]},{...this.flow.transformTiming,composite:\"accumulate\"});}constructor(section,type,value,props){const val=createElement(\"span\",{className:\"symbol__value\",textContent:value});super(section,value,createElement(\"span\",{part:`symbol ${type}`,className:`symbol`},[val]),props);_define_property(this,\"type\",void 0);_define_property(this,\"_children\",void 0);_define_property(this,\"_prevOffset\",void 0);_define_property(this,\"_onChildRemove\",void 0);this.type=type;this._children=new Map;this._onChildRemove=key=>()=>{this._children.delete(key);};this._children.set(value,new AnimatePresence(this.flow,val,{onRemove:this._onChildRemove(value)}));}}\nexport const __FramerMetadata__ = {\"exports\":{\"Trend\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"prefersReducedMotion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NumberFlowLite\":{\"type\":\"class\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"BROWSER\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"define\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Digits\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DigitOptions\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"renderInnerHTML\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"canAnimate\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}var _React_version_match;import{jsx as _jsx}from\"react/jsx-runtime\";import*as React from\"react\";import{renderInnerHTML,formatToData,NumberFlowLite,prefersReducedMotion as _prefersReducedMotion,canAnimate as _canAnimate,define,BROWSER}from\"https://framerusercontent.com/modules/AG73ox21oKVyje0VXkyK/HNU4IYD8anfZXhjtw7bP/index.js\";const REACT_MAJOR=parseInt((_React_version_match=React.version.match(/^(\\d+)\\./))===null||_React_version_match===void 0?void 0:_React_version_match[1]);const isReact19=REACT_MAJOR>=19;// Can't wait to not have to do this in React 19:\nconst OBSERVED_ATTRIBUTES=[\"data\",\"digits\"];export class NumberFlowElement extends NumberFlowLite{attributeChangedCallback(attr,_oldValue,newValue){this[attr]=JSON.parse(newValue);}}_define_property(NumberFlowElement,\"observedAttributes\",isReact19?[]:OBSERVED_ATTRIBUTES);define(\"number-flow-react\",NumberFlowElement);// You're supposed to cache these between uses:\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString\n// Serialize to strings b/c React:\nconst formatters={};// Tiny workaround to support React 19 until it's released:\nconst serialize=isReact19?p=>p:JSON.stringify;function splitProps(props){const{transformTiming,spinTiming,opacityTiming,animated,respectMotionPreference,trend,continuous,...rest}=props;return[{transformTiming,spinTiming,opacityTiming,animated,respectMotionPreference,trend,continuous},rest];}// We need a class component to use getSnapshotBeforeUpdate:\nclass NumberFlowImpl extends React.Component{// Update the non-`data` props to avoid JSON serialization\n// Data needs to be set in render still:\nupdateProperties(prevProps){if(!this.el)return;this.el.manual=!this.props.isolate;const[nonData]=splitProps(this.props);Object.entries(nonData).forEach(([k,v])=>{// @ts-ignore\nthis.el[k]=v!==null&&v!==void 0?v:NumberFlowElement.defaultProps[k];});if(prevProps===null||prevProps===void 0?void 0:prevProps.onAnimationsStart)this.el.removeEventListener(\"animationsstart\",prevProps.onAnimationsStart);if(this.props.onAnimationsStart)this.el.addEventListener(\"animationsstart\",this.props.onAnimationsStart);if(prevProps===null||prevProps===void 0?void 0:prevProps.onAnimationsFinish)this.el.removeEventListener(\"animationsfinish\",prevProps.onAnimationsFinish);if(this.props.onAnimationsFinish)this.el.addEventListener(\"animationsfinish\",this.props.onAnimationsFinish);}componentDidMount(){this.updateProperties();if(isReact19&&this.el){// React 19 needs this because the attributeChangedCallback isn't called:\nthis.el.digits=this.props.digits;this.el.data=this.props.data;}}getSnapshotBeforeUpdate(prevProps){this.updateProperties(prevProps);if(prevProps.data!==this.props.data){if(this.props.group){this.props.group.willUpdate();return()=>{var _this_props_group;return(_this_props_group=this.props.group)===null||_this_props_group===void 0?void 0:_this_props_group.didUpdate();};}if(!this.props.isolate){var _this_el_willUpdate,_this_el;(_this_el=this.el)===null||_this_el===void 0?void 0:(_this_el_willUpdate=_this_el.willUpdate)===null||_this_el_willUpdate===void 0?void 0:_this_el_willUpdate.call(_this_el);return()=>{var _this_el;return(_this_el=this.el)===null||_this_el===void 0?void 0:_this_el.didUpdate();};}}return null;}componentDidUpdate(_,__,didUpdate){didUpdate===null||didUpdate===void 0?void 0:didUpdate();}handleRef(el){if(this.props.innerRef)this.props.innerRef.current=el;this.el=el;}render(){const[_,{innerRef,className,data,willChange,isolate,group,digits,onAnimationsStart,onAnimationsFinish,...rest}]=splitProps(this.props);return(// @ts-expect-error missing types\n/*#__PURE__*/_jsx(\"number-flow-react\",{ref:this.handleRef,\"data-will-change\":willChange?\"\":undefined,// Have to rename this:\nclass:className,\"aria-label\":data.valueAsString,...rest,role:\"img\",dangerouslySetInnerHTML:{__html:BROWSER?\"\":renderInnerHTML(data)},suppressHydrationWarning:true,digits:serialize(digits),// Make sure data is set last, everything else is updated:\ndata:serialize(data)}));}constructor(props){super(props);_define_property(this,\"el\",void 0);this.handleRef=this.handleRef.bind(this);}}const NumberFlow=/*#__PURE__*/React.forwardRef(function NumberFlow({value,locales,format,prefix,suffix,...props},_ref){React.useImperativeHandle(_ref,()=>ref.current,[]);const ref=React.useRef();const group=React.useContext(NumberFlowGroupContext);group===null||group===void 0?void 0:group.useRegister(ref);const localesString=React.useMemo(()=>locales?JSON.stringify(locales):\"\",[locales]);const formatString=React.useMemo(()=>format?JSON.stringify(format):\"\",[format]);const data=React.useMemo(()=>{var _formatters,_ref;var _;const formatter=(_=(_formatters=formatters)[_ref=`${localesString}:${formatString}`])!==null&&_!==void 0?_:_formatters[_ref]=new Intl.NumberFormat(locales,format);return formatToData(value,formatter,prefix,suffix);},[value,localesString,formatString,prefix,suffix]);return /*#__PURE__*/_jsx(NumberFlowImpl,{...props,group:group,data:data,innerRef:ref});});export default NumberFlow;const NumberFlowGroupContext=/*#__PURE__*/React.createContext(undefined);export function NumberFlowGroup({children}){const flows=React.useRef(new Set);const updating=React.useRef(false);const pending=React.useRef(new WeakMap);const value=React.useMemo(()=>({useRegister(ref){React.useEffect(()=>{flows.current.add(ref);return()=>{flows.current.delete(ref);};},[]);},willUpdate(){if(updating.current)return;updating.current=true;flows.current.forEach(ref=>{const f=ref.current;if(!f||!f.created)return;f.willUpdate();pending.current.set(f,true);});},didUpdate(){flows.current.forEach(ref=>{const f=ref.current;if(!f||!pending.current.get(f))return;f.didUpdate();pending.current.delete(f);});updating.current=false;}}),[]);return /*#__PURE__*/_jsx(NumberFlowGroupContext.Provider,{value:value,children:children});}export const useIsSupported=()=>React.useSyncExternalStore(()=>()=>{},()=>_canAnimate,()=>false);export const usePrefersReducedMotion=()=>React.useSyncExternalStore(cb=>{_prefersReducedMotion===null||_prefersReducedMotion===void 0?void 0:_prefersReducedMotion.addEventListener(\"change\",cb);return()=>_prefersReducedMotion===null||_prefersReducedMotion===void 0?void 0:_prefersReducedMotion.removeEventListener(\"change\",cb);},()=>_prefersReducedMotion.matches,()=>false);export function useCanAnimate({respectMotionPreference=true}={}){const isSupported=useIsSupported();const reducedMotion=usePrefersReducedMotion();return isSupported&&(!respectMotionPreference||!reducedMotion);}\nexport const __FramerMetadata__ = {\"exports\":{\"Trend\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useCanAnimate\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NumberFlowElement\":{\"type\":\"class\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NumberFlowProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NumberPartType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NumberFlowGroup\":{\"type\":\"reactComponent\",\"name\":\"NumberFlowGroup\",\"slots\":[\"children\"],\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePrefersReducedMotion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsSupported\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Format\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Value\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useId}from\"react\";import NumberFlow from\"https://framer.com/m/NumberFlowReact-yGat.js\";const TREND_VALUES={nearest:(oldValue,value)=>Math.sign(value-oldValue),individual:0,up:1,down:-1};const EASING_VALUES={smooth:`linear(0,.005,.019,.039,.066,.096,.129,.165,.202,.24,.278,.316,.354,.39,.426,.461,.494,.526,.557,.586,.614,.64,.665,.689,.711,.731,.751,.769,.786,.802,.817,.831,.844,.856,.867,.877,.887,.896,.904,.912,.919,.925,.931,.937,.942,.947,.951,.955,.959,.962,.965,.968,.971,.973,.976,.978,.98,.981,.983,.984,.986,.987,.988,.989,.99,.991,.992,.992,.993,.994,.994,.995,.995,.996,.996,.9963,.9967,.9969,.9972,.9975,.9977,.9979,.9981,.9982,.9984,.9985,.9987,.9988,.9989,1)`,linear:\"linear\",ease:\"ease\",easeIn:\"ease-in\",easeOut:\"ease-out\",easeInOut:\"ease-in-out\"};/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n *\n * @framerDisableUnlink\n */export default function NumberFlowComponent(props){const{value,format,gradientHeight}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const id=useInstanceId();const style={userSelect:props.userSelect?\"auto\":\"none\",fontVariantNumeric:props.monospace?\"tabular-nums\":undefined,margin:0,color:props.color,...props.font,...props.style};const numberFormat={notation:format.style===\"compact\"?\"compact\":\"standard\",signDisplay:format.plusSign?\"exceptZero\":\"auto\",useGrouping:format.separators};return isCanvas?/*#__PURE__*/_jsxs(\"div\",{style:{...props.style,...style,whiteSpace:\"pre\"},children:[props.prefix,Intl.NumberFormat(format.locale||undefined,numberFormat).format(value),props.suffix]}):/*#__PURE__*/_jsxs(\"div\",{id:id,style:{...props.style,whiteSpace:\"pre\",marginTop:-gradientHeight,marginBottom:-gradientHeight},children:[/*#__PURE__*/_jsx(NumberFlow,{value:value,trend:TREND_VALUES[props.direction],continuous:props.continuous,format:numberFormat,locales:format.locale||undefined,prefix:props.prefix,suffix:props.suffix,transformTiming:{easing:EASING_VALUES[props.transition.easing],duration:props.transition.duration*1e3},opacityTiming:{easing:\"ease-out\",duration:props.transition.duration*1e3/2},isolate:true,willChange:true,style:style}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`#${id} { --number-flow-mask-height: ${gradientHeight}px }`}})]});}NumberFlowComponent.displayName=\"NumberFlow\";addPropertyControls(NumberFlowComponent,{value:{type:ControlType.Number,defaultValue:0},format:{type:ControlType.Object,controls:{style:{type:ControlType.Enum,defaultValue:\"default\",options:[\"default\",\"compact\"],optionTitles:[\"Default (1,000)\",\"Compact (1K)\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},separators:{type:ControlType.Boolean,defaultValue:true},plusSign:{type:ControlType.Boolean,defaultValue:false},locale:{type:ControlType.String,placeholder:`Auto${typeof navigator!==\"undefined\"?` (${navigator.language})`:\"\"}`}}},direction:{type:ControlType.Enum,defaultValue:\"nearest\",options:[\"nearest\",\"individual\",\"up\",\"down\"],optionTitles:[\"Nearest (All)\",\"Nearest (Per-Character)\",\"Up \u2191\",\"Down \u2193\"]},continuous:{type:ControlType.Boolean,defaultValue:true,hidden:props=>props.direction===\"individual\"},gradientHeight:{type:ControlType.Number,defaultValue:10,min:0,step:1,title:\"Gradient\"},font:{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:16,lineHeight:1}},color:{type:ControlType.Color,defaultValue:\"#000\"},prefix:{type:ControlType.String,placeholder:\"Prefix\"},suffix:{type:ControlType.String,placeholder:\"Suffix\"},userSelect:{type:ControlType.Boolean,defaultValue:false},transition:{type:ControlType.Object,controls:{easing:{type:ControlType.Enum,defaultValue:\"smooth\",options:[\"smooth\",\"linear\",\"ease\",\"easeIn\",\"easeOut\",\"easeInOut\"],optionTitles:[\"Smooth\",\"Linear\",\"Ease\",\"Ease In\",\"Ease Out\",\"Ease In Out\"]},duration:{type:ControlType.Number,defaultValue:.75,min:0,step:.01}},description:\"More components at [Framer University](https://frameruni.link/cc).\"}});const useInstanceId=()=>{const id=useId();const cleanId=id.replace(/:/g,\"\");const instanceId=`frameruni-${cleanId}`;return instanceId;};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"NumberFlowComponent\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./NumberFlow_Prod.map", "// Generated by Framer (915daba)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const cycleOrder=[\"pxfAI27VV\",\"eLpYB5102\"];const serializationHash=\"framer-wvrAw\";const variantClassNames={eLpYB5102:\"framer-v-w24133\",pxfAI27VV:\"framer-v-1gc5vs6\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const transition2={bounce:.2,delay:.4,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Default:\"pxfAI27VV\",Thicker:\"eLpYB5102\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"pxfAI27VV\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"pxfAI27VV\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1gc5vs6\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"pxfAI27VV\",ref:ref??ref1,style:{...style},...addPropertyOverrides({eLpYB5102:{\"data-framer-name\":\"Thicker\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(Transition,{value:transition2,...addPropertyOverrides({eLpYB5102:{value:transition1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-obu9nn\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"O711mO3cw\",style:{backgroundColor:\"var(--token-88270a27-b998-4d64-94e7-850fa71e2842, rgb(39, 43, 45))\"},variants:{eLpYB5102:{backgroundColor:\"var(--token-20608b9f-0145-4a1e-b971-ee948ebbb015, rgb(255, 255, 255))\"}}})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-wvrAw.framer-jwfuas, .framer-wvrAw .framer-jwfuas { display: block; }\",\".framer-wvrAw.framer-1gc5vs6 { height: 132px; overflow: visible; position: relative; width: 1px; }\",\".framer-wvrAw .framer-obu9nn { flex: none; height: 100%; left: calc(2.220446049250313e-14% - 1px / 2); overflow: hidden; position: absolute; top: calc(50.00000000000002% - 100% / 2); width: 1px; }\",\".framer-wvrAw.framer-v-w24133 .framer-obu9nn { left: calc(2.220446049250313e-14% - 3px / 2); width: 3px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 132\n * @framerIntrinsicWidth 1\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"eLpYB5102\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerB0Q6MGivd=withCSS(Component,css,\"framer-wvrAw\");export default FramerB0Q6MGivd;FramerB0Q6MGivd.displayName=\"Line Wrapper\";FramerB0Q6MGivd.defaultProps={height:132,width:1};addPropertyControls(FramerB0Q6MGivd,{variant:{options:[\"pxfAI27VV\",\"eLpYB5102\"],optionTitles:[\"Default\",\"Thicker\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerB0Q6MGivd,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerB0Q6MGivd\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"132\",\"framerIntrinsicWidth\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"eLpYB5102\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./B0Q6MGivd.map", "// Generated by Framer (2fef4c5)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const cycleOrder=[\"cCSB6hpQb\",\"qNypon5vN\"];const serializationHash=\"framer-BIWG7\";const variantClassNames={cCSB6hpQb:\"framer-v-ea5k3y\",qNypon5vN:\"framer-v-gi3ecz\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const transition2={bounce:.2,delay:.4,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Default:\"cCSB6hpQb\",Thicker:\"qNypon5vN\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"cCSB6hpQb\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"cCSB6hpQb\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-ea5k3y\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"cCSB6hpQb\",ref:refBinding,style:{...style},...addPropertyOverrides({qNypon5vN:{\"data-framer-name\":\"Thicker\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(Transition,{value:transition2,...addPropertyOverrides({qNypon5vN:{value:transition1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1jdmwhy\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"e8KMblfdR\",style:{backgroundColor:\"var(--token-88270a27-b998-4d64-94e7-850fa71e2842, rgb(39, 43, 45))\"},variants:{qNypon5vN:{backgroundColor:\"var(--token-f0cad3b1-b002-4d9b-b455-be40a858e357, rgb(197, 129, 255))\"}}})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-BIWG7.framer-1xwfm13, .framer-BIWG7 .framer-1xwfm13 { display: block; }\",\".framer-BIWG7.framer-ea5k3y { height: 132px; overflow: visible; position: relative; width: 1px; }\",\".framer-BIWG7 .framer-1jdmwhy { flex: none; height: 100%; left: calc(2.220446049250313e-14% - 1px / 2); overflow: hidden; position: absolute; top: calc(50.00000000000002% - 100% / 2); width: 1px; }\",\".framer-BIWG7.framer-v-gi3ecz .framer-1jdmwhy { left: calc(2.220446049250313e-14% - 3px / 2); width: 3px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 132\n * @framerIntrinsicWidth 1\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"qNypon5vN\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FrameruMVHIHtKf=withCSS(Component,css,\"framer-BIWG7\");export default FrameruMVHIHtKf;FrameruMVHIHtKf.displayName=\"Line Wrapper\";FrameruMVHIHtKf.defaultProps={height:132,width:1};addPropertyControls(FrameruMVHIHtKf,{variant:{options:[\"cCSB6hpQb\",\"qNypon5vN\"],optionTitles:[\"Default\",\"Thicker\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FrameruMVHIHtKf,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameruMVHIHtKf\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"132\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"qNypon5vN\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicWidth\":\"1\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./uMVHIHtKf.map"],
  "mappings": "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",
  "names": ["BROWSER", "window", "createElement", "tagName", "optionsOrChildren", "_children", "element", "options", "children", "child", "offset", "el", "justify", "_this", "_offsetWidth", "visible", "define", "name", "constructor", "forEach", "arr", "fn", "reverse", "len", "i", "max", "n1", "n2", "html", "css", "supportsLinear", "BROWSER", "supportsMod", "prefersReducedMotion", "opacityDeltaVar", "widthDeltaVar", "dxVar", "deltaVar", "supportsAtProperty", "charHeight", "maskHeight", "halfMaskHeight", "maskWidth", "scaledMaskWidth", "cornerGradient", "styles", "css", "styles_default", "ServerSafeHTMLElement", "BROWSER", "styles", "css", "charHeight", "halfMaskHeight", "renderPart", "part", "renderSection", "section", "str", "p", "renderInnerHTML", "data", "html", "maskHeight", "formatToData", "value", "formatter", "prefix", "suffix", "parts", "pre", "_integer", "fraction", "post", "counts", "generateKey", "type", "_counts_type", "valueAsString", "seenInteger", "seenDecimal", "part", "d", "integer", "i", "p", "_define_property", "obj", "key", "value", "canAnimate", "supportsMod", "supportsLinear", "supportsAtProperty", "styleSheet", "NumberFlowLite", "ServerSafeHTMLElement", "val", "_this_shadowRoot", "a", "data", "pre", "integer", "fraction", "post", "prev", "prevNumber", "p", "number", "firstChangedPrev", "pp", "firstChanged", "max", "prefersReducedMotion", "visible", "styles_default", "style", "SymbolSection", "Num", "controller", "animated", "props", "oldValue", "rect", "dx", "width", "dWidth", "dxVar", "widthDeltaVar", "flow", "className", "NumberSection", "createElement", "Section", "part", "startDigitsAtZero", "comp", "Digit", "Sym", "char", "chars", "offset", "parts", "added", "updated", "reverse", "op", "forEach", "justify", "children", "removed", "AnimatePresence", "opacityDeltaVar", "el", "onRemove", "animateIn", "_this__onRemove", "_this", "Char", "section", "parentRect", "prevOffset", "halfWidth", "_this__numbers_this_value", "_this__numbers_value", "center", "diff", "_this_flow_spinTiming", "deltaVar", "trend", "type", "pos", "_section_flow_digits_pos", "_section_flow_digits", "_section_flow_digits_pos_max", "length", "numbers", "_", "i", "num", "current", "newVal", "_define_property", "obj", "key", "value", "_React_version_match", "REACT_MAJOR", "me", "isReact19", "OBSERVED_ATTRIBUTES", "NumberFlowElement", "NumberFlowLite", "attr", "_oldValue", "newValue", "define", "formatters", "serialize", "p", "splitProps", "props", "transformTiming", "spinTiming", "opacityTiming", "animated", "respectMotionPreference", "trend", "continuous", "rest", "NumberFlowImpl", "I", "prevProps", "nonData", "k", "v", "_this_props_group", "_this_el_willUpdate", "_this_el", "_", "__", "didUpdate", "el", "innerRef", "className", "data", "willChange", "isolate", "group", "digits", "onAnimationsStart", "onAnimationsFinish", "BROWSER", "renderInnerHTML", "NumberFlow", "Y", "locales", "format", "prefix", "suffix", "_ref", "ce", "ref", "pe", "re", "NumberFlowGroupContext", "localesString", "se", "formatString", "_formatters", "formatter", "formatToData", "NumberFlowReact_yGat_default", "z", "TREND_VALUES", "oldValue", "value", "EASING_VALUES", "NumberFlowComponent", "props", "format", "gradientHeight", "isCanvas", "RenderTarget", "id", "useInstanceId", "style", "numberFormat", "u", "p", "NumberFlowReact_yGat_default", "addPropertyControls", "ControlType", "navigator", "ae", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "transition2", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "height", "id", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "scopingClassNames", "cx", "ref1", "pe", "defaultLayoutId", "ae", "componentViewport", "useComponentViewport", "LayoutGroup", "css", "FramerB0Q6MGivd", "withCSS", "B0Q6MGivd_default", "addPropertyControls", "ControlType", "addFonts", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "transition2", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "height", "id", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "activeLocale", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "scopingClassNames", "cx", "LayoutGroup", "css", "FrameruMVHIHtKf", "withCSS", "uMVHIHtKf_default", "addPropertyControls", "ControlType", "addFonts"]
}
