{"version":3,"file":"LfMotion.CsWavsUf.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/ULLqJoMiMRYgkb807Y50/et89KFrJGOcVUppmqFJZ/LfMotion.js"],"sourcesContent":["// Loadfolio · LfMotion\n// Code overrides that only add a CSS class. All motion lives in CSS, gated by\n// prefers-reduced-motion (and scroll-driven timelines by @supports), so the failure mode is\n// \"no motion\", never \"no content\". Apply with codeOverride on canvas nodes; the nodes stay editable.\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useState}from\"react\";const CSS=`\n@media (prefers-reduced-motion: no-preference) {\n  .lf-decode { animation: lf-decode 0.9s steps(16, end) 0.25s both; }\n  @keyframes lf-decode { from { clip-path: inset(0 100% 0 0); } to { clip-path: inset(0 0 0 0); } }\n  .lf-brief { animation: lf-rise 0.7s cubic-bezier(.2,.7,.2,1) 0.75s both; }\n  .lf-rise { animation: lf-rise 0.7s cubic-bezier(.2,.7,.2,1) 0.35s both; }\n  @keyframes lf-rise { from { opacity: 0; translate: 0 10px; } to { opacity: 1; translate: 0 0; } }\n  .lf-fill { transform-origin: 0 50%; animation: lf-fill 2.6s cubic-bezier(.3,.6,.2,1) 0.3s both; }\n  @keyframes lf-fill { from { scale: 0 1; } to { scale: 1 1; } }\n  .lf-boot { animation: lf-boot 1.1s steps(6, end) 0.1s both; }\n  @keyframes lf-boot { 0% { opacity: 0; } 40% { opacity: .9; } 55% { opacity: .2; } 100% { opacity: 1; } }\n  @supports (animation-timeline: view()) {\n    .lf-reveal { animation: lf-rise linear both; animation-timeline: view(); animation-range: entry 0% entry 55%; }\n    .lf-stagger > * { animation: lf-rise linear both; animation-timeline: view(); animation-range: entry 0% entry 60%; }\n    .lf-stagger > *:nth-child(2) { animation-range: entry 6% entry 66%; }\n    .lf-stagger > *:nth-child(3) { animation-range: entry 12% entry 72%; }\n    .lf-stagger > *:nth-child(4) { animation-range: entry 18% entry 78%; }\n    .lf-stagger > *:nth-child(n+5) { animation-range: entry 24% entry 84%; }\n    .lf-bar { transform-origin: 0 50%; animation: lf-fill linear both; animation-timeline: view(); animation-range: entry 10% cover 45%; }\n  }\n}\n`;// Mount animations only play on nodes that appear after the first paint (a mission switch, an\n// opened overlay). Whatever is on screen at load renders fully loaded: intel 100%, all text visible.\nconst T0=typeof performance!==\"undefined\"?performance.now():0;function useLate(cls){const[c]=useState(()=>typeof performance!==\"undefined\"&&performance.now()-T0>1200?cls:\"\");return c;}let injected=false;function useCss(){useEffect(()=>{if(injected||typeof document===\"undefined\")return;injected=true;const s=document.createElement(\"style\");s.setAttribute(\"data-lf-motion\",\"1\");s.textContent=CSS;document.head.appendChild(s);},[]);}function cx(a,b){return a?`${a} ${b}`:b;}export function withDecode(C){return function LfDecode(props){useCss();const k=useLate(\"lf-decode\");return /*#__PURE__*/_jsx(C,{...props,className:k?cx(props.className,k):props.className});};}export function withBrief(C){return function LfBrief(props){useCss();const k=useLate(\"lf-brief\");return /*#__PURE__*/_jsx(C,{...props,className:k?cx(props.className,k):props.className});};}export function withRise(C){return function LfRise(props){useCss();const k=useLate(\"lf-rise\");return /*#__PURE__*/_jsx(C,{...props,className:k?cx(props.className,k):props.className});};}export function withLoadFill(C){return function LfFill(props){useCss();const k=useLate(\"lf-fill\");return /*#__PURE__*/_jsx(C,{...props,className:k?cx(props.className,k):props.className});};}export function withBoot(C){return function LfBoot(props){useCss();const k=useLate(\"lf-boot\");return /*#__PURE__*/_jsx(C,{...props,className:k?cx(props.className,k):props.className});};}export function withReveal(C){return function LfReveal(props){useCss();return /*#__PURE__*/_jsx(C,{...props,className:cx(props.className,\"lf-reveal\")});};}export function withStagger(C){return function LfStagger(props){useCss();return /*#__PURE__*/_jsx(C,{...props,className:cx(props.className,\"lf-stagger\")});};}export function withStatBar(C){return function LfBar(props){useCss();return /*#__PURE__*/_jsx(C,{...props,className:cx(props.className,\"lf-bar\")});};}\nexport const __FramerMetadata__ = {\"exports\":{\"withStagger\":{\"type\":\"reactHoc\",\"name\":\"withStagger\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRise\":{\"type\":\"reactHoc\",\"name\":\"withRise\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withBrief\":{\"type\":\"reactHoc\",\"name\":\"withBrief\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withStatBar\":{\"type\":\"reactHoc\",\"name\":\"withStatBar\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withBoot\":{\"type\":\"reactHoc\",\"name\":\"withBoot\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withReveal\":{\"type\":\"reactHoc\",\"name\":\"withReveal\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withDecode\":{\"type\":\"reactHoc\",\"name\":\"withDecode\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withLoadFill\":{\"type\":\"reactHoc\",\"name\":\"withLoadFill\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./LfMotion.map"],"mappings":"yHA2B8D,SAAS,EAAQ,EAAI,CAAC,GAAK,CAAC,GAAGA,MAAa,OAAO,YAAc,KAAa,YAAY,IAAI,EAAE,EAAG,KAAK,EAAI,EAAE,EAAE,OAAO,CAAE,CAAoB,SAAS,GAAQ,CAAC,MAAc,CAAC,GAAG,GAAU,OAAO,SAAW,IAAY,OAAO,EAAS,GAAK,IAAM,EAAE,SAAS,cAAc,OAAO,EAAE,EAAE,aAAa,iBAAiB,GAAG,EAAE,EAAE,YAAY,EAAI,SAAS,KAAK,YAAY,CAAC,CAAE,EAAE,CAAC,CAAC,CAAE,CAAC,SAAS,EAAG,EAAE,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAE,CAAC,SAAgB,EAAW,EAAE,CAAC,OAAO,SAAkB,EAAM,CAAC,EAAO,EAAE,IAAM,EAAE,EAAQ,WAAW,EAAE,OAAoB,EAAK,EAAE,CAAC,GAAG,EAAM,UAAU,EAAE,EAAG,EAAM,UAAU,CAAC,EAAE,EAAM,SAAS,CAAC,CAAE,CAAE,CAAC,SAAgB,EAAU,EAAE,CAAC,OAAO,SAAiB,EAAM,CAAC,EAAO,EAAE,IAAM,EAAE,EAAQ,UAAU,EAAE,OAAoB,EAAK,EAAE,CAAC,GAAG,EAAM,UAAU,EAAE,EAAG,EAAM,UAAU,CAAC,EAAE,EAAM,SAAS,CAAC,CAAE,CAAE,CAA2L,SAAgB,EAAa,EAAE,CAAC,OAAO,SAAgB,EAAM,CAAC,EAAO,EAAE,IAAM,EAAE,EAAQ,SAAS,EAAE,OAAoB,EAAK,EAAE,CAAC,GAAG,EAAM,UAAU,EAAE,EAAG,EAAM,UAAU,CAAC,EAAE,EAAM,SAAS,CAAC,CAAE,CAAE,CAAC,SAAgB,EAAS,EAAE,CAAC,OAAO,SAAgB,EAAM,CAAC,EAAO,EAAE,IAAM,EAAE,EAAQ,SAAS,EAAE,OAAoB,EAAK,EAAE,CAAC,GAAG,EAAM,UAAU,EAAE,EAAG,EAAM,UAAU,CAAC,EAAE,EAAM,SAAS,CAAC,CAAE,CAAE,CAAC,SAAgB,EAAW,EAAE,CAAC,OAAO,SAAkB,EAAM,CAAU,OAAT,EAAO,EAAsB,EAAK,EAAE,CAAC,GAAG,EAAM,UAAU,EAAG,EAAM,UAAU,WAAW,CAAC,CAAC,CAAE,CAAE,CAAC,SAAgB,EAAY,EAAE,CAAC,OAAO,SAAmB,EAAM,CAAU,OAAT,EAAO,EAAsB,EAAK,EAAE,CAAC,GAAG,EAAM,UAAU,EAAG,EAAM,UAAU,YAAY,CAAC,CAAC,CAAE,CAAE,CAAC,SAAgB,EAAY,EAAE,CAAC,OAAO,SAAe,EAAM,CAAU,OAAT,EAAO,EAAsB,EAAK,EAAE,CAAC,GAAG,EAAM,UAAU,EAAG,EAAM,UAAU,QAAQ,CAAC,CAAC,CAAE,CAAE,uBAvB3yD,IAAsC,EAAO,EAAI;;;;;;;;;;;;;;;;;;;;;EAuBrF,EAAG,OAAO,YAAc,IAAY,YAAY,IAAI,EAAE,EAAgI,EAAS"}