{"version":3,"file":"shared-lib.W-tsJrSS.mjs","names":["useId"],"sources":["https:/framerusercontent.com/modules/m5PukZtdXKysIie3NH5o/vLF0LdDzJKd69D0rTiKs/GridBackground.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useId}from\"react\";/**\n * Grid Background — subtle SVG grid pattern, ideal as an overlay on solid hero backgrounds.\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function GridBackground(props){const{lineColor=\"rgba(255,255,255,0.08)\",cellSize=64,lineWidth=3,opacity=5,fadeEdges=true,style}=props;// useId → pattern id unique per instance. Two GridBackgrounds with the same\n// cellSize/lineWidth previously produced duplicate DOM ids (invalid HTML +\n// fragile url(#id) resolution). useId is SSR-stable → no hydration mismatch.\nconst rawId=useId();const patternId=\"grid-\"+rawId.replace(/[^a-zA-Z0-9]/g,\"\");const maskStyle=fadeEdges?{WebkitMaskImage:\"radial-gradient(ellipse at center, black 40%, transparent 90%)\",maskImage:\"radial-gradient(ellipse at center, black 40%, transparent 90%)\"}:{};return /*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",opacity,pointerEvents:\"none\",...maskStyle,...style},\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsxs(\"svg\",{width:\"100%\",height:\"100%\",style:{display:\"block\"},children:[/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsx(\"pattern\",{id:patternId,width:cellSize,height:cellSize,patternUnits:\"userSpaceOnUse\",children:/*#__PURE__*/_jsx(\"path\",{d:`M ${cellSize} 0 L 0 0 0 ${cellSize}`,fill:\"none\",stroke:lineColor,strokeWidth:lineWidth})})}),/*#__PURE__*/_jsx(\"rect\",{width:\"100%\",height:\"100%\",fill:`url(#${patternId})`})]})});}addPropertyControls(GridBackground,{lineColor:{type:ControlType.Color,title:\"Line Color\",defaultValue:\"rgba(255,255,255,0.08)\"},cellSize:{type:ControlType.Number,title:\"Cell Size\",defaultValue:64,min:8,max:256,step:1,unit:\"px\"},lineWidth:{type:ControlType.Number,title:\"Line Width\",defaultValue:1,min:.5,max:4,step:.5,unit:\"px\"},opacity:{type:ControlType.Number,title:\"Opacity\",defaultValue:1,min:0,max:1,step:.05},fadeEdges:{type:ControlType.Boolean,title:\"Fade Edges\",defaultValue:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"GridBackground\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./GridBackground.map"],"mappings":"iLAKG,SAAwB,EAAe,EAAM,CAAC,GAAK,CAAC,YAAU,yBAAyB,WAAS,GAAG,YAAU,EAAE,UAAQ,EAAE,YAAU,GAAK,SAAO,EAGxH,EAAU,QAAxBA,EAAoC,CAAC,CAAC,QAAQ,gBAAgB,EAAE,EAA6L,OAAoB,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,OAAO,OAAO,OAAO,SAAS,SAAS,UAAQ,cAAc,OAAO,GAAhT,EAAU,CAAC,gBAAgB,iEAAiE,UAAU,gEAAgE,EAAE,CAAC,EAAoJ,GAAG,CAAK,EAAE,cAAc,OAAO,SAAsB,EAAM,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,MAAM,CAAC,QAAQ,OAAO,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,SAAsB,EAAK,UAAU,CAAC,GAAG,EAAU,MAAM,EAAS,OAAO,EAAS,aAAa,iBAAiB,SAAsB,EAAK,OAAO,CAAC,EAAE,KAAK,EAAS,aAAa,IAAW,KAAK,OAAO,OAAO,EAAU,YAAY,CAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,OAAO,OAAO,OAAO,KAAK,QAAQ,EAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,iBARt0B,IAAoD,IAAyB,EAQ0vB,EAAoB,EAAe,CAAC,UAAU,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,wBAAwB,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,IAAI,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,KAAK,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,EAAI,CAAC,CAAC"}