{"version":3,"file":"shared-lib.CkL9bvdi.mjs","names":["v0","React.Fragment","__FramerMetadata__","getLocalizedValue","valuesByLocaleId","localizedValues","addPropertyOverrides","enabledGestures","cycleOrder","serializationHash","variantClassNames","transition1","toResponsiveImage","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","SVG","Image","getLocalizedValue","sharedStyle.css","sharedStyle.fonts","useState","v0","v1","React.Fragment","__FramerMetadata__","getLocalizedValue","valuesByLocaleId","localizedValues","addPropertyOverrides","enabledGestures","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableEnumMap","humanReadableVariantMap","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","Image","SVG","sharedStyle.css","sharedStyle.fonts","addPropertyOverrides","Button","ProjectButton","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","useRef","React.useId","className","Image","getLocalizedValue","SVG","mask","SVG","getProps","Icon","className","useRef","isMotionValue","useMemo","isMotionValue","useRef","useCallback","value","isMotionValue","animate","useMemo","useMemo","Slider","useState","useRef","useCallback","value","isMotionValue","useState","_Fragment","Audio","useRef","useCallback","v0","__FramerMetadata__","getLocalizedValue","valuesByLocaleId","localizedValues","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","Play","createLayoutDependency","useRef","React.useId","className","getLocalizedValue","useRef","useState","useCallback","x","linesCleared","currentTheme","p","now","startTransition","_Fragment","React.Fragment","getLocalizedValue","valuesByLocaleId","localizedValues","getProps","className","Controls","React.useContext","React.useMemo","React.Fragment","useRef","React.useId","className","Image","getLocalizedValue","CloseSmall"],"sources":["https:/framerusercontent.com/modules/b7787slfQ7MpR8HvSQrh/5hR2jMbmgrUio3i0zaV3/pb2n7vgsV.js","https:/framerusercontent.com/modules/iv98PGjfJs9mogsm3mFT/SWPkAx42zt4MSHdjxpIS/QZpgl8SlN-0.js","https:/framerusercontent.com/modules/iv98PGjfJs9mogsm3mFT/SWPkAx42zt4MSHdjxpIS/QZpgl8SlN.js","https:/framerusercontent.com/modules/RqDtnxignm44iNV52LC2/igAKjClBDECJ6iOaa7O2/QZpgl8SlN.js","https:/framerusercontent.com/modules/02rxGwlciAiN52h6mYfi/LTopWwOiay63FMUvjzO8/RealtimeClock.js","https:/framerusercontent.com/modules/LeakxsbXuVxjAfFiZ1Iz/mCNrJnlSO1HCh7hhCi1U/n9mVQFzc2-0.js","https:/framerusercontent.com/modules/LeakxsbXuVxjAfFiZ1Iz/mCNrJnlSO1HCh7hhCi1U/n9mVQFzc2.js","https:/framerusercontent.com/modules/ZPfdb1OUeY0Gpdsy6asS/eNayh4sDyDqol8NNU0P9/A8BuzusKz.js","https:/framerusercontent.com/modules/Bvdi3sp8sbeqVj76Uq99/hQwYhPdmrPV504th5s9g/n9mVQFzc2.js","https:/framerusercontent.com/modules/Rp2dFv6zW671K8DRv56M/qb7vEMOQYkCrpRUdqAAV/fCnO3Qwhc.js","https:/framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js","https:/framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js","https:/framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js","https:/framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js","https:/framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js","https:/framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js","https:/framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js","https:/framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js","https:/framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js","https:/framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js","https:/framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js","https:/framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js","https:/framer.com/m/framer/default-utils.js@^0.45.0","https:/framerusercontent.com/modules/0tL3NK6Gdibfi84549mt/wxfj3uKBUiepHMkJD9XI/lodash.js","https:/framer.com/m/framer/lodash.js@0.3.0","https:/framerusercontent.com/modules/AHY1z1xp5QsxaZBkEL9H/7Qvf2RhlgA8L1UHMchaV/Slider.js","https:/framerusercontent.com/modules/NRKVbMFYrBaqL0rx532t/2NLwQRLJdaV5jyzPAzvG/Audio.js","https:/framerusercontent.com/modules/RKO23Gw7YWwXtlg52T4V/gp2jgyhLtRZp6FVRRuu2/ZuJnbUgD1-0.js","https:/framerusercontent.com/modules/RKO23Gw7YWwXtlg52T4V/gp2jgyhLtRZp6FVRRuu2/ZuJnbUgD1.js","https:/framerusercontent.com/modules/jzxd3KoryNRVonLsqo9p/kEzytzOxVQG83JP8Tp76/ZuJnbUgD1.js","https:/framerusercontent.com/modules/m6hWSH9hqvB0MGhgZis7/86SGHeRkDQC4UIg5Uapt/TetrisGame_1.js","https:/framerusercontent.com/modules/QMcyot77vIXM5G2LT38s/5F27jnK5IdQEJx8i7xYJ/xN1chRYFL-0.js","https:/framerusercontent.com/modules/QMcyot77vIXM5G2LT38s/5F27jnK5IdQEJx8i7xYJ/xN1chRYFL.js","https:/framerusercontent.com/modules/FGVt5ZIxIpuMdp7X5xdp/Due1numn71jhDaPetDl8/MNFeffudX.js","https:/framerusercontent.com/modules/q4H8mHDAaoEUiAmHTTko/XfqGHCkyfjcIcjzbduRk/xN1chRYFL.js","https:/framerusercontent.com/modules/4OZYwlBYJrJzxEnY1JYA/u7QvQqjcQafxmpWy2kYZ/siteMetadata.js"],"sourcesContent":["// Generated by Framer (397058d)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOM;MS Sans Serif Regular\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"MS Sans Serif Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"MS Sans Serif\",url:\"https://framerusercontent.com/assets/cuFqT0zd4yPJLYfeBhPc510vSc.woff2\",weight:\"400\"}]}];export const css=['.framer-SXAbM .framer-styles-preset-1y4pcyt:not(.rich-text-wrapper), .framer-SXAbM .framer-styles-preset-1y4pcyt.rich-text-wrapper p { --framer-font-family: \"MS Sans Serif Regular\", \"MS Sans Serif Regular Placeholder\", serif; --framer-font-open-type-features: normal; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: 0em; --framer-line-height: 12px; --framer-paragraph-spacing: 20px; --framer-text-alignment: center; --framer-text-color: var(--token-0b5a920e-1fb9-4916-9516-bb99f3bad18b, #222222); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1439px) and (min-width: 810px) { .framer-SXAbM .framer-styles-preset-1y4pcyt:not(.rich-text-wrapper), .framer-SXAbM .framer-styles-preset-1y4pcyt.rich-text-wrapper p { --framer-font-family: \"MS Sans Serif Regular\", \"MS Sans Serif Regular Placeholder\", serif; --framer-font-open-type-features: normal; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: 0em; --framer-line-height: 12px; --framer-paragraph-spacing: 20px; --framer-text-alignment: center; --framer-text-color: var(--token-0b5a920e-1fb9-4916-9516-bb99f3bad18b, #222222); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-SXAbM .framer-styles-preset-1y4pcyt:not(.rich-text-wrapper), .framer-SXAbM .framer-styles-preset-1y4pcyt.rich-text-wrapper p { --framer-font-family: \"MS Sans Serif Regular\", \"MS Sans Serif Regular Placeholder\", serif; --framer-font-open-type-features: normal; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: 0em; --framer-line-height: 12px; --framer-paragraph-spacing: 20px; --framer-text-alignment: center; --framer-text-color: var(--token-0b5a920e-1fb9-4916-9516-bb99f3bad18b, #222222); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-SXAbM\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";import*as React from\"react\";export const v0=/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1y4pcyt\",\"data-styles-preset\":\"pb2n7vgsV\",children:\"Book a call\"})});\nexport const __FramerMetadata__ = {\"exports\":{\"v0\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0138aee)\nimport*as localizedValues from\"./QZpgl8SlN-0.js\";const valuesByLocaleId={HyIjoKWDY:localizedValues};export default function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0138aee)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image,RichText,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/b7787slfQ7MpR8HvSQrh/5hR2jMbmgrUio3i0zaV3/pb2n7vgsV.js\";import getLocalizedValue from\"https://framerusercontent.com/modules/iv98PGjfJs9mogsm3mFT/SWPkAx42zt4MSHdjxpIS/QZpgl8SlN.js\";const enabledGestures={LWgKGmZ82:{hover:true,pressed:true},NCeq0DyOz:{hover:true,pressed:true}};const cycleOrder=[\"NCeq0DyOz\",\"AqbrRyNLb\",\"LWgKGmZ82\"];const serializationHash=\"framer-cZ2Hj\";const variantClassNames={AqbrRyNLb:\"framer-v-1as53u6\",LWgKGmZ82:\"framer-v-1893z4v\",NCeq0DyOz:\"framer-v-y7n0cy\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const N1_dz3z1p=undefined;const CWtQYkqF8=undefined;const GoRtsT9oy=undefined;const z4moIcdm0=undefined;const transition1={bounce:0,delay:0,duration:.1,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};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={\"Variant 3\":\"LWgKGmZ82\",Default:\"NCeq0DyOz\",Disabled:\"AqbrRyNLb\"};const getProps=({click,height,id,image,text,title,width,...props})=>{return{...props,CWtQYkqF8:image??props.CWtQYkqF8??{alt:\"Contact icon\",pixelHeight:64,pixelWidth:64,src:\"https://framerusercontent.com/images/GK14tZeMYUvhdSlVZegueA7DFg.png?width=64&height=64\"},GoRtsT9oy:text??props.GoRtsT9oy??true,N1_dz3z1p:click??props.N1_dz3z1p,variant:humanReadableVariantMap[props.variant]??props.variant??\"NCeq0DyOz\",z4moIcdm0:title??props.z4moIcdm0??\"Book a call\"};};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,z4moIcdm0,CWtQYkqF8,N1_dz3z1p,GoRtsT9oy,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"NCeq0DyOz\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1pbiart=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(N1_dz3z1p){const res=await N1_dz3z1p(...args);if(res===false)return false;}});const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"LWgKGmZ82-hover\",\"LWgKGmZ82-pressed\"].includes(gestureVariant))return false;if(baseVariant===\"LWgKGmZ82\")return false;return true;};const isDisplayed1=()=>{if([\"LWgKGmZ82-hover\",\"LWgKGmZ82-pressed\"].includes(gestureVariant))return true;if(baseVariant===\"LWgKGmZ82\")return true;return false;};const isDisplayed2=value=>{if([\"LWgKGmZ82-hover\",\"LWgKGmZ82-pressed\"].includes(gestureVariant))return value;if(baseVariant===\"LWgKGmZ82\")return value;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-y7n0cy\",className,classNames),\"data-framer-name\":\"Default\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"NCeq0DyOz\",onTap:onTap1pbiart,ref:refBinding,style:{backgroundColor:\"rgb(192, 192, 192)\",boxShadow:\"inset -2px -2px 0px 0px rgb(10, 10, 10), inset 2px 2px 0px 0px rgb(255, 255, 255), inset -4px -4px 0px 0px rgb(128, 128, 128), inset 4px 4px 0px 0px rgb(223, 223, 223)\",opacity:1,...style},variants:{\"LWgKGmZ82-hover\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset 2px 2px 0px 0px rgb(10, 10, 10), inset -2px -2px 0px 0px rgb(255, 255, 255), inset 4px 4px 0px 0px rgb(128, 128, 128), inset -4px -4px 0px 0px rgb(223, 223, 223)\"},\"LWgKGmZ82-pressed\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset 2px 2px 0px 0px rgb(10, 10, 10), inset -2px -2px 0px 0px rgb(255, 255, 255), inset 4px 4px 0px 0px rgb(128, 128, 128), inset -4px -4px 0px 0px rgb(223, 223, 223)\"},\"NCeq0DyOz-hover\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset 2px 2px 0px 0px rgb(10, 10, 10), inset -2px -2px 0px 0px rgb(255, 255, 255), inset 4px 4px 0px 0px rgb(128, 128, 128), inset -4px -4px 0px 0px rgb(223, 223, 223)\",opacity:1},\"NCeq0DyOz-pressed\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset 2px 2px 0px 0px rgb(10, 10, 10), inset -2px -2px 0px 0px rgb(255, 255, 255), inset 4px 4px 0px 0px rgb(128, 128, 128), inset -4px -4px 0px 0px rgb(223, 223, 223)\",opacity:1},AqbrRyNLb:{opacity:.3},LWgKGmZ82:{opacity:1}},...addPropertyOverrides({\"LWgKGmZ82-hover\":{\"data-framer-name\":undefined},\"LWgKGmZ82-pressed\":{\"data-framer-name\":undefined},\"NCeq0DyOz-hover\":{\"data-framer-name\":undefined},\"NCeq0DyOz-pressed\":{\"data-framer-name\":undefined},AqbrRyNLb:{\"data-framer-name\":\"Disabled\"},LWgKGmZ82:{\"data-framer-name\":\"Variant 3\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-qnhkla\",\"data-framer-name\":\"Frame 2\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:12,intrinsicWidth:10,layoutDependency:layoutDependency,layoutId:\"C84pY1wFE\",svg:'<svg width=\"10\" height=\"12\" viewBox=\"0 0 10 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.5 1.625L2.5 10.375L3.75 10.375L3.75 9.125L5 9.125L5 7.875L6.25 7.875L6.25 6.625L7.5 6.625L7.5 5.375L6.25 5.375L6.25 4.125L5 4.125L5 2.875L3.75 2.875L3.75 1.625L2.5 1.625Z\" fill=\"black\"/>\\n</svg>\\n',withExternalLayout:true}),isDisplayed1()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"Contact icon\",fit:\"fill\",pixelHeight:64,pixelWidth:64,...toResponsiveImage(CWtQYkqF8)},className:\"framer-1xhrle7\",\"data-framer-name\":\"joystick_button\",layoutDependency:layoutDependency,layoutId:\"vLbA7RFhV\",...addPropertyOverrides({LWgKGmZ82:{background:{alt:\"Contact icon\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+(12+((componentViewport?.height||44)-24-20)/2)),pixelHeight:64,pixelWidth:64,sizes:\"20px\",...toResponsiveImage(CWtQYkqF8)}}},baseVariant,gestureVariant)}),isDisplayed2(GoRtsT9oy)&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:getLocalizedValue(\"v0\",activeLocale)??/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1y4pcyt\",\"data-styles-preset\":\"pb2n7vgsV\",children:\"Book a call\"})}),className:\"framer-1t1keov\",\"data-framer-name\":\"Click me\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"d8GzdQ20J\",style:{\"--framer-paragraph-spacing\":\"0px\"},text:z4moIcdm0,verticalAlignment:\"center\",withExternalLayout:true})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-cZ2Hj.framer-97t5qd, .framer-cZ2Hj .framer-97t5qd { display: block; }\",\".framer-cZ2Hj.framer-y7n0cy { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-start; overflow: visible; padding: 12px; position: relative; width: min-content; }\",\".framer-cZ2Hj .framer-qnhkla { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 16px); position: relative; width: 16px; }\",\".framer-cZ2Hj .framer-1xhrle7 { flex: none; height: 20px; position: relative; width: 20px; }\",\".framer-cZ2Hj .framer-1t1keov { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-cZ2Hj.framer-v-1893z4v .framer-1xhrle7 { order: 2; }\",\".framer-cZ2Hj.framer-v-1893z4v .framer-1t1keov { -webkit-user-select: none; order: 3; user-select: none; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 40\n * @framerIntrinsicWidth 40\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"AqbrRyNLb\":{\"layout\":[\"auto\",\"auto\"]},\"LWgKGmZ82\":{\"layout\":[\"auto\",\"auto\"]},\"hhMhgBVo2\":{\"layout\":[\"auto\",\"auto\"]},\"H4hmbQI5F\":{\"layout\":[\"auto\",\"auto\"]},\"JGANPUBrk\":{\"layout\":[\"auto\",\"auto\"]},\"hSJgvlSON\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"z4moIcdm0\":\"title\",\"CWtQYkqF8\":\"image\",\"N1_dz3z1p\":\"click\",\"GoRtsT9oy\":\"text\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerQZpgl8SlN=withCSS(Component,css,\"framer-cZ2Hj\");export default FramerQZpgl8SlN;FramerQZpgl8SlN.displayName=\"Project button\";FramerQZpgl8SlN.defaultProps={height:40,width:40};addPropertyControls(FramerQZpgl8SlN,{variant:{options:[\"NCeq0DyOz\",\"AqbrRyNLb\",\"LWgKGmZ82\"],optionTitles:[\"Default\",\"Disabled\",\"Variant 3\"],title:\"Variant\",type:ControlType.Enum},z4moIcdm0:{defaultValue:\"Book a call\",displayTextArea:false,title:\"Title\",type:ControlType.String},CWtQYkqF8:{__defaultAssetReference:\"data:framer/asset-reference,GK14tZeMYUvhdSlVZegueA7DFg.png?originalFilename=modem-3.png&width=64&height=64\",__vekterDefault:{alt:\"Contact icon\",assetReference:\"data:framer/asset-reference,GK14tZeMYUvhdSlVZegueA7DFg.png?originalFilename=modem-3.png&width=64&height=64\"},title:\"Image\",type:ControlType.ResponsiveImage},N1_dz3z1p:{title:\"Click\",type:ControlType.EventHandler},GoRtsT9oy:{defaultValue:true,title:\"Text\",type:ControlType.Boolean}});addFonts(FramerQZpgl8SlN,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerQZpgl8SlN\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"AqbrRyNLb\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"LWgKGmZ82\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"hhMhgBVo2\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"H4hmbQI5F\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"JGANPUBrk\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"hSJgvlSON\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerVariables\":\"{\\\"z4moIcdm0\\\":\\\"title\\\",\\\"CWtQYkqF8\\\":\\\"image\\\",\\\"N1_dz3z1p\\\":\\\"click\\\",\\\"GoRtsT9oy\\\":\\\"text\\\"}\",\"framerIntrinsicWidth\":\"40\",\"framerDisplayContentsDiv\":\"false\",\"framerColorSyntax\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"40\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./QZpgl8SlN.map","// Real-time clock component showing current time with hours, minutes, seconds and timezone\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useEffect,startTransition}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n */export default function RealtimeClock(props){const{timeFont,timezoneFont,timeFontSize,timezoneFontSize,timeColor,timezoneColor,backgroundColor,showTimezone,format24Hour,showSeconds,padding,alignItems,justifyContent,flexDirection}=props;const[currentTime,setCurrentTime]=useState(new Date);useEffect(()=>{const timer=setInterval(()=>{startTransition(()=>{setCurrentTime(new Date);});},1e3);return()=>clearInterval(timer);},[]);const formatTime=date=>{const hours=date.getHours();const minutes=date.getMinutes();const seconds=date.getSeconds();if(format24Hour){const timeString=`${hours.toString().padStart(2,\"0\")}:${minutes.toString().padStart(2,\"0\")}`;return showSeconds?`${timeString}:${seconds.toString().padStart(2,\"0\")}`:timeString;}else{const hours12=hours%12||12;const ampm=hours>=12?\"PM\":\"AM\";const timeString=`${hours12}:${minutes.toString().padStart(2,\"0\")}`;const fullTime=showSeconds?`${timeString}:${seconds.toString().padStart(2,\"0\")}`:timeString;return`${fullTime} ${ampm}`;}};const getTimezone=()=>{const date=new Date;const timeZoneOffset=date.getTimezoneOffset();// Convert offset to hours\nconst offsetHours=Math.abs(timeZoneOffset)/60;const offsetSign=timeZoneOffset<=0?\"+\":\"-\";// Full timezone names based on offset\nconst timezoneMap={\"-12\":\"BIT\",\"-11\":\"SST\",\"-10\":\"HST\",\"-9\":\"AKST\",\"-8\":\"PST\",\"-7\":\"MST\",\"-6\":\"CST\",\"-5\":\"EST\",\"-4\":\"AST\",\"-3\":\"ART\",\"-2\":\"GST\",\"-1\":\"CVT\",\"0\":\"GMT\",\"1\":\"CET\",\"2\":\"EET\",\"3\":\"MSK\",\"4\":\"GST\",\"5\":\"PKT\",\"6\":\"BST\",\"7\":\"ICT\",\"8\":\"CST\",\"9\":\"JST\",\"10\":\"AEST\",\"11\":\"SBT\",\"12\":\"NZST\"};const offsetKey=timeZoneOffset<=0?offsetHours.toString():(-offsetHours).toString();return timezoneMap[offsetKey]||`UTC${offsetSign}${offsetHours}`;};const isFixedWidth=props?.style&&props.style.width===\"100%\";return /*#__PURE__*/_jsxs(\"div\",{style:{...props.style,...isFixedWidth?{...props?.style}:{minWidth:\"max-content\"},backgroundColor,padding,borderRadius:8,display:\"flex\",flexDirection,alignItems,justifyContent,gap:showTimezone?8:0,position:\"relative\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{...timeFont,fontSize:timeFontSize,color:timeColor,whiteSpace:\"nowrap\"},children:formatTime(currentTime)}),showTimezone&&/*#__PURE__*/_jsx(\"div\",{style:{...timezoneFont,fontSize:timezoneFontSize,color:timezoneColor,whiteSpace:\"nowrap\"},children:getTimezone()})]});}addPropertyControls(RealtimeClock,{flexDirection:{type:ControlType.Enum,title:\"Direction\",options:[\"row\",\"column\"],optionTitles:[\"Horizontal\",\"Vertical\"],defaultValue:\"column\",displaySegmentedControl:true},alignItems:{type:ControlType.Enum,title:\"Align Items\",options:[\"flex-start\",\"center\",\"flex-end\"],optionTitles:[\"Start\",\"Center\",\"End\"],defaultValue:\"center\",displaySegmentedControl:true},justifyContent:{type:ControlType.Enum,title:\"Justify Content\",options:[\"flex-start\",\"center\",\"flex-end\",\"space-between\",\"space-around\",\"space-evenly\"],optionTitles:[\"Start\",\"Center\",\"End\",\"Space Between\",\"Space Around\",\"Space Evenly\"],defaultValue:\"center\"},timeFontSize:{type:ControlType.Number,title:\"Time Font Size\",defaultValue:32,min:8,max:120,step:1,unit:\"px\"},timezoneFontSize:{type:ControlType.Number,title:\"Timezone Font Size\",defaultValue:14,min:8,max:48,step:1,unit:\"px\"},timeFont:{type:ControlType.Font,title:\"Time Font\",defaultValue:{variant:\"Bold\",letterSpacing:\"-0.02em\",lineHeight:\"1em\"},controls:\"extended\",defaultFontType:\"sans-serif\"},timezoneFont:{type:ControlType.Font,title:\"Timezone Font\",defaultValue:{variant:\"Medium\",letterSpacing:\"-0.01em\",lineHeight:\"1em\"},controls:\"extended\",defaultFontType:\"sans-serif\"},timeColor:{type:ControlType.Color,title:\"Time Color\",defaultValue:\"#000000\"},timezoneColor:{type:ControlType.Color,title:\"Timezone Color\",defaultValue:\"#666666\"},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFFFFF\"},showTimezone:{type:ControlType.Boolean,title:\"Show Timezone\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},format24Hour:{type:ControlType.Boolean,title:\"Time Format\",defaultValue:false,enabledTitle:\"24 Hour\",disabledTitle:\"12 Hour\"},showSeconds:{type:ControlType.Boolean,title:\"Show Seconds\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"16px 20px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RealtimeClock\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RealtimeClock.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";import*as React from\"react\";export const v0=\"Hamdiya Alhassan con\";export const v1=/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO01TIFNhbnMgU2VyaWYgQm9sZCBSZWd1bGFy\",\"--framer-font-family\":'\"MS Sans Serif Bold Regular\", \"MS Sans Serif Bold Regular Placeholder\", serif',\"--framer-font-size\":\"14px\",\"--framer-letter-spacing\":\"0.09em\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-0b5a920e-1fb9-4916-9516-bb99f3bad18b, rgb(34, 34, 34)))\"},children:\"HAMDIYA ALHASSAN\"})});export const v2=\"Projects\";export const v3=\"Projects icon\";export const v4=\"Information\";export const v5=\"Information icon\";\nexport const __FramerMetadata__ = {\"exports\":{\"v2\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v1\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v5\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v3\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v0\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v4\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (397058d)\nimport*as localizedValues from\"./n9mVQFzc2-0.js\";const valuesByLocaleId={HyIjoKWDY:localizedValues};export default function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (808fccf)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image,Link,RichText,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/b7787slfQ7MpR8HvSQrh/5hR2jMbmgrUio3i0zaV3/pb2n7vgsV.js\";const enabledGestures={APqYJP4Ga:{pressed:true},qYtMZo4qi:{pressed:true},tOjY5ufnC:{hover:true,pressed:true}};const cycleOrder=[\"YdijvtPUO\",\"tOjY5ufnC\",\"APqYJP4Ga\",\"KMJyto4gM\",\"qYtMZo4qi\",\"yqIrMNp9L\"];const serializationHash=\"framer-YB80g\";const variantClassNames={APqYJP4Ga:\"framer-v-1pvzjud\",KMJyto4gM:\"framer-v-9hneek\",qYtMZo4qi:\"framer-v-1uv8g8s\",tOjY5ufnC:\"framer-v-1w09gpl\",YdijvtPUO:\"framer-v-obu801\",yqIrMNp9L:\"framer-v-1rbapjf\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const equals=(a,b)=>{return typeof a===\"string\"&&typeof b===\"string\"?a.toLowerCase()===b.toLowerCase():a===b;};const convertFromBoolean=(value,activeLocale)=>{if(value){return\"\";}else{return\"\";}};const toString=value=>{return typeof value===\"string\"?value:String(value);};const transition1={bounce:0,delay:0,duration:.1,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};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 humanReadableEnumMap={\"Space Around\":\"space-around\",\"Space Between\":\"space-between\",\"Space Evenly\":\"space-evenly\",Center:\"center\",End:\"flex-end\",Start:\"flex-start\"};const humanReadableVariantMap={Active_small:\"KMJyto4gM\",Active:\"YdijvtPUO\",Disabled:\"yqIrMNp9L\",Icon_inactive:\"APqYJP4Ga\",Imactive_small:\"qYtMZo4qi\",Inactive:\"tOjY5ufnC\"};const getProps=({click,distribute,height,id,image,link,text,title,width,...props})=>{return{...props,e20WhL_p5:text??props.e20WhL_p5??true,j8GrDZlDe:link??props.j8GrDZlDe,OMHdTZ25M:image??props.OMHdTZ25M??{alt:\"\",pixelHeight:32,pixelWidth:32,src:\"https://framerusercontent.com/images/M9XbcIoKJSDcdHq0ORyCG2hD24.png?width=32&height=32\"},qRebc4ro9:humanReadableEnumMap[distribute]??distribute??props.qRebc4ro9??\"flex-start\",variant:humanReadableVariantMap[props.variant]??props.variant??\"YdijvtPUO\",XjEhpo2ei:click??props.XjEhpo2ei,XL8xSeUB0:title??props.XL8xSeUB0??\"Projects\"};};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,XL8xSeUB0,OMHdTZ25M,XjEhpo2ei,e20WhL_p5,qRebc4ro9,j8GrDZlDe,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"YdijvtPUO\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap7b9ami=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(XjEhpo2ei){const res=await XjEhpo2ei(...args);if(res===false)return false;}});const sharedStyleClassNames=[sharedStyle.className];const ariaLabel=toString(convertFromBoolean(equals(e20WhL_p5,true),activeLocale));const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(gestureVariant===\"APqYJP4Ga-pressed\")return false;if([\"APqYJP4Ga\",\"yqIrMNp9L\"].includes(baseVariant))return false;return true;};const isDisplayed1=value=>{if(gestureVariant===\"APqYJP4Ga-pressed\")return false;if([\"APqYJP4Ga\",\"yqIrMNp9L\"].includes(baseVariant))return false;return value;};const isDisplayed2=()=>{if(gestureVariant===\"APqYJP4Ga-pressed\")return true;if([\"APqYJP4Ga\",\"yqIrMNp9L\"].includes(baseVariant))return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Link,{href:j8GrDZlDe,motionChild:true,nodeId:\"YdijvtPUO\",openInNewTab:false,scopeId:\"A8BuzusKz\",smoothScroll:true,...addPropertyOverrides({\"APqYJP4Ga-pressed\":{href:undefined},APqYJP4Ga:{href:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,\"aria-label\":ariaLabel,className:`${cx(scopingClassNames,\"framer-obu801\",className,classNames)} framer-sqv1pq`,\"data-framer-name\":\"Active\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"YdijvtPUO\",onTap:onTap7b9ami,ref:refBinding,style:{\"--oo8jfm\":qRebc4ro9,backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset -2px -2px 0px 0px rgb(255, 255, 255), inset 2px 2px 0px 0px rgb(10, 10, 10), inset -4px -4px 0px 0px rgb(223, 223, 223), inset 4px 4px 0px 0px rgb(128, 128, 128)\",opacity:1,...style},variants:{\"APqYJP4Ga-pressed\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset -2px -2px 0px 0px rgb(255, 255, 255), inset 2px 2px 0px 0px rgb(10, 10, 10), inset -4px -4px 0px 0px rgb(223, 223, 223), inset 4px 4px 0px 0px rgb(128, 128, 128)\",opacity:1},\"qYtMZo4qi-pressed\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset 2px 2px 0px 0px rgb(10, 10, 10), inset -2px -2px 0px 0px rgb(255, 255, 255), inset 4px 4px 0px 0px rgb(128, 128, 128), inset -4px -4px 0px 0px rgb(223, 223, 223)\",opacity:1},\"tOjY5ufnC-hover\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset 2px 2px 0px 0px rgb(10, 10, 10), inset -2px -2px 0px 0px rgb(255, 255, 255), inset 4px 4px 0px 0px rgb(128, 128, 128), inset -4px -4px 0px 0px rgb(223, 223, 223)\",opacity:1},\"tOjY5ufnC-pressed\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset -2px -2px 0px 0px rgb(255, 255, 255), inset 2px 2px 0px 0px rgb(10, 10, 10), inset -4px -4px 0px 0px rgb(223, 223, 223), inset 4px 4px 0px 0px rgb(128, 128, 128)\",opacity:1},APqYJP4Ga:{backgroundColor:\"rgb(192, 192, 192)\",boxShadow:\"inset -2px -2px 0px 0px rgb(10, 10, 10), inset 2px 2px 0px 0px rgb(255, 255, 255), inset -4px -4px 0px 0px rgb(128, 128, 128), inset 4px 4px 0px 0px rgb(223, 223, 223)\"},qYtMZo4qi:{backgroundColor:\"rgb(192, 192, 192)\",boxShadow:\"inset -2px -2px 0px 0px rgb(10, 10, 10), inset 2px 2px 0px 0px rgb(255, 255, 255), inset -4px -4px 0px 0px rgb(128, 128, 128), inset 4px 4px 0px 0px rgb(223, 223, 223)\"},tOjY5ufnC:{backgroundColor:\"rgb(192, 192, 192)\",boxShadow:\"inset -2px -2px 0px 0px rgb(10, 10, 10), inset 2px 2px 0px 0px rgb(255, 255, 255), inset -4px -4px 0px 0px rgb(128, 128, 128), inset 4px 4px 0px 0px rgb(223, 223, 223)\"},yqIrMNp9L:{backgroundColor:\"rgb(192, 192, 192)\",boxShadow:\"inset -2px -2px 0px 0px rgb(10, 10, 10), inset 2px 2px 0px 0px rgb(255, 255, 255), inset -4px -4px 0px 0px rgb(128, 128, 128), inset 4px 4px 0px 0px rgb(223, 223, 223)\",opacity:.3}},...addPropertyOverrides({\"APqYJP4Ga-pressed\":{\"data-framer-name\":undefined},\"qYtMZo4qi-pressed\":{\"data-framer-name\":undefined},\"tOjY5ufnC-hover\":{\"data-framer-name\":undefined},\"tOjY5ufnC-pressed\":{\"data-framer-name\":undefined},APqYJP4Ga:{\"data-framer-name\":\"Icon_inactive\"},KMJyto4gM:{\"data-framer-name\":\"Active_small\"},qYtMZo4qi:{\"data-framer-name\":\"Imactive_small\"},tOjY5ufnC:{\"data-framer-name\":\"Inactive\"},yqIrMNp9L:{\"data-framer-name\":\"Disabled\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-11ewmwr\",\"data-framer-name\":\"joystick_button\",layoutDependency:layoutDependency,layoutId:\"X5O5p0w8G\",children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-25jlh0\",\"data-framer-name\":\"joystick_button\",layoutDependency:layoutDependency,layoutId:\"unGnu8XU9\",children:/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+(8+((componentViewport?.height||36)-16-19)/2)+0+0),pixelHeight:32,pixelWidth:32,sizes:\"20px\",...toResponsiveImage(OMHdTZ25M)},className:\"framer-1d6rf5c\",\"data-framer-name\":\"joystick_button\",layoutDependency:layoutDependency,layoutId:\"cgi34O1my\",...addPropertyOverrides({KMJyto4gM:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+(8+((componentViewport?.height||32)-16-17)/2)+0+0),pixelHeight:32,pixelWidth:32,sizes:\"16px\",...toResponsiveImage(OMHdTZ25M)}},qYtMZo4qi:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+(8+((componentViewport?.height||32)-16-17)/2)+0+0),pixelHeight:32,pixelWidth:32,sizes:\"16px\",...toResponsiveImage(OMHdTZ25M)}}},baseVariant,gestureVariant)})})}),isDisplayed1(e20WhL_p5)&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1y4pcyt\",\"data-styles-preset\":\"pb2n7vgsV\",children:\"Projects\"})}),className:\"framer-1q1ki93\",\"data-framer-name\":\"Click me\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"LzgvWMR85\",style:{\"--framer-paragraph-spacing\":\"0px\"},text:XL8xSeUB0,verticalAlignment:\"center\",withExternalLayout:true}),isDisplayed2()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-1y31u48\",\"data-framer-name\":\"Frame 2\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:12,intrinsicWidth:10,layoutDependency:layoutDependency,layoutId:\"kibUguIC5\",svg:'<svg width=\"10\" height=\"12\" viewBox=\"0 0 10 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.5 1.625L2.5 10.375L3.75 10.375L3.75 9.125L5 9.125L5 7.875L6.25 7.875L6.25 6.625L7.5 6.625L7.5 5.375L6.25 5.375L6.25 4.125L5 4.125L5 2.875L3.75 2.875L3.75 1.625L2.5 1.625Z\" fill=\"black\"/>\\n</svg>\\n',withExternalLayout:true})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-YB80g.framer-sqv1pq, .framer-YB80g .framer-sqv1pq { display: block; }\",\".framer-YB80g.framer-obu801 { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: var(--oo8jfm); overflow: visible; padding: 8px 12px 8px 12px; position: relative; text-decoration: none; width: min-content; }\",\".framer-YB80g .framer-11ewmwr { aspect-ratio: 1 / 1; flex: none; gap: 0px; height: var(--framer-aspect-ratio-supported, 20px); overflow: visible; position: relative; width: 20px; }\",\".framer-YB80g .framer-25jlh0 { bottom: 0px; flex: none; gap: 0px; left: 0px; overflow: visible; position: absolute; right: 0px; top: 0px; }\",\".framer-YB80g .framer-1d6rf5c { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; }\",\".framer-YB80g .framer-1q1ki93 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-YB80g .framer-1y31u48 { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 16px); position: relative; width: 16px; }\",\".framer-YB80g.framer-v-1pvzjud.framer-obu801, .framer-YB80g.framer-v-1rbapjf.framer-obu801 { padding: 12px; }\",\".framer-YB80g.framer-v-9hneek .framer-11ewmwr, .framer-YB80g.framer-v-1uv8g8s .framer-11ewmwr { height: var(--framer-aspect-ratio-supported, 16px); width: 16px; }\",\".framer-YB80g.framer-v-1w09gpl.pressed .framer-11ewmwr, .framer-YB80g.framer-v-1w09gpl.pressed .framer-1q1ki93 { z-index: 2; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 36\n * @framerIntrinsicWidth 100\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"tOjY5ufnC\":{\"layout\":[\"auto\",\"auto\"]},\"APqYJP4Ga\":{\"layout\":[\"auto\",\"auto\"]},\"KMJyto4gM\":{\"layout\":[\"auto\",\"auto\"]},\"qYtMZo4qi\":{\"layout\":[\"auto\",\"auto\"]},\"yqIrMNp9L\":{\"layout\":[\"auto\",\"auto\"]},\"JDTaMEyZD\":{\"layout\":[\"auto\",\"auto\"]},\"Z7PcmFnB8\":{\"layout\":[\"auto\",\"auto\"]},\"hKNpfVKm2\":{\"layout\":[\"auto\",\"auto\"]},\"bdFcikAuZ\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"XL8xSeUB0\":\"title\",\"OMHdTZ25M\":\"image\",\"XjEhpo2ei\":\"click\",\"e20WhL_p5\":\"text\",\"qRebc4ro9\":\"distribute\",\"j8GrDZlDe\":\"link\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerA8BuzusKz=withCSS(Component,css,\"framer-YB80g\");export default FramerA8BuzusKz;FramerA8BuzusKz.displayName=\"Button\";FramerA8BuzusKz.defaultProps={height:36,width:100};addPropertyControls(FramerA8BuzusKz,{variant:{options:[\"YdijvtPUO\",\"tOjY5ufnC\",\"APqYJP4Ga\",\"KMJyto4gM\",\"qYtMZo4qi\",\"yqIrMNp9L\"],optionTitles:[\"Active\",\"Inactive\",\"Icon_inactive\",\"Active_small\",\"Imactive_small\",\"Disabled\"],title:\"Variant\",type:ControlType.Enum},XL8xSeUB0:{defaultValue:\"Projects\",displayTextArea:false,title:\"Title\",type:ControlType.String},OMHdTZ25M:{__defaultAssetReference:\"data:framer/asset-reference,M9XbcIoKJSDcdHq0ORyCG2hD24.png?width=32&height=32\",__vekterDefault:{alt:\"\",assetReference:\"data:framer/asset-reference,M9XbcIoKJSDcdHq0ORyCG2hD24.png?width=32&height=32\"},title:\"Image\",type:ControlType.ResponsiveImage},XjEhpo2ei:{title:\"Click\",type:ControlType.EventHandler},e20WhL_p5:{defaultValue:true,title:\"Text\",type:ControlType.Boolean},qRebc4ro9:{defaultValue:\"flex-start\",options:[\"flex-start\",\"center\",\"flex-end\",\"space-between\",\"space-around\",\"space-evenly\"],optionTitles:[\"Start\",\"Center\",\"End\",\"Space Between\",\"Space Around\",\"Space Evenly\"],title:\"Distribute\",type:ControlType.Enum},j8GrDZlDe:{title:\"Link\",type:ControlType.Link}});addFonts(FramerA8BuzusKz,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerA8BuzusKz\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"100\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"tOjY5ufnC\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"APqYJP4Ga\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"KMJyto4gM\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"qYtMZo4qi\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"yqIrMNp9L\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"JDTaMEyZD\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"Z7PcmFnB8\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"hKNpfVKm2\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"bdFcikAuZ\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerColorSyntax\":\"true\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"XL8xSeUB0\\\":\\\"title\\\",\\\"OMHdTZ25M\\\":\\\"image\\\",\\\"XjEhpo2ei\\\":\\\"click\\\",\\\"e20WhL_p5\\\":\\\"text\\\",\\\"qRebc4ro9\\\":\\\"distribute\\\",\\\"j8GrDZlDe\\\":\\\"link\\\"}\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"36\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./A8BuzusKz.map","// Generated by Framer (397058d)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getLoadingLazyAtYPosition,getPropertyControls,Image,Link,ResolveLinks,RichText,SmartComponentScopedContainer,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useRouter,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import RealtimeClock from\"https://framerusercontent.com/modules/02rxGwlciAiN52h6mYfi/LTopWwOiay63FMUvjzO8/RealtimeClock.js\";import getLocalizedValue from\"https://framerusercontent.com/modules/LeakxsbXuVxjAfFiZ1Iz/mCNrJnlSO1HCh7hhCi1U/n9mVQFzc2.js\";import Button from\"https://framerusercontent.com/modules/ZPfdb1OUeY0Gpdsy6asS/eNayh4sDyDqol8NNU0P9/A8BuzusKz.js\";import ProjectButton from\"https://framerusercontent.com/modules/RqDtnxignm44iNV52LC2/igAKjClBDECJ6iOaa7O2/QZpgl8SlN.js\";const ButtonFonts=getFonts(Button);const ProjectButtonFonts=getFonts(ProjectButton);const RealtimeClockFonts=getFonts(RealtimeClock);const ButtonControls=getPropertyControls(Button);const cycleOrder=[\"otfZvzsTu\",\"EerfUf4Nv\",\"DzGh62WW8\"];const serializationHash=\"framer-WDj49\";const variantClassNames={DzGh62WW8:\"framer-v-1bng0jq\",EerfUf4Nv:\"framer-v-1o1d0t2\",otfZvzsTu:\"framer-v-13zc52l\"};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 addImageAlt=(image,alt)=>{if(!image||typeof image!==\"object\"){return;}return{...image,alt};};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 humanReadableEnumMap={Active_small:\"KMJyto4gM\",Active:\"YdijvtPUO\",Disabled:\"yqIrMNp9L\",Icon_inactive:\"APqYJP4Ga\",Imactive_small:\"qYtMZo4qi\",Inactive:\"tOjY5ufnC\"};const humanReadableVariantMap={Desktop:\"otfZvzsTu\",Phone:\"DzGh62WW8\",Tablet:\"EerfUf4Nv\"};const getProps=({click,height,id,info,infoSmall,overlayOpen,projects,projectsSmall,width,...props})=>{return{...props,cJyLDljyA:overlayOpen??props.cJyLDljyA,e86ot6d7Z:humanReadableEnumMap[projects]??projects??props.e86ot6d7Z??\"YdijvtPUO\",hNJKNWwLX:humanReadableEnumMap[info]??info??props.hNJKNWwLX??\"tOjY5ufnC\",Q6hVFivKy:humanReadableEnumMap[projectsSmall]??projectsSmall??props.Q6hVFivKy??\"KMJyto4gM\",snsQjXX8k:click??props.snsQjXX8k,variant:humanReadableVariantMap[props.variant]??props.variant??\"otfZvzsTu\",vLeYi4_G8:humanReadableEnumMap[infoSmall]??infoSmall??props.vLeYi4_G8??\"qYtMZo4qi\"};};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,e86ot6d7Z,hNJKNWwLX,Q6hVFivKy,vLeYi4_G8,cJyLDljyA,snsQjXX8k,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"otfZvzsTu\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTaprzs7ra=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(snsQjXX8k){const res=await snsQjXX8k(...args);if(res===false)return false;}});const N1_dz3z1p1nbrdw2=activeVariantCallback(async(...args)=>{if(cJyLDljyA){const res=await cJyLDljyA(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"EerfUf4Nv\",\"DzGh62WW8\"].includes(baseVariant))return false;return true;};const router=useRouter();const isDisplayed1=()=>{if(baseVariant===\"DzGh62WW8\")return false;return true;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-13zc52l\",className,classNames),\"data-framer-name\":\"Desktop\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"otfZvzsTu\",onTap:onTaprzs7ra,ref:refBinding,style:{backgroundColor:\"rgb(184, 192, 193)\",boxShadow:\"inset 2px 2px 0px 0px rgb(255, 255, 255), inset -2px -2px 0px 0px rgb(128, 128, 128), inset 1px 1px 0px 0px rgb(223, 223, 223), inset -1px -1px 0px 0px rgba(10, 10, 10, 0.98)\",...style},...addPropertyOverrides({DzGh62WW8:{\"data-framer-name\":\"Phone\"},EerfUf4Nv:{\"data-framer-name\":\"Tablet\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-12jkce2\",layoutDependency:layoutDependency,layoutId:\"lBBQJNJYD\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-19w2jyf\",layoutDependency:layoutDependency,layoutId:\"UqNHWoVnt\",children:[/*#__PURE__*/_jsx(Link,{href:{webPageId:\"UnMv0KEQI\"},motionChild:true,nodeId:\"fH2sPKhAF\",openInNewTab:false,scopeId:\"n9mVQFzc2\",children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-nkq8m2 framer-18tj2d5\",\"data-framer-name\":\"Button\",layoutDependency:layoutDependency,layoutId:\"fH2sPKhAF\",style:{backgroundColor:\"rgb(192, 192, 192)\",boxShadow:\"inset -3px -3px 0px 0px rgb(223, 223, 223), inset 3px 3px 0px 0px rgb(128, 128, 128)\"},children:[/*#__PURE__*/_jsx(Image,{background:{alt:\"Hamdiya Alhassan con\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+10+0+0+8),pixelHeight:300,pixelWidth:300,src:\"https://framerusercontent.com/images/4yIfdimyBEOVY6zAwqkIj09PiM.png?width=300&height=300\"},className:\"framer-7p0olh\",\"data-framer-name\":\"joystick_button\",layoutDependency:layoutDependency,layoutId:\"OoeSEWYyk\",...addPropertyOverrides({DzGh62WW8:{background:{alt:\"Hamdiya Alhassan con\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+8+0+0+8),pixelHeight:300,pixelWidth:300,src:\"https://framerusercontent.com/images/4yIfdimyBEOVY6zAwqkIj09PiM.png?width=300&height=300\"}},EerfUf4Nv:{background:{alt:\"Hamdiya Alhassan con\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+10+1.5+0+7),pixelHeight:300,pixelWidth:300,src:\"https://framerusercontent.com/images/4yIfdimyBEOVY6zAwqkIj09PiM.png?width=300&height=300\"}}},baseVariant,gestureVariant)}),isDisplayed()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:getLocalizedValue(\"v1\",activeLocale)??/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO01TIFNhbnMgU2VyaWYgQm9sZCBSZWd1bGFy\",\"--framer-font-family\":'\"MS Sans Serif Bold Regular\", \"MS Sans Serif Bold Regular Placeholder\", serif',\"--framer-font-size\":\"14px\",\"--framer-letter-spacing\":\"0.09em\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-0b5a920e-1fb9-4916-9516-bb99f3bad18b, rgb(34, 34, 34)))\"},children:\"HAMDIYA ALHASSAN\"})}),className:\"framer-1ru6i88\",\"data-framer-name\":\"HAMDIYA ALHASSAN\",fonts:[\"CUSTOM;MS Sans Serif Bold Regular\"],layoutDependency:layoutDependency,layoutId:\"uIkIFTDHh\",style:{\"--extracted-r6o4lv\":\"var(--token-0b5a920e-1fb9-4916-9516-bb99f3bad18b, rgb(34, 34, 34))\",\"--framer-paragraph-spacing\":\"0px\",textShadow:\"0px 1px 0px rgb(235, 235, 235)\"},verticalAlignment:\"top\",withExternalLayout:true})]})}),/*#__PURE__*/_jsx(SVG,{className:\"framer-s0kohi\",\"data-framer-name\":\"Divider\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:23,intrinsicWidth:2,layoutDependency:layoutDependency,layoutId:\"uptRjwfNW\",svg:'<svg width=\"2\" height=\"23\" viewBox=\"0 0 2 23\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<line x1=\"0.5\" y1=\"2.18557e-08\" x2=\"0.499999\" y2=\"22\" stroke=\"#808080\"/>\\n<line x1=\"1.5\" y1=\"2.18557e-08\" x2=\"1.5\" y2=\"22\" stroke=\"white\"/>\\n</svg>\\n',withExternalLayout:true})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1x9h1jv\",\"data-framer-name\":\"Links\",layoutDependency:layoutDependency,layoutId:\"Kp8f9PFTx\",children:[/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"UnMv0KEQI\"},implicitPathVariables:undefined},{href:{webPageId:\"UnMv0KEQI\"},implicitPathVariables:undefined},{href:{webPageId:\"UnMv0KEQI\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,y:(componentViewport?.y||0)+10+0+0,...addPropertyOverrides({DzGh62WW8:{y:(componentViewport?.y||0)+8+0+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1ko3zt5-container\",layoutDependency:layoutDependency,layoutId:\"CxqnhImc3-container\",nodeId:\"CxqnhImc3\",rendersWithMotion:true,scopeId:\"n9mVQFzc2\",children:/*#__PURE__*/_jsx(Button,{e20WhL_p5:true,height:\"100%\",id:\"CxqnhImc3\",j8GrDZlDe:resolvedLinks[0],layoutId:\"CxqnhImc3\",OMHdTZ25M:addImageAlt({pixelHeight:96,pixelWidth:96,src:\"https://framerusercontent.com/images/NgukgyEY2NYhLk9COmXa6zgi2Q.png?width=96&height=96\"},getLocalizedValue(\"v3\",activeLocale)??\"Projects icon\"),qRebc4ro9:\"flex-start\",style:{width:\"100%\"},variant:e86ot6d7Z,width:\"100%\",XL8xSeUB0:getLocalizedValue(\"v2\",activeLocale)??\"Projects\",...addPropertyOverrides({DzGh62WW8:{e20WhL_p5:false,j8GrDZlDe:resolvedLinks[2],qRebc4ro9:\"center\"},EerfUf4Nv:{j8GrDZlDe:resolvedLinks[1],variant:Q6hVFivKy}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"Hq5y1IqjL\"},implicitPathVariables:undefined},{href:{webPageId:\"Hq5y1IqjL\"},implicitPathVariables:undefined},{href:{webPageId:\"Hq5y1IqjL\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,y:(componentViewport?.y||0)+10+0+0,...addPropertyOverrides({DzGh62WW8:{y:(componentViewport?.y||0)+8+0+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1ewsmt4-container\",layoutDependency:layoutDependency,layoutId:\"rT7mgLOQv-container\",nodeId:\"rT7mgLOQv\",rendersWithMotion:true,scopeId:\"n9mVQFzc2\",children:/*#__PURE__*/_jsx(Button,{e20WhL_p5:true,height:\"100%\",id:\"rT7mgLOQv\",j8GrDZlDe:resolvedLinks1[0],layoutId:\"rT7mgLOQv\",OMHdTZ25M:addImageAlt({pixelHeight:64,pixelWidth:64,src:\"https://framerusercontent.com/images/7QKAAGlrkOQQaFGbY8diyHwhcEU.png?width=64&height=64\"},getLocalizedValue(\"v5\",activeLocale)??\"Information icon\"),qRebc4ro9:\"flex-start\",style:{width:\"100%\"},variant:hNJKNWwLX,width:\"100%\",XL8xSeUB0:getLocalizedValue(\"v4\",activeLocale)??\"About me\",...addPropertyOverrides({DzGh62WW8:{e20WhL_p5:false,j8GrDZlDe:resolvedLinks1[2],qRebc4ro9:\"center\"},EerfUf4Nv:{j8GrDZlDe:resolvedLinks1[1],variant:vLeYi4_G8}},baseVariant,gestureVariant)})})})})]})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-v7cfly\",layoutDependency:layoutDependency,layoutId:\"tBADaCJ4t\",children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-dn56m8\",\"data-framer-name\":\"Divider\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:23,intrinsicWidth:2,layoutDependency:layoutDependency,layoutId:\"ACE3cmlfH\",svg:'<svg width=\"2\" height=\"23\" viewBox=\"0 0 2 23\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<line x1=\"0.5\" y1=\"2.18557e-08\" x2=\"0.499999\" y2=\"22\" stroke=\"#808080\"/>\\n<line x1=\"1.5\" y1=\"2.18557e-08\" x2=\"1.5\" y2=\"22\" stroke=\"white\"/>\\n</svg>\\n',withExternalLayout:true}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,y:(componentViewport?.y||0)+10+0,...addPropertyOverrides({DzGh62WW8:{y:(componentViewport?.y||0)+8+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-15yhon3-container\",layoutDependency:layoutDependency,layoutId:\"jjIdW0pdp-container\",nodeId:\"jjIdW0pdp\",rendersWithMotion:true,scopeId:\"n9mVQFzc2\",children:/*#__PURE__*/_jsx(ProjectButton,{CWtQYkqF8:addImageAlt({pixelHeight:32,pixelWidth:32,src:\"https://framerusercontent.com/images/zSx1kanKbHtjFffmdv8NxGqIM.png?width=32&height=32\"},\"Tetris Game icon\"),GoRtsT9oy:true,height:\"100%\",id:\"jjIdW0pdp\",layoutId:\"jjIdW0pdp\",N1_dz3z1p:N1_dz3z1p1nbrdw2,style:{height:\"100%\"},variant:\"LWgKGmZ82\",width:\"100%\",z4moIcdm0:\"Tetris Game\",...addPropertyOverrides({DzGh62WW8:{GoRtsT9oy:false},EerfUf4Nv:{GoRtsT9oy:false}},baseVariant,gestureVariant)})})}),isDisplayed1()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-1ie5e8v\",\"data-framer-name\":\"Divider\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:23,intrinsicWidth:2,layoutDependency:layoutDependency,layoutId:\"JqD3SgPTA\",svg:'<svg width=\"2\" height=\"23\" viewBox=\"0 0 2 23\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<line x1=\"0.5\" y1=\"2.18557e-08\" x2=\"0.499999\" y2=\"22\" stroke=\"#808080\"/>\\n<line x1=\"1.5\" y1=\"2.18557e-08\" x2=\"1.5\" y2=\"22\" stroke=\"white\"/>\\n</svg>\\n',withExternalLayout:true}),isDisplayed1()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-i6y7mh\",\"data-framer-name\":\"Button\",layoutDependency:layoutDependency,layoutId:\"S8gPSDc_N\",style:{backgroundColor:\"rgb(192, 192, 192)\",boxShadow:\"inset -3px -3px 0px 0px rgb(223, 223, 223), inset 3px 3px 0px 0px rgb(128, 128, 128)\"},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-18fph8n-container\",\"data-code-component-plugin-id\":\"84d4c1\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"uzjd2R34T-container\",nodeId:\"uzjd2R34T\",rendersWithMotion:true,scopeId:\"n9mVQFzc2\",children:/*#__PURE__*/_jsx(RealtimeClock,{alignItems:\"center\",backgroundColor:\"rgba(255, 255, 255, 0)\",flexDirection:\"column\",format24Hour:false,height:\"100%\",id:\"uzjd2R34T\",justifyContent:\"center\",layoutId:\"uzjd2R34T\",padding:\"0px\",showSeconds:false,showTimezone:false,timeColor:\"var(--token-0b5a920e-1fb9-4916-9516-bb99f3bad18b, rgb(34, 34, 34))\",timeFont:{fontFamily:'\"MS Sans Serif Regular\", \"MS Sans Serif Regular Placeholder\", serif',fontSize:\"16px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.02em\",lineHeight:\"1em\"},timeFontSize:14,timezoneColor:\"rgb(102, 102, 102)\",timezoneFont:{fontFamily:'\"MS Sans Serif Bold Regular\", \"MS Sans Serif Bold Regular Placeholder\", serif',fontSize:\"16px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.01em\",lineHeight:\"1em\"},timezoneFontSize:14,width:\"100%\"})})})})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-WDj49.framer-18tj2d5, .framer-WDj49 .framer-18tj2d5 { display: block; }\",\".framer-WDj49.framer-13zc52l { align-content: flex-start; align-items: flex-start; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: flex-start; overflow: visible; padding: 10px 8px 8px 8px; position: relative; width: 1408px; }\",\".framer-WDj49 .framer-12jkce2 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 3px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-WDj49 .framer-19w2jyf, .framer-WDj49 .framer-v7cfly { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: min-content; }\",\".framer-WDj49 .framer-nkq8m2 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: center; overflow: visible; padding: 8px 16px 8px 16px; position: relative; text-decoration: none; width: min-content; }\",\".framer-WDj49 .framer-7p0olh { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 20px); position: relative; width: 20px; }\",\".framer-WDj49 .framer-1ru6i88 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-WDj49 .framer-s0kohi, .framer-WDj49 .framer-dn56m8, .framer-WDj49 .framer-1ie5e8v { flex: none; height: 30px; position: relative; width: 4px; }\",\".framer-WDj49 .framer-1x9h1jv { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px 20px 0px 0px; position: relative; width: 1px; }\",\".framer-WDj49 .framer-1ko3zt5-container, .framer-WDj49 .framer-1ewsmt4-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",\".framer-WDj49 .framer-15yhon3-container { flex: none; height: 36px; position: relative; width: auto; }\",\".framer-WDj49 .framer-i6y7mh { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: 36px; justify-content: center; overflow: visible; padding: 10px 16px 10px 16px; position: relative; width: 80px; }\",\".framer-WDj49 .framer-18fph8n-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-WDj49.framer-v-1o1d0t2.framer-13zc52l { width: 778px; }\",\".framer-WDj49.framer-v-1o1d0t2 .framer-nkq8m2 { padding: 7px 16px 7px 16px; }\",\".framer-WDj49.framer-v-1o1d0t2 .framer-7p0olh { height: var(--framer-aspect-ratio-supported, 18px); width: 18px; }\",\".framer-WDj49.framer-v-1o1d0t2 .framer-1x9h1jv { padding: 0px 8px 0px 0px; }\",\".framer-WDj49.framer-v-1o1d0t2 .framer-i6y7mh { height: 32px; }\",\".framer-WDj49.framer-v-1bng0jq.framer-13zc52l { gap: 4px; padding: 8px 8px 6px 8px; width: 358px; }\",\".framer-WDj49.framer-v-1bng0jq .framer-nkq8m2 { height: 36px; padding: 8px 12px 8px 12px; }\",\".framer-WDj49.framer-v-1bng0jq .framer-1x9h1jv { gap: 2px; padding: 0px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 54\n * @framerIntrinsicWidth 1408\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"EerfUf4Nv\":{\"layout\":[\"fixed\",\"auto\"]},\"DzGh62WW8\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"e86ot6d7Z\":\"projects\",\"hNJKNWwLX\":\"info\",\"Q6hVFivKy\":\"projectsSmall\",\"vLeYi4_G8\":\"infoSmall\",\"cJyLDljyA\":\"overlayOpen\",\"snsQjXX8k\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Framern9mVQFzc2=withCSS(Component,css,\"framer-WDj49\");export default Framern9mVQFzc2;Framern9mVQFzc2.displayName=\"Navigation\";Framern9mVQFzc2.defaultProps={height:54,width:1408};addPropertyControls(Framern9mVQFzc2,{variant:{options:[\"otfZvzsTu\",\"EerfUf4Nv\",\"DzGh62WW8\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum},e86ot6d7Z:ButtonControls?.[\"variant\"]&&{...ButtonControls[\"variant\"],defaultValue:\"YdijvtPUO\",description:undefined,hidden:undefined,title:\"projects\"},hNJKNWwLX:ButtonControls?.[\"variant\"]&&{...ButtonControls[\"variant\"],defaultValue:\"tOjY5ufnC\",description:undefined,hidden:undefined,title:\"info\"},Q6hVFivKy:ButtonControls?.[\"variant\"]&&{...ButtonControls[\"variant\"],defaultValue:\"KMJyto4gM\",description:undefined,hidden:undefined,title:\"projects_small\"},vLeYi4_G8:ButtonControls?.[\"variant\"]&&{...ButtonControls[\"variant\"],defaultValue:\"qYtMZo4qi\",description:undefined,hidden:undefined,title:\"info_small\"},cJyLDljyA:{title:\"Overlay open\",type:ControlType.EventHandler},snsQjXX8k:{title:\"Click\",type:ControlType.EventHandler}});addFonts(Framern9mVQFzc2,[{explicitInter:true,fonts:[{cssFamilyName:\"MS Sans Serif Bold Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"MS Sans Serif Bold\",url:\"https://framerusercontent.com/assets/2EpeiVr9SXfW2uO6Op8a0vcVJDo.woff2\",weight:\"400\"},{cssFamilyName:\"MS Sans Serif Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"MS Sans Serif\",url:\"https://framerusercontent.com/assets/cuFqT0zd4yPJLYfeBhPc510vSc.woff2\",weight:\"400\"}]},...ButtonFonts,...ProjectButtonFonts,...RealtimeClockFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framern9mVQFzc2\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"1408\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"EerfUf4Nv\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"DzGh62WW8\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"e86ot6d7Z\\\":\\\"projects\\\",\\\"hNJKNWwLX\\\":\\\"info\\\",\\\"Q6hVFivKy\\\":\\\"projectsSmall\\\",\\\"vLeYi4_G8\\\":\\\"infoSmall\\\",\\\"cJyLDljyA\\\":\\\"overlayOpen\\\",\\\"snsQjXX8k\\\":\\\"click\\\"}\",\"framerIntrinsicHeight\":\"54\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (df12877)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.img,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"img\",{...rest,ref:ref});});const getProps=({height,id,width,...props})=>{return{...props};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,alt:\"\",className:cx(\"framer-w7yVC\",className),layoutId:layoutId,ref:ref,src:'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 14 13\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 2.808 0 L 2.808 1.448 L 5.603 1.448 L 5.603 2.88 L 8.411 2.88 L 8.411 4.329 L 11.206 4.329 L 11.206 5.776 L 14 5.776 L 14 7.224 L 11.206 7.224 L 11.206 8.672 L 8.411 8.672 L 8.411 10.105 L 5.603 10.105 L 5.603 11.552 L 2.808 11.552 L 2.808 13 L 0 13 L 0 0 Z\" fill=\"rgb(34, 34, 34)\" height=\"13px\" id=\"wZ6dsx7_6\" width=\"14px\"/></svg>',style:{...style}});});const css=[`.framer-w7yVC { -webkit-mask: ${mask}; aspect-ratio: 1.0769230769230769; display: block; mask: ${mask}; user-select: none; width: 14px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 14\n * @framerIntrinsicHeight 13\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Play\",\"color\":{\"type\":\"static\",\"value\":\"rgb(34,34,34)\"},\"set\":{\"localId\":\"vectorSet/BFefz9iyn\",\"id\":\"BFefz9iyn\",\"moduleId\":\"FUgK2uC7p58c6WAo60MC\"}}\n */const Icon=withCSS(Component,css,\"framer-w7yVC\");Icon.displayName=\"Play\";export default Icon;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"13\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"14\",\"framerVector\":\"{\\\"name\\\":\\\"Play\\\",\\\"color\\\":{\\\"type\\\":\\\"static\\\",\\\"value\\\":\\\"rgb(34,34,34)\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/BFefz9iyn\\\",\\\"id\\\":\\\"BFefz9iyn\\\",\\\"moduleId\\\":\\\"FUgK2uC7p58c6WAo60MC\\\"}}\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n    position: \"relative\",\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(136, 85, 255, 0.3)\",\n    color: \"#85F\",\n    border: \"1px dashed #85F\",\n    flexDirection: \"column\"\n};\nexport const defaultEvents = {\n    onClick: {\n        type: ControlType.EventHandler\n    },\n    onMouseEnter: {\n        type: ControlType.EventHandler\n    },\n    onMouseLeave: {\n        type: ControlType.EventHandler\n    }\n};\nexport const fontSizeOptions = {\n    type: ControlType.Number,\n    title: \"Font Size\",\n    min: 2,\n    max: 200,\n    step: 1,\n    displayStepper: true\n};\nexport const fontControls = {\n    font: {\n        type: ControlType.Boolean,\n        title: \"Font\",\n        defaultValue: false,\n        disabledTitle: \"Default\",\n        enabledTitle: \"Custom\"\n    },\n    fontFamily: {\n        type: ControlType.String,\n        title: \"Family\",\n        placeholder: \"Inter\",\n        hidden: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here — there doesn't seem to be a reliable browser API for this\nexport const localeOptions = {\n    af: \"Afrikaans\",\n    sq: \"Albanian\",\n    an: \"Aragonese\",\n    ar: \"Arabic (Standard)\",\n    \"ar-dz\": \"Arabic (Algeria)\",\n    \"ar-bh\": \"Arabic (Bahrain)\",\n    \"ar-eg\": \"Arabic (Egypt)\",\n    \"ar-iq\": \"Arabic (Iraq)\",\n    \"ar-jo\": \"Arabic (Jordan)\",\n    \"ar-kw\": \"Arabic (Kuwait)\",\n    \"ar-lb\": \"Arabic (Lebanon)\",\n    \"ar-ly\": \"Arabic (Libya)\",\n    \"ar-ma\": \"Arabic (Morocco)\",\n    \"ar-om\": \"Arabic (Oman)\",\n    \"ar-qa\": \"Arabic (Qatar)\",\n    \"ar-sa\": \"Arabic (Saudi Arabia)\",\n    \"ar-sy\": \"Arabic (Syria)\",\n    \"ar-tn\": \"Arabic (Tunisia)\",\n    \"ar-ae\": \"Arabic (U.A.E.)\",\n    \"ar-ye\": \"Arabic (Yemen)\",\n    hy: \"Armenian\",\n    as: \"Assamese\",\n    ast: \"Asturian\",\n    az: \"Azerbaijani\",\n    eu: \"Basque\",\n    bg: \"Bulgarian\",\n    be: \"Belarusian\",\n    bn: \"Bengali\",\n    bs: \"Bosnian\",\n    br: \"Breton\",\n    my: \"Burmese\",\n    ca: \"Catalan\",\n    ch: \"Chamorro\",\n    ce: \"Chechen\",\n    zh: \"Chinese\",\n    \"zh-hk\": \"Chinese (Hong Kong)\",\n    \"zh-cn\": \"Chinese (PRC)\",\n    \"zh-sg\": \"Chinese (Singapore)\",\n    \"zh-tw\": \"Chinese (Taiwan)\",\n    cv: \"Chuvash\",\n    co: \"Corsican\",\n    cr: \"Cree\",\n    hr: \"Croatian\",\n    cs: \"Czech\",\n    da: \"Danish\",\n    nl: \"Dutch (Standard)\",\n    \"nl-be\": \"Dutch (Belgian)\",\n    en: \"English\",\n    \"en-au\": \"English (Australia)\",\n    \"en-bz\": \"English (Belize)\",\n    \"en-ca\": \"English (Canada)\",\n    \"en-ie\": \"English (Ireland)\",\n    \"en-jm\": \"English (Jamaica)\",\n    \"en-nz\": \"English (New Zealand)\",\n    \"en-ph\": \"English (Philippines)\",\n    \"en-za\": \"English (South Africa)\",\n    \"en-tt\": \"English (Trinidad & Tobago)\",\n    \"en-gb\": \"English (United Kingdom)\",\n    \"en-us\": \"English (United States)\",\n    \"en-zw\": \"English (Zimbabwe)\",\n    eo: \"Esperanto\",\n    et: \"Estonian\",\n    fo: \"Faeroese\",\n    fa: \"Farsi\",\n    fj: \"Fijian\",\n    fi: \"Finnish\",\n    fr: \"French (Standard)\",\n    \"fr-be\": \"French (Belgium)\",\n    \"fr-ca\": \"French (Canada)\",\n    \"fr-fr\": \"French (France)\",\n    \"fr-lu\": \"French (Luxembourg)\",\n    \"fr-mc\": \"French (Monaco)\",\n    \"fr-ch\": \"French (Switzerland)\",\n    fy: \"Frisian\",\n    fur: \"Friulian\",\n    gd: \"Gaelic (Scots)\",\n    \"gd-ie\": \"Gaelic (Irish)\",\n    gl: \"Galacian\",\n    ka: \"Georgian\",\n    de: \"German (Standard)\",\n    \"de-at\": \"German (Austria)\",\n    \"de-de\": \"German (Germany)\",\n    \"de-li\": \"German (Liechtenstein)\",\n    \"de-lu\": \"German (Luxembourg)\",\n    \"de-ch\": \"German (Switzerland)\",\n    el: \"Greek\",\n    gu: \"Gujurati\",\n    ht: \"Haitian\",\n    he: \"Hebrew\",\n    hi: \"Hindi\",\n    hu: \"Hungarian\",\n    is: \"Icelandic\",\n    id: \"Indonesian\",\n    iu: \"Inuktitut\",\n    ga: \"Irish\",\n    it: \"Italian (Standard)\",\n    \"it-ch\": \"Italian (Switzerland)\",\n    ja: \"Japanese\",\n    kn: \"Kannada\",\n    ks: \"Kashmiri\",\n    kk: \"Kazakh\",\n    km: \"Khmer\",\n    ky: \"Kirghiz\",\n    tlh: \"Klingon\",\n    ko: \"Korean\",\n    \"ko-kp\": \"Korean (North Korea)\",\n    \"ko-kr\": \"Korean (South Korea)\",\n    la: \"Latin\",\n    lv: \"Latvian\",\n    lt: \"Lithuanian\",\n    lb: \"Luxembourgish\",\n    mk: \"FYRO Macedonian\",\n    ms: \"Malay\",\n    ml: \"Malayalam\",\n    mt: \"Maltese\",\n    mi: \"Maori\",\n    mr: \"Marathi\",\n    mo: \"Moldavian\",\n    nv: \"Navajo\",\n    ng: \"Ndonga\",\n    ne: \"Nepali\",\n    no: \"Norwegian\",\n    nb: \"Norwegian (Bokmal)\",\n    nn: \"Norwegian (Nynorsk)\",\n    oc: \"Occitan\",\n    or: \"Oriya\",\n    om: \"Oromo\",\n    \"fa-ir\": \"Persian/Iran\",\n    pl: \"Polish\",\n    pt: \"Portuguese\",\n    \"pt-br\": \"Portuguese (Brazil)\",\n    pa: \"Punjabi\",\n    \"pa-in\": \"Punjabi (India)\",\n    \"pa-pk\": \"Punjabi (Pakistan)\",\n    qu: \"Quechua\",\n    rm: \"Rhaeto-Romanic\",\n    ro: \"Romanian\",\n    \"ro-mo\": \"Romanian (Moldavia)\",\n    ru: \"Russian\",\n    \"ru-mo\": \"Russian (Moldavia)\",\n    sz: \"Sami (Lappish)\",\n    sg: \"Sango\",\n    sa: \"Sanskrit\",\n    sc: \"Sardinian\",\n    sd: \"Sindhi\",\n    si: \"Singhalese\",\n    sr: \"Serbian\",\n    sk: \"Slovak\",\n    sl: \"Slovenian\",\n    so: \"Somani\",\n    sb: \"Sorbian\",\n    es: \"Spanish\",\n    \"es-ar\": \"Spanish (Argentina)\",\n    \"es-bo\": \"Spanish (Bolivia)\",\n    \"es-cl\": \"Spanish (Chile)\",\n    \"es-co\": \"Spanish (Colombia)\",\n    \"es-cr\": \"Spanish (Costa Rica)\",\n    \"es-do\": \"Spanish (Dominican Republic)\",\n    \"es-ec\": \"Spanish (Ecuador)\",\n    \"es-sv\": \"Spanish (El Salvador)\",\n    \"es-gt\": \"Spanish (Guatemala)\",\n    \"es-hn\": \"Spanish (Honduras)\",\n    \"es-mx\": \"Spanish (Mexico)\",\n    \"es-ni\": \"Spanish (Nicaragua)\",\n    \"es-pa\": \"Spanish (Panama)\",\n    \"es-py\": \"Spanish (Paraguay)\",\n    \"es-pe\": \"Spanish (Peru)\",\n    \"es-pr\": \"Spanish (Puerto Rico)\",\n    \"es-es\": \"Spanish (Spain)\",\n    \"es-uy\": \"Spanish (Uruguay)\",\n    \"es-ve\": \"Spanish (Venezuela)\",\n    sx: \"Sutu\",\n    sw: \"Swahili\",\n    sv: \"Swedish\",\n    \"sv-fi\": \"Swedish (Finland)\",\n    \"sv-sv\": \"Swedish (Sweden)\",\n    ta: \"Tamil\",\n    tt: \"Tatar\",\n    te: \"Teluga\",\n    th: \"Thai\",\n    tig: \"Tigre\",\n    ts: \"Tsonga\",\n    tn: \"Tswana\",\n    tr: \"Turkish\",\n    tk: \"Turkmen\",\n    uk: \"Ukrainian\",\n    hsb: \"Upper Sorbian\",\n    ur: \"Urdu\",\n    ve: \"Venda\",\n    vi: \"Vietnamese\",\n    vo: \"Volapuk\",\n    wa: \"Walloon\",\n    cy: \"Welsh\",\n    xh: \"Xhosa\",\n    ji: \"Yiddish\",\n    zu: \"Zulu\"\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./constants.map","import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n    return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n    return useOnSpecificTargetChange(false, onExit, enabled);\n}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.map","import { useRef } from \"react\";\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */ export function useConstant(init) {\n    const ref = useRef(null);\n    if (ref.current === null) {\n        ref.current = init();\n    }\n    return ref.current;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useConstant.map","import { Color } from \"framer\";\nexport function colorFromToken(color) {\n    if (color.startsWith(\"var(--token-\")) return \"rgb\" + color.split(\") /*\")[0].split(\", rgb\")[1];\n    return color;\n}\nexport function colorTokentoValue(color) {\n    return Color(colorFromToken(color)).toValue();\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"colorFromToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./colorFromToken.map","import { MotionValue } from \"framer\";\nexport const isMotionValue = (v)=>v instanceof MotionValue\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isMotionValue.map","import * as React from \"react\";\nconst letters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\nconst l = ()=>letters[Math.floor(Math.random() * letters.length)]\n;\nexport const randomID = ()=>l() + l() + l() + l() + l() + l() + l() + l() + l()\n;\nfunction createUniqueClass(suffix) {\n    return `framer-${suffix}-${randomID()}`;\n}\nexport function useUniqueClassName(suffix, deps) {\n    const [className, setClassName] = React.useState(createUniqueClass(suffix));\n    React.useEffect(()=>{\n        setClassName(createUniqueClass(suffix));\n    }, [\n        suffix,\n        ...deps\n    ]);\n    return className;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useUniqueClassName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useUniqueClassName.map","import { ControlType } from \"framer\";\n// I realize this only applies to select right now\n// but we can work on it in here\nexport function getVariantControls(Component, variant, additionalControls = {\n}) {\n    return {\n        [`${variant}TextColor`]: {\n            type: ControlType.Color,\n            title: \"Text Color\",\n            defaultValue: Component.defaultProps[`${variant}TextColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}IconColor`]: {\n            type: ControlType.Color,\n            title: \"Icon Color\",\n            defaultValue: Component.defaultProps[`${variant}IconColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BackgroundColor`]: {\n            type: ControlType.Color,\n            title: \"Bg Color\",\n            defaultValue: Component.defaultProps[`${variant}BackgroundColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderColor`]: {\n            type: ControlType.Color,\n            title: \"Border Color\",\n            defaultValue: Component.defaultProps[`${variant}BorderColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderWidth`]: {\n            type: ControlType.Number,\n            title: \" \",\n            min: 0,\n            max: 5,\n            displayStepper: true,\n            defaultValue: Component.defaultProps[`${variant}BorderWidth`],\n            hidden: (props)=>props.variant !== variant\n        },\n        ...additionalControls\n    };\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"getVariantControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./variantUtils.map","import { useMemo } from \"react\";\nexport const isBrowserSafari = ()=>{\n    if (typeof navigator !== `undefined`) {\n        const userAgent = navigator.userAgent.toLowerCase();\n        const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n        return isSafari;\n    } else return false;\n};\nexport const useIsBrowserSafari = ()=>useMemo(()=>isBrowserSafari()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map","import { useEffect } from \"react\";\n//@ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nexport function useOnChange(value, callback) {\n    useEffect(()=>// @ts-ignore this should be detected as a MV :shrug:\n        isMotionValue(value) ? value.onChange(callback) : undefined\n    );\n}\nexport function useMultiOnChange(values, handler) {\n    useEffect(()=>{\n        const subscriptions = values.map((value)=>value.onChange(handler)\n        );\n        return ()=>subscriptions.forEach((unsubscribe)=>unsubscribe()\n            )\n        ;\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"Subscriber\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnChange.map","export function mstoMinAndSec(millis) {\n    const minutes = Math.floor(millis / 60000);\n    const seconds = parseInt((millis % 60000 / 1000).toFixed(0));\n    return minutes + \":\" + (seconds < 10 ? \"0\" : \"\") + seconds;\n}\nexport function secondsToMinutes(seconds) {\n    const minutes = Math.floor(seconds / 60);\n    const s = Math.floor(seconds % 60);\n    return minutes + \":\" + (s < 10 ? \"0\" : \"\") + s;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"mstoMinAndSec\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./time.map","import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\";\n// @ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\n// @ts-ignore\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n    var ref;\n    // Put options on a local ref\n    // Might wanna just memo instead but it works for now\n    const optionsRef = useRef(options);\n    const animation = useRef();\n    const didInitialMount = useRef(false);\n    const isOnCanvas = RenderTarget.current() === RenderTarget.canvas;\n    // in-progress - trying to figure out effect hooks\n    const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : [];\n    // Memoize the onChange handler\n    const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [\n        ...onChangeDeps, \n    ]);\n    // Optionally scale the value from props\n    const transformer = useCallback((value)=>((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value\n    , []);\n    // Create new MotionValue from inputValue\n    const value = useConstant(()=>isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))\n    );\n    // Setting value from prop change\n    useEffect(()=>{\n        if (!isMotionValue(inputValue) && didInitialMount.current) {\n            var ref1, ref2;\n            const newValue = transformer(inputValue);\n            (ref1 = animation.current) === null || ref1 === void 0 ? void 0 : ref1.stop();\n            // Call change callback\n            if (onChange) onChange(newValue, value);\n            // Trigger animation to new value\n            if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n                var ref3;\n                // @ts-ignore\n                animation.current = animate(value, newValue, (ref3 = optionsRef.current) === null || ref3 === void 0 ? void 0 : ref3.transition);\n            } else {\n                value.set(newValue);\n            }\n        }\n        didInitialMount.current = true;\n    }, [\n        inputValue,\n        ...onChangeDeps\n    ]);\n    return value;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// @ts-ignore\nimport{fontStore}from\"framer\";import{useEffect}from\"react\";import{fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";const fontWeights={100:\"Thin\",200:\"Extra-light\",300:\"Light\",400:\"Regular\",500:\"Medium\",600:\"Semi-bold\",700:\"Bold\",800:\"Extra-bold\",900:\"Black\"};export function useFontControls(props){const{fontFamily=\"Inter\",fontSize=16,fontWeight=400,font=false}=props;const fontWeightName=fontWeights[fontWeight];const customFontStack=`\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;const fontFamilyStyle=fontFamily?{fontSize,fontWeight,fontFamily:customFontStack}:{fontSize,fontWeight};const fetchCustomFonts=async()=>{await fontStore.loadWebFontsFromSelectors([`CUSTOM;${fontFamily}`,`CUSTOM;${fontFamily} ${fontWeightName}`,`GF;${fontFamily}-${fontWeightName.toLowerCase()}`,]).catch(e=>console.error(e));};useEffect(()=>{if(font)fetchCustomFonts();},[font,fontFamily,fontWeight]);return fontFamilyStyle;}\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import * as React from \"react\";\nexport function useControlledState(value) {\n    const [controlledValue, setValue] = React.useState(value);\n    React.useEffect(()=>{\n        setValue(value);\n    }, [\n        value\n    ]);\n    return [\n        controlledValue,\n        setValue\n    ];\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useControlledState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useControlledState.map","import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map","import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","/*\n * index (framer/default-utils@0.45.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\"\n","/** Error message constants. */ var FUNC_ERROR_TEXT = \"Expected a function\";\n/* Built-in method references for those with the same name as other `lodash` methods. */ var nativeMax = Math.max, nativeMin = Math.min;\n/** Used as references for various `Number` constants. */ var NAN = 0 / 0;\n/** Used to match leading and trailing whitespace. */ var reTrim = /^\\s+|\\s+$/g;\n/** Used to detect bad signed hexadecimal string values. */ var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n/** Used to detect binary string values. */ var reIsBinary = /^0b[01]+$/i;\n/** Used to detect octal string values. */ var reIsOctal = /^0o[0-7]+$/i;\n/** Built-in method references without a dependency on `root`. */ var freeParseInt = parseInt;\nvar now = function() {\n    return Date.now();\n};\nfunction isObject(value) {\n    var type = typeof value;\n    return value != null && (type == \"object\" || type == \"function\");\n}\nfunction isObjectLike(value) {\n    return value != null && typeof value == \"object\";\n}\nfunction toNumber(value) {\n    if (typeof value == \"number\") {\n        return value;\n    }\n    if (typeof value == \"symbol\") {\n        return NAN;\n    }\n    if (isObject(value)) {\n        var other = typeof value.valueOf == \"function\" ? value.valueOf() : value;\n        value = isObject(other) ? other + \"\" : other;\n    }\n    if (typeof value != \"string\") {\n        return value === 0 ? value : +value;\n    }\n    value = value.replace(reTrim, \"\");\n    var isBinary = reIsBinary.test(value);\n    return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;\n}\nexport function debounce(func, wait, options) {\n    var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;\n    if (typeof func != \"function\") {\n        throw new TypeError(FUNC_ERROR_TEXT);\n    }\n    wait = toNumber(wait) || 0;\n    if (isObject(options)) {\n        leading = !!options.leading;\n        maxing = \"maxWait\" in options;\n        maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n        trailing = \"trailing\" in options ? !!options.trailing : trailing;\n    }\n    function invokeFunc(time) {\n        var args = lastArgs, thisArg = lastThis;\n        lastArgs = lastThis = undefined;\n        lastInvokeTime = time;\n        result = func.apply(thisArg, args);\n        return result;\n    }\n    function leadingEdge(time) {\n        // Reset any `maxWait` timer.\n        lastInvokeTime = time;\n        // Start the timer for the trailing edge.\n        timerId = setTimeout(timerExpired, wait);\n        // Invoke the leading edge.\n        return leading ? invokeFunc(time) : result;\n    }\n    function remainingWait(time) {\n        var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;\n        return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;\n    }\n    function shouldInvoke(time) {\n        var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;\n        // Either this is the first call, activity has stopped and we're at the\n        // trailing edge, the system time has gone backwards and we're treating\n        // it as the trailing edge, or we've hit the `maxWait` limit.\n        return lastCallTime === undefined || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;\n    }\n    function timerExpired() {\n        var time = now();\n        if (shouldInvoke(time)) {\n            return trailingEdge(time);\n        }\n        // Restart the timer.\n        timerId = setTimeout(timerExpired, remainingWait(time));\n    }\n    function trailingEdge(time) {\n        timerId = undefined;\n        // Only invoke if we have `lastArgs` which means `func` has been\n        // debounced at least once.\n        if (trailing && lastArgs) {\n            return invokeFunc(time);\n        }\n        lastArgs = lastThis = undefined;\n        return result;\n    }\n    function cancel() {\n        if (timerId !== undefined) {\n            clearTimeout(timerId);\n        }\n        lastInvokeTime = 0;\n        lastArgs = lastCallTime = lastThis = timerId = undefined;\n    }\n    function flush() {\n        return timerId === undefined ? result : trailingEdge(now());\n    }\n    function debounced() {\n        var time = now(), isInvoking = shouldInvoke(time);\n        lastArgs = arguments;\n        lastThis = this;\n        lastCallTime = time;\n        if (isInvoking) {\n            if (timerId === undefined) {\n                return leadingEdge(lastCallTime);\n            }\n            if (maxing) {\n                // Handle invocations in a tight loop.\n                clearTimeout(timerId);\n                timerId = setTimeout(timerExpired, wait);\n                return invokeFunc(lastCallTime);\n            }\n        }\n        if (timerId === undefined) {\n            timerId = setTimeout(timerExpired, wait);\n        }\n        return result;\n    }\n    debounced.cancel = cancel;\n    debounced.flush = flush;\n    return debounced;\n}\nexport function throttle(func, wait, options) {\n    var leading = true, trailing = true;\n    if (typeof func != \"function\") {\n        throw new TypeError(FUNC_ERROR_TEXT);\n    }\n    if (isObject(options)) {\n        leading = \"leading\" in options ? !!options.leading : leading;\n        trailing = \"trailing\" in options ? !!options.trailing : trailing;\n    }\n    return debounce(func, wait, {\n        leading: leading,\n        maxWait: wait,\n        trailing: trailing\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"throttle\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"debounce\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./lodash.map","/*\n * lodash (framer/lodash@0.3.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/0tL3NK6Gdibfi84549mt/wxfj3uKBUiepHMkJD9XI/lodash.js\"\n","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget,withCSS}from\"framer\";import{animate,transform,motion,useTransform}from\"framer-motion\";import{useRef,useState,useCallback}from\"react\";import{isMotionValue,useOnChange,useAutoMotionValue}from\"https://framer.com/m/framer/default-utils.js@^0.45.0\";import{throttle}from\"https://framer.com/m/framer/lodash.js@0.3.0\";var KnobOptions;(function(KnobOptions){KnobOptions[\"Hide\"]=\"Hide\";KnobOptions[\"Hover\"]=\"Hover\";KnobOptions[\"Show\"]=\"Show\";})(KnobOptions||(KnobOptions={}));/**\n * SLIDER\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 20\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any\n */ export const Slider=withCSS(function Slider(props){const{value:valueProp,trackHeight,fillColor,focusColor,min,max,onChange,onChangeLive,onMax,onMin,trackColor,trackRadius,knobSize,knobColor,constrainKnob,shadow,shouldAnimateChange,transition,overdrag,knobSetting,style}=props;const[hovered,setHovered]=useState(false);const[focused,setFocused]=useState(false);const onCanvas=RenderTarget.current()===RenderTarget.canvas;const shouldAnimate=shouldAnimateChange&&!onCanvas;const isConstrained=constrainKnob&&knobSetting===KnobOptions.Show;const showKnob=knobSetting!==KnobOptions.Hide;const input=useRef();const knobPadding=8;// Main setting function\nconst updateValue=useCallback((newVal,target)=>{throttledInputUpdate(newVal);if(onChange)onChange(newVal);if(shouldAnimate)animate(target,newVal,transition);else requestAnimationFrame(()=>target.set(newVal));},[transition,shouldAnimate,onChange]);// \"value\" is the source of truth\n// It can be controlled via props with a motionvalue or number 0.0 - 1.0\n// Local changes are always allowed and are reported back up using \"onChange\" callback\nconst value=useAutoMotionValue(valueProp,{onChange:updateValue,transform:value=>transform(value,[0,100],[min,max])});const knobX=useTransform(value,[min,max],[\"0%\",\"100%\"]);const normalizedValue=useTransform(value,[min,max],[0,1]);const throttledInputUpdate=useCallback(throttle(val=>{var ref;if((ref=input.current)===null||ref===void 0?void 0:ref.value)input.current.value=val;},100),[input]);// Live updating callback\nuseOnChange(value,val=>{if(isMotionValue(valueProp))throttledInputUpdate(val);if(onMax&&val>=max)onMax();if(onMin&&val<=min)onMin();if(onChangeLive)onChangeLive(val);});// Read changes from input element\nconst handleInputChange=e=>{updateValue(parseFloat(e.target.value),value);};// Handle tapping on the know to trigger update\nconst handleMouseDown=e=>{if(parseFloat(e.target.value)!==0)updateValue(parseFloat(e.target.value),value);};const handleMouseUp=()=>{};const totalKnobWidth=showKnob?knobSize+knobPadding:knobPadding;const totalHeight=Math.max(knobSize+knobPadding,trackHeight);return /*#__PURE__*/ _jsxs(\"div\",{className:\"framer-default-slider\",onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),style:{position:\"relative\",...style,alignItems:\"center\",justifyContent:\"flex-start\",border:`0px solid ${focusColor}`,\"--framer-default-slider-height\":totalHeight,\"--framer-default-slider-width\":totalKnobWidth},children:[/*#__PURE__*/ _jsx(\"input\",{ref:input,style:{flexShrink:0,minHeight:totalHeight,opacity:0,margin:0,display:\"flex\",...style,WebkitTapHighlightColor:\"rgba(0, 0, 0, 0)\",...!isConstrained&&{width:`calc(100% + ${totalKnobWidth}px)`,marginLeft:-totalKnobWidth/2}},onFocus:()=>setFocused(true),onBlur:()=>setFocused(false),type:\"range\",min:min,max:max,defaultValue:-1,step:\"any\",onChange:handleInputChange,onMouseDown:handleMouseDown,onMouseUp:handleMouseUp}),/*#__PURE__*/ _jsx(\"div\",{style:{background:trackColor,position:\"absolute\",top:`calc(50% - ${Math.ceil(trackHeight/2)}px)`,borderRadius:trackRadius,display:\"flex\",height:trackHeight,width:\"100%\",transformOrigin:\"left\",pointerEvents:\"none\",overflow:\"hidden\"},children:/*#__PURE__*/ _jsx(motion.div,{style:{height:trackHeight,width:\"100%\",background:fillColor,scaleX:normalizedValue,position:\"absolute\",top:`calc(50% - ${Math.ceil(trackHeight/2)}px)`,transformOrigin:\"left\",pointerEvents:\"none\"}})}),/*#__PURE__*/ _jsx(motion.div,{style:{x:knobX,position:\"absolute\",display:\"flex\",top:`calc(50% - ${Math.floor(knobSize/2)}px)`,pointerEvents:\"none\",...isConstrained?{width:`calc(100% - ${knobSize}px`,left:0}:{width:`100%`,left:-knobSize/2}},children:/*#__PURE__*/ _jsx(motion.div,{initial:false,animate:{scale:hovered&&knobSetting===KnobOptions.Hover||knobSetting===KnobOptions.Show?1:0},transition:{type:\"spring\",stiffness:900,damping:40},style:{transformOrigin:\"50% 50%\",width:knobSize,height:knobSize,borderRadius:\"50%\",background:knobColor,pointerEvents:\"none\",boxShadow:`0px 1px 2px 0px ${shadow}, \n                                0px 2px 4px 0px ${shadow}, \n                                0px 4px 8px 0px ${shadow}`}})})]});},[\".framer-default-slider input[type=range] {  width: 100%; height: 100% background:transparent margin: 0;}\",\".framer-default-slider input[type=range]:focus { outline: none; }\",\".framer-default-slider input[type=range]::-ms-track { width: 100%; cursor: pointer; background: transparent; border-color: transparent; color: transparent; }\",\".framer-default-slider input[type=range]::-webkit-slider-thumb { height: var(--framer-default-slider-height, 0px); width: var(--framer-default-slider-width, 0px); border-radius: 0;  background: none; }\",\".framer-default-slider input[type=range]::-moz-range-thumb { height: var(--framer-default-slider-height, 0px); width: var(--framer-default-slider-width, 0px); border-radius: 0;  background: none; }\",\".framer-default-slider input[type=range]::-ms-thumb  { height: var(--framer-default-slider-height, 0px); width: var(--framer-default-slider-width, 0px); border-radius: 0;  background: none; }\",]);Slider.displayName=\"Slider\";Slider.defaultProps={height:20,width:200,trackHeight:4,fillColor:\"#09F\",trackColor:\"#DDD\",knobColor:\"#FFF\",focusColor:\"rgba(0, 153, 255,0)\",shadow:\"rgba(0,0,0,0.1)\",knobSize:20,overdrag:true,min:0,max:100,value:50,trackRadius:5,knobSetting:KnobOptions.Show,constrainKnob:false,transition:{type:\"spring\",delay:0,stiffness:750,damping:50},shouldAnimateChange:true};addPropertyControls(Slider,{fillColor:{title:\"Tint\",type:ControlType.Color},trackColor:{title:\"Track\",type:ControlType.Color},knobColor:{title:\"Knob\",type:ControlType.Color},shadow:{type:ControlType.Color,title:\"Shadow\"},// focusColor: {\n//     title: \"Focus\",\n//     type: ControlType.Color,\n// },\nshouldAnimateChange:{type:ControlType.Boolean,title:\"Changes\",enabledTitle:\"Animate\",disabledTitle:\"Instant\"},transition:{type:ControlType.Transition,defaultValue:Slider.defaultProps.transition},knobSetting:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Knob\",options:[\"Hide\",\"Hover\",\"Show\"]},constrainKnob:{type:ControlType.Boolean,title:\"Constrain\",enabledTitle:\"Yes\",disabledTitle:\"No\",hidden:({knobSetting})=>knobSetting!==KnobOptions.Show},knobSize:{type:ControlType.Number,title:\"Knob\",min:10,max:100,hidden:({knobSetting})=>knobSetting===KnobOptions.Hide},value:{type:ControlType.Number,title:\"Value\",min:0,max:100,unit:\"%\"},trackHeight:{title:\"Height\",type:ControlType.Number,min:0},min:{title:\"Min\",type:ControlType.Number,displayStepper:true},trackRadius:{type:ControlType.Number,displayStepper:true,min:0,max:200,title:\"Radius\"},max:{title:\"Max\",type:ControlType.Number,displayStepper:true},onChange:{type:ControlType.EventHandler},onMax:{type:ControlType.EventHandler},onMin:{type:ControlType.EventHandler}});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Slider\":{\"type\":\"reactComponent\",\"name\":\"Slider\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any\",\"framerIntrinsicWidth\":\"200\",\"framerIntrinsicHeight\":\"20\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Slider.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useRef,useState,useEffect,useCallback}from\"react\";import{addPropertyControls,ControlType,RenderTarget,withCSS}from\"framer\";import{MotionValue,motion,animate,useMotionValueEvent}from\"framer-motion\";import{useOnEnter,usePadding,useRadius,paddingControl,borderRadiusControl,useOnChange,containerStyles,secondsToMinutes,useAutoMotionValue,useOnExit,fontStack,useFontControls}from\"https://framer.com/m/framer/default-utils.js@^0.45.0\";// https://framer.com/projects/Default-Utilities-Assets--jihcMELbo9gizWK43snH-gymPh\nimport{Slider}from\"https://framerusercontent.com/modules/AHY1z1xp5QsxaZBkEL9H/7Qvf2RhlgA8L1UHMchaV/Slider.js\";const isMotionValue=v=>v instanceof MotionValue;var SrcType;(function(SrcType){SrcType[\"Video\"]=\"Upload\";SrcType[\"Url\"]=\"URL\";})(SrcType||(SrcType={}));function PlayTime(props){const{currentTime,startTime}=props;const[playTime,setPlayTime]=useState(\"0:00\");useEffect(()=>{setPlayTime(secondsToMinutes(startTime));},[startTime]);useOnChange(currentTime,latest=>{setPlayTime(secondsToMinutes(latest));});return /*#__PURE__*/_jsx(_Fragment,{children:playTime});}const checkIfPlaying=player=>player.current&&!player.current.paused&&!player.current.ended&&player.current.readyState>2;/**\n * AUDIO\n *\n * Audio player component optimized for smart components.\n *\n * @framerIntrinsicWidth 240\n * @framerIntrinsicHeight 50\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export const Audio=withCSS(function Audio(props){const{playing,background,progressColor,trackHeight,gap,trackColor,srcUrl,srcType,srcFile,loop,font,autoPlay,progress,volume,showTime,showTrack,playPauseCursor,showPlayPause,onTimeUpdate,onMetadata,onPlay,onPause,onEnd,pauseOnExit,onPlayGlobalPauseOption}=props;let iconCursor=\"pointer\";if(!!playPauseCursor){iconCursor=playPauseCursor;}else if(props?.style?.cursor){iconCursor=props.style.cursor;}// Defaults to false, only switches to play if possible\nconst[isPlaying,setIsPlaying]=useState(false);const[duration,setDuration]=useState(0);// Audio element ref and non-state info\nconst player=useRef();const playerInfo=useRef({ready:false,animation:null});// Track progress in ms, always in sync with audio element\nconst trackProgress=useAutoMotionValue(progress,{transform:value=>value*.01,onChange:(newValue,value)=>{if(player.current.duration){player.current.currentTime=newValue*player.current.duration;handlePlayStateUpdate(\"motionHook\");}}});const padding=usePadding(props);const borderRadius=useRadius(props);const{fontSize}=useFontControls(props);const shouldPlay=RenderTarget.current()===RenderTarget.preview;const shouldPausePlayers=onPlayGlobalPauseOption===\"pause\";const url=srcType===\"URL\"?srcUrl:srcFile;const shouldAutoPlay=shouldPlay&&playing;// Sync UI with state of the audio element\n// TODO look into better more performant ways of doing this\nconst handlePlayStateUpdate=useCallback(_=>{const currentDuration=player.current.duration;const currentTime=player.current.currentTime;playerInfo.current?.animation?.stop();if(Math.abs(currentTime-trackProgress.get())>.5){trackProgress.set(currentTime);}if(!shouldPlay)return;const isNowPlaying=checkIfPlaying(player);if(isPlaying!==isNowPlaying)setIsPlaying(isNowPlaying);if(isNowPlaying&&shouldPlay){playerInfo.current.animation=animate(trackProgress,currentDuration,{type:\"tween\",ease:\"linear\",duration:currentDuration-currentTime});}},[shouldPlay,isPlaying]);const pauseAllAudioPlayers=()=>{const audioPlayerElements=document.querySelectorAll(\".framer-audio\");audioPlayerElements.forEach(el=>{el.pause();});};// Always use this for playing audio\n// No logic in here as it is async & can fail\nconst playAudio=()=>{if(shouldPlay)player.current.play().catch(e=>{})// It's likely fine, swallow error\n;};const pauseAudio=()=>{player.current.pause();playerInfo.current?.animation?.stop();};const handleMetadata=()=>{if(onMetadata)onMetadata({duration:player.current.duration});setDuration(player.current.duration);};const initProgress=()=>{if(!isMotionValue(progress)){player.current.currentTime=progress*.01*player.current.duration;}};const handleReady=()=>{// This tries to run on every pause\n// We use playerInfo.ready to only call on initial load of a source\nif(!playerInfo.current.ready){if(shouldAutoPlay)playAudio();playerInfo.current.ready=true;initProgress();}};// Handle seek event from slider\nconst handleSeek=val=>{if(player.current.currentTime){player.current.currentTime=val;handlePlayStateUpdate(\"handleSeek\");}};const handleEnd=()=>{if(onEnd)onEnd();};const handlePlayClick=()=>{if(shouldPausePlayers)pauseAllAudioPlayers();playAudio();};// Control audio via props\nuseEffect(()=>{if(shouldPlay){// In preview when prop changes, pause/play\nif(playing===true)playAudio();else pauseAudio();}else{// Only set the state for canvas use\nif(playing===true)setIsPlaying(true);else setIsPlaying(false);}},[playing]);useEffect(()=>{// Do this in an effect to correct on optimised sites\nif(player.current?.duration)setDuration(player.current.duration);},[]);// Call event callbacks\nuseEffect(()=>{if(playerInfo.current.ready&&isPlaying&&onPlay)onPlay();else if(playerInfo.current.ready&&onPause)onPause();},[isPlaying]);// Volume Control\nuseEffect(()=>{player.current.volume=volume/100;},[volume]);// Reset ready state when src changes\nuseEffect(()=>{playerInfo.current.ready=false;},[srcFile,srcType,srcUrl]);// Play on navigation\nuseOnEnter(()=>{if(shouldAutoPlay)playAudio();});useOnExit(()=>{if(pauseOnExit)player.current.pause();});useMotionValueEvent(trackProgress,\"change\",val=>{const progressPercent=player.current?.duration?val/player.current.duration*100:null;if(onTimeUpdate){onTimeUpdate(val,progressPercent,secondsToMinutes(val));}});const iconStyles={marginRight:showTime||showTrack?gap:0,flexShrink:0,cursor:iconCursor};return /*#__PURE__*/_jsxs(\"div\",{style:{...containerStyles,position:\"relative\",overflow:\"hidden\",background,padding,borderRadius},children:[/*#__PURE__*/_jsx(\"audio\",{src:url,loop:loop,className:\"framer-audio\",ref:player,// For why preload=none (and not metadata or auto or intersection observer),\n// see https://framer-team.slack.com/archives/C07D1C7KQQ3/p1761760078523569?thread_ts=1761728391.430019&cid=C07D1C7KQQ3\npreload:\"none\",autoPlay:shouldAutoPlay,onLoadedMetadata:handleMetadata,onCanPlayThrough:handleReady,// Listen to all events for status changes\nonPlaying:()=>handlePlayStateUpdate(\"playingEvent\"),onPlay:()=>handlePlayStateUpdate(\"playEvent\"),onSeeked:()=>handlePlayStateUpdate(\"seekEvent\"),onPause:()=>handlePlayStateUpdate(\"pauseEvent\"),onEnded:()=>handleEnd()}),showPlayPause&&/*#__PURE__*/_jsx(_Fragment,{children:isPlaying?/*#__PURE__*/_jsx(PauseIcon,{width:16,whileTap:{scale:.9},onClick:()=>pauseAudio(),style:iconStyles,\"aria-label\":\"pause audio\"}):/*#__PURE__*/_jsx(PlayIcon,{width:16,whileTap:{scale:.9},onClick:handlePlayClick,style:iconStyles,\"aria-label\":\"play audio\"})}),showTime&&/*#__PURE__*/_jsxs(\"p\",{style:{userSelect:\"none\",color:\"#333\",fontWeight:500,letterSpacing:-.25,margin:0,flexShrink:0,fontFamily:fontStack,fontVariantNumeric:\"tabular-nums\",marginRight:showTrack?gap:0,...font},children:[/*#__PURE__*/_jsx(PlayTime,{startTime:duration*(isMotionValue(progress)?progress.get():progress*.01),currentTime:trackProgress}),/*#__PURE__*/_jsx(\"span\",{style:{padding:\"0 2px\"},children:\"/\"}),duration>0?secondsToMinutes(duration):\"1:34\"]}),showTrack&&/*#__PURE__*/_jsx(Slider,{style:{width:\"100%\"},value:trackProgress,fillColor:progressColor,knobSetting:\"Hover\",shadow:`rgba(0,0,0,0)`,knobSize:10,knobColor:progressColor,onChange:handleSeek,shouldAnimateChange:false,min:0,max:duration,trackColor:trackColor})]});},[\".framer-audio-icon { outline: none; }\",\".framer-audio-icons:focus-visible { outline: auto; }\"]);Audio.defaultProps={background:\"#EBEBEB\",trackColor:\"#FFFFFF\",font:{fontSize:12},progressColor:\"#333333\",srcUrl:\"https://assets.mixkit.co/music/preview/mixkit-tech-house-vibes-130.mp3\",srcType:\"URL\",pauseOnExit:true,borderRadius:8,padding:15,progress:0,volume:25,loop:false,playing:true,autoPlay:true,showTime:true,showTrack:true,showPlayPause:true,onPlayGlobalPauseOption:\"continue\",trackHeight:4,gap:15,height:50,width:240};addPropertyControls(Audio,{srcType:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Source\",options:[\"URL\",\"Upload\"]},srcUrl:{type:ControlType.String,title:\" \",placeholder:\".../example.mp4\",hidden(props){return props.srcType===\"Upload\";}},srcFile:{type:ControlType.File,title:\" \",allowedFileTypes:[\"mp4\",\"mp3\",\"wav\",\"m4a\"],hidden(props){return props.srcType===\"URL\";}},playing:{title:\"Playing\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\"},loop:{title:\"Loop\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\"},// autoPlay: {\n//     type: ControlType.Boolean,\n//     title: \"Autoplay\",\n//     enabledTitle: \"Yes\",\n//     disabledTitle: \"No\",\n// },\nprogress:{title:\"Progress\",type:ControlType.Number,max:100,min:0,unit:\"%\"},volume:{type:ControlType.Number,max:100,min:0,unit:\"%\"},progressColor:{title:\"Progress\",type:ControlType.Color,defaultValue:Audio.defaultProps.progressColor},trackColor:{title:\"Track\",type:ControlType.Color,defaultValue:Audio.defaultProps.trackColor},background:{title:\"Player\",type:ControlType.Color,defaultValue:Audio.defaultProps.background},font:{title:\"Font\",// @ts-ignore – Internal\ntype:ControlType.Font,displayFontSize:true},...paddingControl,...borderRadiusControl,gap:{type:ControlType.Number,min:0,max:100,displayStepper:true},showPlayPause:{type:ControlType.Boolean,title:\"Play/Pause\",enabledTitle:\"Show\",disabledTitle:\"Hide\"},showTrack:{type:ControlType.Boolean,title:\"Track\",enabledTitle:\"Show\",disabledTitle:\"Hide\"},showTime:{type:ControlType.Boolean,title:\"Time\",enabledTitle:\"Show\",disabledTitle:\"Hide\"},pauseOnExit:{type:ControlType.Boolean,title:\"On Leave\",enabledTitle:\"Pause\",disabledTitle:\"Continue\"},onPlayGlobalPauseOption:{type:ControlType.Enum,title:\"On Play\",options:[\"continue\",\"pause\"],optionTitles:[\"Continue All\",\"Pause All\"]},onPlay:{type:ControlType.EventHandler},onPause:{type:ControlType.EventHandler},onEnd:{type:ControlType.EventHandler},onTimeUpdate:{type:ControlType.EventHandler}});const trackStyle={borderRadius:10,width:\"100%\",overflow:\"hidden\"};const trackParentStyle={position:\"relative\",border:\"1px solid red\",display:\"flex\",alignItems:\"center\",height:\"100%\",width:\"100%\"};function PlayIcon(props){return /*#__PURE__*/_jsx(motion.svg,{...props,className:\"framer-audio-icon\",xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 16 16\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M 5.379 1.292 C 4.968 1.033 4.449 1.017 4.023 1.251 C 3.598 1.486 3.334 1.933 3.333 2.419 L 3.333 13.581 C 3.334 14.067 3.598 14.514 4.023 14.749 C 4.449 14.983 4.968 14.967 5.379 14.708 L 14.215 9.127 C 14.602 8.883 14.836 8.457 14.836 8 C 14.836 7.543 14.602 7.117 14.215 6.873 Z\",fill:\"#333\"})});}function PauseIcon(props){return /*#__PURE__*/_jsxs(motion.svg,{...props,className:\"framer-audio-icon\",xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 16 16\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M 3 3 C 3 2.448 3.448 2 4 2 L 6 2 C 6.552 2 7 2.448 7 3 L 7 13 C 7 13.552 6.552 14 6 14 L 4 14 C 3.448 14 3 13.552 3 13 Z\",fill:\"#343434\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M 9 3 C 9 2.448 9.448 2 10 2 L 12 2 C 12.552 2 13 2.448 13 3 L 13 13 C 13 13.552 12.552 14 12 14 L 10 14 C 9.448 14 9 13.552 9 13 Z\",fill:\"#343434\"})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Audio\":{\"type\":\"reactComponent\",\"name\":\"Audio\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"240\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"50\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Audio.map","export const v0=\"https://assets.mixkit.co/music/preview/mixkit-tech-house-vibes-130.mp3\";\nexport const __FramerMetadata__ = {\"exports\":{\"v0\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (808fccf)\nimport*as localizedValues from\"./ZuJnbUgD1-0.js\";const valuesByLocaleId={HyIjoKWDY:localizedValues};export default function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (808fccf)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,Instance,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import{Audio}from\"https://framerusercontent.com/modules/NRKVbMFYrBaqL0rx532t/2NLwQRLJdaV5jyzPAzvG/Audio.js\";import getLocalizedValue from\"https://framerusercontent.com/modules/RKO23Gw7YWwXtlg52T4V/gp2jgyhLtRZp6FVRRuu2/ZuJnbUgD1.js\";import Play from\"https://framerusercontent.com/modules/Rp2dFv6zW671K8DRv56M/qb7vEMOQYkCrpRUdqAAV/fCnO3Qwhc.js\";const AudioFonts=getFonts(Audio);const enabledGestures={hEX2f0vqs:{pressed:true},sc5mYqRMz:{pressed:true}};const cycleOrder=[\"hEX2f0vqs\",\"C2QTIfNrf\",\"FlHwe5G87\",\"sc5mYqRMz\"];const serializationHash=\"framer-r7mDK\";const variantClassNames={C2QTIfNrf:\"framer-v-hhum70\",FlHwe5G87:\"framer-v-m9tacq\",hEX2f0vqs:\"framer-v-1vdwl8w\",sc5mYqRMz:\"framer-v-1yiv298\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:0,delay:0,duration:.1,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={active:\"C2QTIfNrf\",Disabled:\"FlHwe5G87\",Inactive:\"hEX2f0vqs\",Square:\"sc5mYqRMz\"};const getProps=({click,height,icon,id,width,...props})=>{return{...props,DBidGrmAZ:click??props.DBidGrmAZ,K9XY2rrF9:icon??props.K9XY2rrF9??Play,variant:humanReadableVariantMap[props.variant]??props.variant??\"hEX2f0vqs\"};};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,K9XY2rrF9,DBidGrmAZ,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"hEX2f0vqs\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1wjegwe=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(DBidGrmAZ){const res=await DBidGrmAZ(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(gestureVariant===\"sc5mYqRMz-pressed\")return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1vdwl8w\",className,classNames),\"data-framer-name\":\"Inactive\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"hEX2f0vqs\",onTap:onTap1wjegwe,ref:refBinding,style:{backgroundColor:\"rgb(192, 192, 192)\",boxShadow:\"inset -2px -2px 0px 0px rgb(10, 10, 10), inset 2px 2px 0px 0px rgb(255, 255, 255), inset -4px -4px 0px 0px rgb(128, 128, 128), inset 4px 4px 0px 0px rgb(223, 223, 223)\",...style},variants:{\"hEX2f0vqs-pressed\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset -2px -2px 0px 0px rgb(255, 255, 255), inset 2px 2px 0px 0px rgb(10, 10, 10), inset -4px -4px 0px 0px rgb(223, 223, 223), inset 4px 4px 0px 0px rgb(128, 128, 128)\"},\"sc5mYqRMz-pressed\":{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset 2px 2px 0px 0px rgb(10, 10, 10), inset -2px -2px 0px 0px rgb(255, 255, 255), inset 4px 4px 0px 0px rgb(128, 128, 128), inset -4px -4px 0px 0px rgb(223, 223, 223)\"},C2QTIfNrf:{backgroundColor:\"rgb(255, 255, 255)\",boxShadow:\"inset -2px -2px 0px 0px rgb(255, 255, 255), inset 2px 2px 0px 0px rgb(10, 10, 10), inset -4px -4px 0px 0px rgb(223, 223, 223), inset 4px 4px 0px 0px rgb(128, 128, 128)\"}},...addPropertyOverrides({\"hEX2f0vqs-pressed\":{\"data-framer-name\":undefined},\"sc5mYqRMz-pressed\":{\"data-framer-name\":undefined},C2QTIfNrf:{\"data-framer-name\":\"active\"},FlHwe5G87:{\"data-framer-name\":\"Disabled\"},sc5mYqRMz:{\"data-framer-name\":\"Square\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(Instance,{animated:true,className:\"framer-kj26mk\",Component:K9XY2rrF9,\"data-framer-name\":\"Player Icons\",layoutDependency:layoutDependency,layoutId:\"Tt6M_qeIw\"}),isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1whb6pf-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"VB5XWjIS6-container\",nodeId:\"VB5XWjIS6\",rendersWithMotion:true,scopeId:\"ZuJnbUgD1\",style:{opacity:0},children:/*#__PURE__*/_jsx(Audio,{background:\"rgb(235, 235, 235)\",borderRadius:8,bottomLeftRadius:8,bottomRightRadius:8,font:{},gap:15,height:\"100%\",id:\"VB5XWjIS6\",isMixedBorderRadius:false,layoutId:\"VB5XWjIS6\",loop:false,onPlayGlobalPauseOption:\"continue\",padding:15,paddingBottom:15,paddingLeft:15,paddingPerSide:false,paddingRight:15,paddingTop:15,pauseOnExit:true,playing:true,progress:0,progressColor:\"rgb(51, 51, 51)\",showPlayPause:false,showTime:false,showTrack:false,srcFile:\"https://framerusercontent.com/assets/bVUNPxjI3hFqjNDHOpq6Dgt6B8.mp3\",srcType:\"Upload\",srcUrl:getLocalizedValue(\"v0\",activeLocale)??\"https://assets.mixkit.co/music/preview/mixkit-tech-house-vibes-130.mp3\",style:{height:\"100%\",width:\"100%\"},topLeftRadius:8,topRightRadius:8,trackColor:\"rgb(255, 255, 255)\",volume:100,width:\"100%\",...addPropertyOverrides({\"sc5mYqRMz-pressed\":{srcFile:\"https://framerusercontent.com/assets/fRaUxBo7fwPceK0WsfBXcgcHg.mp3\",volume:50}},baseVariant,gestureVariant)})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-r7mDK.framer-5n6q2a, .framer-r7mDK .framer-5n6q2a { display: block; }\",\".framer-r7mDK.framer-1vdwl8w { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 32px; justify-content: center; overflow: visible; padding: 12px; position: relative; width: 72px; }\",\".framer-r7mDK .framer-kj26mk { flex: none; height: var(--framer-aspect-ratio-supported, 13px); position: relative; z-index: 2; }\",\".framer-r7mDK .framer-1whb6pf-container { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; z-index: 1; }\",\".framer-r7mDK.framer-v-1yiv298.framer-1vdwl8w { height: min-content; padding: 8px; width: min-content; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 32\n * @framerIntrinsicWidth 72\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"C2QTIfNrf\":{\"layout\":[\"fixed\",\"fixed\"]},\"FlHwe5G87\":{\"layout\":[\"fixed\",\"fixed\"]},\"sc5mYqRMz\":{\"layout\":[\"auto\",\"auto\"]},\"zu1cNh3As\":{\"layout\":[\"fixed\",\"fixed\"]},\"XOrjdqzZy\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"K9XY2rrF9\":\"icon\",\"DBidGrmAZ\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerVectorSets [\"FUgK2uC7p58c6WAo60MC\"]\n */const FramerZuJnbUgD1=withCSS(Component,css,\"framer-r7mDK\");export default FramerZuJnbUgD1;FramerZuJnbUgD1.displayName=\"Controls\";FramerZuJnbUgD1.defaultProps={height:32,width:72};addPropertyControls(FramerZuJnbUgD1,{variant:{options:[\"hEX2f0vqs\",\"C2QTIfNrf\",\"FlHwe5G87\",\"sc5mYqRMz\"],optionTitles:[\"Inactive\",\"active\",\"Disabled\",\"Square\"],title:\"Variant\",type:ControlType.Enum},K9XY2rrF9:{defaultValue:{identifier:\"local-module:vector/fCnO3Qwhc:default\",moduleId:\"Rp2dFv6zW671K8DRv56M\"},setModuleId:\"FUgK2uC7p58c6WAo60MC\",title:\"Icon\",type:ControlType.VectorSetItem},DBidGrmAZ:{title:\"Click\",type:ControlType.EventHandler}});addFonts(FramerZuJnbUgD1,[{explicitInter:true,fonts:[]},...AudioFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerZuJnbUgD1\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"72\",\"framerColorSyntax\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"K9XY2rrF9\\\":\\\"icon\\\",\\\"DBidGrmAZ\\\":\\\"click\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"C2QTIfNrf\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"FlHwe5G87\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"sc5mYqRMz\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"zu1cNh3As\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"XOrjdqzZy\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerVectorSets\":\"[\\\"FUgK2uC7p58c6WAo60MC\\\"]\",\"framerIntrinsicHeight\":\"32\",\"framerComponentViewportWidth\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ZuJnbUgD1.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useRef,useState,useEffect,useCallback,startTransition}from\"react\";import{addPropertyControls,ControlType}from\"framer\";const COLS=10;const ROWS=20;const BLOCK_SIZE=20;const SHAPES=[[[1,1,1,1]],[[1,1],[1,1]],[[0,1,0],[1,1,1]],[[1,0,0],[1,1,1]],[[0,0,1],[1,1,1]],[[1,1,0],[0,1,1]],[[0,1,1],[1,1,0]]];const COLORS=[\"#FF0D72\",\"#0DC2FF\",\"#0DFF72\",\"#F538FF\",\"#FF8E0D\",\"#FFE138\",\"#3877FF\"];// Theme configurations\nconst THEMES={windows2000:{name:\"Windows 2000\",containerBg:\"#c0c0c0\",containerBorder:\"2px solid\",containerBorderColor:\"#ffffff #000000 #000000 #ffffff\",containerShadow:\"inset 1px 1px 0 #dfdfdf, inset -1px -1px 0 #808080\",titleBg:\"#000080\",titleColor:\"#ffffff\",titleBorder:\"1px solid #000000\",panelBg:\"#c0c0c0\",panelBorder:\"2px solid\",panelBorderColor:\"#808080 #ffffff #ffffff #808080\",buttonBg:\"#c0c0c0\",buttonColor:\"#000000\",buttonBorder:\"2px solid\",buttonBorderColor:\"#ffffff #000000 #000000 #ffffff\",buttonShadow:\"inset 1px 1px 0 #dfdfdf, inset -1px -1px 0 #808080\",buttonActiveBorderColor:\"#000000 #ffffff #ffffff #000000\",buttonActiveShadow:\"inset 1px 1px 0 #808080, inset -1px -1px 0 #dfdfdf\",inputBg:\"#ffffff\",inputColor:\"#000000\",inputBorder:\"2px solid\",inputBorderColor:\"#808080 #ffffff #ffffff #808080\",canvasBg:\"#000000\",gridColor:\"#808080\",fontFamily:\"Tahoma, Arial, sans-serif\"},modern:{name:\"Modern\",containerBg:\"#ffffff\",containerBorder:\"1px solid\",containerBorderColor:\"#e0e0e0\",containerShadow:\"0 4px 12px rgba(0, 0, 0, 0.1)\",titleBg:\"linear-gradient(135deg, #667eea 0%, #764ba2 100%)\",titleColor:\"#ffffff\",titleBorder:\"none\",panelBg:\"#f8f9fa\",panelBorder:\"1px solid\",panelBorderColor:\"#e0e0e0\",buttonBg:\"linear-gradient(135deg, #667eea 0%, #764ba2 100%)\",buttonColor:\"#ffffff\",buttonBorder:\"none\",buttonBorderColor:\"transparent\",buttonShadow:\"0 2px 8px rgba(102, 126, 234, 0.3)\",buttonActiveBorderColor:\"transparent\",buttonActiveShadow:\"0 1px 4px rgba(102, 126, 234, 0.4)\",inputBg:\"#ffffff\",inputColor:\"#333333\",inputBorder:\"2px solid\",inputBorderColor:\"#e0e0e0\",canvasBg:\"#1a1a2e\",gridColor:\"#2a2a3e\",fontFamily:\"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif\"},retro:{name:\"Retro Arcade\",containerBg:\"#000000\",containerBorder:\"4px solid\",containerBorderColor:\"#ff00ff\",containerShadow:\"0 0 20px #ff00ff, inset 0 0 20px rgba(255, 0, 255, 0.2)\",titleBg:\"#ff00ff\",titleColor:\"#000000\",titleBorder:\"2px solid #00ffff\",panelBg:\"#1a0033\",panelBorder:\"2px solid\",panelBorderColor:\"#ff00ff\",buttonBg:\"#ff00ff\",buttonColor:\"#000000\",buttonBorder:\"2px solid\",buttonBorderColor:\"#00ffff\",buttonShadow:\"0 0 10px #ff00ff\",buttonActiveBorderColor:\"#ffff00\",buttonActiveShadow:\"0 0 15px #ffff00\",inputBg:\"#000000\",inputColor:\"#00ffff\",inputBorder:\"2px solid\",inputBorderColor:\"#ff00ff\",canvasBg:\"#000000\",gridColor:\"#330066\",fontFamily:\"'Courier New', monospace\"},cyberpunk:{name:\"Cyberpunk\",containerBg:\"#0a0e27\",containerBorder:\"2px solid\",containerBorderColor:\"#00fff9\",containerShadow:\"0 0 30px rgba(0, 255, 249, 0.3), inset 0 0 30px rgba(255, 0, 128, 0.1)\",titleBg:\"linear-gradient(90deg, #ff0080 0%, #00fff9 100%)\",titleColor:\"#000000\",titleBorder:\"none\",panelBg:\"#1a1f3a\",panelBorder:\"1px solid\",panelBorderColor:\"#00fff9\",buttonBg:\"linear-gradient(135deg, #ff0080 0%, #ff8c00 100%)\",buttonColor:\"#ffffff\",buttonBorder:\"1px solid\",buttonBorderColor:\"#00fff9\",buttonShadow:\"0 0 15px rgba(255, 0, 128, 0.5)\",buttonActiveBorderColor:\"#ff0080\",buttonActiveShadow:\"0 0 20px rgba(255, 0, 128, 0.8)\",inputBg:\"#0a0e27\",inputColor:\"#00fff9\",inputBorder:\"2px solid\",inputBorderColor:\"#00fff9\",canvasBg:\"#000000\",gridColor:\"#1a1f3a\",fontFamily:\"'Orbitron', 'Rajdhani', sans-serif\"},classic:{name:\"Classic\",containerBg:\"#2c3e50\",containerBorder:\"3px solid\",containerBorderColor:\"#34495e\",containerShadow:\"0 8px 16px rgba(0, 0, 0, 0.3)\",titleBg:\"#e74c3c\",titleColor:\"#ffffff\",titleBorder:\"2px solid #c0392b\",panelBg:\"#34495e\",panelBorder:\"2px solid\",panelBorderColor:\"#2c3e50\",buttonBg:\"#e74c3c\",buttonColor:\"#ffffff\",buttonBorder:\"2px solid\",buttonBorderColor:\"#c0392b\",buttonShadow:\"0 4px 0 #c0392b\",buttonActiveBorderColor:\"#c0392b\",buttonActiveShadow:\"0 2px 0 #c0392b\",inputBg:\"#34495e\",inputColor:\"#ecf0f1\",inputBorder:\"2px solid\",inputBorderColor:\"#2c3e50\",canvasBg:\"#000000\",gridColor:\"#34495e\",fontFamily:\"'Press Start 2P', 'Courier New', monospace\"}};// Sound generation functions\nconst createAudioContext=()=>{if(typeof window===\"undefined\")return null;return new(window.AudioContext||window.webkitAudioContext);};const playRotateSound=audioContext=>{if(!audioContext)return;const oscillator=audioContext.createOscillator();const gainNode=audioContext.createGain();oscillator.connect(gainNode);gainNode.connect(audioContext.destination);oscillator.frequency.setValueAtTime(800,audioContext.currentTime);oscillator.frequency.exponentialRampToValueAtTime(600,audioContext.currentTime+.05);gainNode.gain.setValueAtTime(.15,audioContext.currentTime);gainNode.gain.exponentialRampToValueAtTime(.01,audioContext.currentTime+.05);oscillator.start(audioContext.currentTime);oscillator.stop(audioContext.currentTime+.05);};const playLineClearSound=(audioContext,linesCleared)=>{if(!audioContext)return;const frequencies=[523.25,659.25,783.99,1046.5]// C5, E5, G5, C6\n;const duration=.15;for(let i=0;i<Math.min(linesCleared,4);i++){const oscillator=audioContext.createOscillator();const gainNode=audioContext.createGain();oscillator.connect(gainNode);gainNode.connect(audioContext.destination);const startTime=audioContext.currentTime+i*.08;oscillator.frequency.setValueAtTime(frequencies[i],startTime);gainNode.gain.setValueAtTime(.2,startTime);gainNode.gain.exponentialRampToValueAtTime(.01,startTime+duration);oscillator.start(startTime);oscillator.stop(startTime+duration);}};const playGameOverSound=audioContext=>{if(!audioContext)return;const frequencies=[392,370,349,330,294]// Descending notes\n;const duration=.3;frequencies.forEach((freq,i)=>{const oscillator=audioContext.createOscillator();const gainNode=audioContext.createGain();oscillator.connect(gainNode);gainNode.connect(audioContext.destination);const startTime=audioContext.currentTime+i*.15;oscillator.frequency.setValueAtTime(freq,startTime);oscillator.type=\"square\";gainNode.gain.setValueAtTime(.15,startTime);gainNode.gain.exponentialRampToValueAtTime(.01,startTime+duration);oscillator.start(startTime);oscillator.stop(startTime+duration);});};const playMoveSound=audioContext=>{if(!audioContext)return;const oscillator=audioContext.createOscillator();const gainNode=audioContext.createGain();oscillator.connect(gainNode);gainNode.connect(audioContext.destination);oscillator.frequency.setValueAtTime(400,audioContext.currentTime);gainNode.gain.setValueAtTime(.08,audioContext.currentTime);gainNode.gain.exponentialRampToValueAtTime(.01,audioContext.currentTime+.03);oscillator.start(audioContext.currentTime);oscillator.stop(audioContext.currentTime+.03);};// Haptic feedback function\nconst triggerHaptic=pattern=>{if(typeof window!==\"undefined\"&&\"vibrate\"in navigator){navigator.vibrate(pattern);}};const DEFAULT_KEY_BINDINGS={moveLeft:\"ArrowLeft\",moveRight:\"ArrowRight\",softDrop:\"ArrowDown\",rotate:\"ArrowUp\",hardDrop:\" \",toggleControls:\"h\",pause:\"p\"};const DIFFICULTY_CONFIG={easy:{name:\"Easy\",initialSpeed:1e3,speedIncrease:50,requiredLines:20},medium:{name:\"Medium\",initialSpeed:700,speedIncrease:70,requiredLines:30},hard:{name:\"Hard\",initialSpeed:400,speedIncrease:100,requiredLines:40}};/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function TetrisGame(props){const{backgroundColor=\"#c0c0c0\",gridColor=\"#808080\",textColor=\"#000000\",accentColor=\"#000080\",font,scoreFont,soundEnabled=true,showTouchControls=true,keyboardControlsEnabled=true,hapticEnabled=true,theme=\"windows2000\",touchSensitivity=150,touchButtonPaddingTop=24,touchButtonPaddingBottom=24}=props;const canvasRef=useRef(null);const nextPieceCanvasRef=useRef(null);const[score,setScore]=useState(0);const[highScore,setHighScore]=useState(0);const[level,setLevel]=useState(1);const[linesCleared,setLinesCleared]=useState(0);const[gameOver,setGameOver]=useState(false);const[isPaused,setIsPaused]=useState(false);const[gameStarted,setGameStarted]=useState(false);const[touchControlsVisible,setTouchControlsVisible]=useState(true);const[playerName,setPlayerName]=useState(\"\");const[nameEntered,setNameEntered]=useState(false);const[leaderboard,setLeaderboard]=useState([]);const[showLeaderboard,setShowLeaderboard]=useState(false);const[selectedTheme,setSelectedTheme]=useState(theme);const[showKeyBindings,setShowKeyBindings]=useState(false);const[keyBindings,setKeyBindings]=useState(DEFAULT_KEY_BINDINGS);const[remappingKey,setRemappingKey]=useState(null);const[clearingLines,setClearingLines]=useState([]);const[gameWon,setGameWon]=useState(false);const[requiredLines,setRequiredLines]=useState(20);const audioContextRef=useRef(null);const lastTouchTimeRef=useRef(0);const isTouchDeviceRef=useRef(false);const gameStateRef=useRef({board:Array(ROWS).fill(null).map(()=>Array(COLS).fill(0)),currentPiece:null,currentX:0,currentY:0,currentColor:\"\",nextPiece:null,nextColor:\"\",dropCounter:0,dropInterval:1e3,lastTime:0,score:0,level:1,linesCleared:0});// Initialize audio context\nuseEffect(()=>{if(typeof window!==\"undefined\"&&soundEnabled){audioContextRef.current=createAudioContext();}return()=>{if(audioContextRef.current){audioContextRef.current.close();}};},[soundEnabled]);// Load leaderboard from localStorage\nuseEffect(()=>{if(typeof window!==\"undefined\"){const saved=localStorage.getItem(\"tetris-leaderboard\");if(saved){try{startTransition(()=>setLeaderboard(JSON.parse(saved)));}catch(e){console.error(\"Failed to load leaderboard\",e);}}}},[]);// Load high score from localStorage\nuseEffect(()=>{if(typeof window!==\"undefined\"){const saved=localStorage.getItem(\"tetris-highscore\");if(saved){try{startTransition(()=>setHighScore(parseInt(saved,10)));}catch(e){console.error(\"Failed to load high score\",e);}}}},[]);// Update high score\nuseEffect(()=>{if(score>highScore){startTransition(()=>setHighScore(score));if(typeof window!==\"undefined\"){localStorage.setItem(\"tetris-highscore\",score.toString());}}},[score,highScore]);// Update level based on lines cleared\nuseEffect(()=>{const newLevel=Math.floor(linesCleared/10)+1;if(newLevel!==level){startTransition(()=>setLevel(newLevel));gameStateRef.current.level=newLevel;// Increase speed with level\ngameStateRef.current.dropInterval=Math.max(100,1e3-(newLevel-1)*50);}},[linesCleared,level]);// Save score to leaderboard\nconst saveScore=useCallback((name,score)=>{if(typeof window===\"undefined\")return;const newEntry={name,score,date:new Date().toISOString()};const saved=localStorage.getItem(\"tetris-leaderboard\");let currentLeaderboard=[];if(saved){try{currentLeaderboard=JSON.parse(saved);}catch(e){console.error(\"Failed to parse leaderboard\",e);}}currentLeaderboard.push(newEntry);currentLeaderboard.sort((a,b)=>b.score-a.score);currentLeaderboard=currentLeaderboard.slice(0,10)// Keep top 10\n;localStorage.setItem(\"tetris-leaderboard\",JSON.stringify(currentLeaderboard));startTransition(()=>setLeaderboard(currentLeaderboard));},[]);const createPiece=useCallback(()=>{const shapeIndex=Math.floor(Math.random()*SHAPES.length);const shape=SHAPES[shapeIndex];const color=COLORS[shapeIndex];return{shape,color};},[]);const collision=useCallback((board,piece,x,y)=>{for(let row=0;row<piece.length;row++){for(let col=0;col<piece[row].length;col++){if(piece[row][col]){const newY=y+row;const newX=x+col;if(newY<0||newY>=ROWS||newX<0||newX>=COLS||board[newY][newX]){return true;}}}}return false;},[]);const merge=useCallback((board,piece,x,y,color)=>{const newBoard=board.map(row=>[...row]);for(let row=0;row<piece.length;row++){for(let col=0;col<piece[row].length;col++){if(piece[row][col]){const newY=y+row;const newX=x+col;if(newY>=0&&newY<ROWS&&newX>=0&&newX<COLS){newBoard[newY][newX]=COLORS.indexOf(color)+1;}}}}return newBoard;},[]);const clearLines=useCallback(board=>{const linesToClear=[];board.forEach((row,index)=>{if(row.every(cell=>cell!==0)){linesToClear.push(index);}});if(linesToClear.length>0){// Mark lines for animation\nstartTransition(()=>setClearingLines(linesToClear));return{newBoard:board,linesCleared:0,animating:true};}return{newBoard:board,linesCleared:0,animating:false};},[]);const completeClearLines=useCallback((board,linesToClear)=>{const newBoard=board.filter((_,index)=>!linesToClear.includes(index));const linesCleared=linesToClear.length;while(newBoard.length<ROWS){newBoard.unshift(Array(COLS).fill(0));}return{newBoard,linesCleared};},[]);const rotate=useCallback(piece=>{const rotated=piece[0].map((_,i)=>piece.map(row=>row[i]).reverse());return rotated;},[]);const draw=useCallback(()=>{const canvas=canvasRef.current;if(!canvas)return;const ctx=canvas.getContext(\"2d\");if(!ctx)return;const state=gameStateRef.current;const currentTheme=THEMES[selectedTheme];ctx.fillStyle=currentTheme.canvasBg;ctx.fillRect(0,0,canvas.width,canvas.height);// Draw grid\nctx.strokeStyle=currentTheme.gridColor;ctx.lineWidth=1;for(let row=0;row<=ROWS;row++){ctx.beginPath();ctx.moveTo(0,row*BLOCK_SIZE);ctx.lineTo(COLS*BLOCK_SIZE,row*BLOCK_SIZE);ctx.stroke();}for(let col=0;col<=COLS;col++){ctx.beginPath();ctx.moveTo(col*BLOCK_SIZE,0);ctx.lineTo(col*BLOCK_SIZE,ROWS*BLOCK_SIZE);ctx.stroke();}// Draw board\nfor(let row=0;row<ROWS;row++){for(let col=0;col<COLS;col++){if(state.board[row][col]){// Check if this row is being cleared\nconst isClearing=clearingLines.includes(row);if(isClearing){// Flash effect for clearing lines\nctx.fillStyle=\"#FFFFFF\";ctx.globalAlpha=.8;}else{ctx.fillStyle=COLORS[state.board[row][col]-1];ctx.globalAlpha=1;}ctx.fillRect(col*BLOCK_SIZE+1,row*BLOCK_SIZE+1,BLOCK_SIZE-2,BLOCK_SIZE-2);ctx.globalAlpha=1;}}}// Draw current piece\nif(state.currentPiece){ctx.fillStyle=state.currentColor;for(let row=0;row<state.currentPiece.length;row++){for(let col=0;col<state.currentPiece[row].length;col++){if(state.currentPiece[row][col]){ctx.fillRect((state.currentX+col)*BLOCK_SIZE+1,(state.currentY+row)*BLOCK_SIZE+1,BLOCK_SIZE-2,BLOCK_SIZE-2);}}}}},[selectedTheme,clearingLines]);const drawNextPiece=useCallback(()=>{const canvas=nextPieceCanvasRef.current;if(!canvas)return;const ctx=canvas.getContext(\"2d\");if(!ctx)return;const state=gameStateRef.current;const currentTheme=THEMES[selectedTheme];// Clear canvas\nctx.fillStyle=currentTheme.canvasBg;ctx.fillRect(0,0,canvas.width,canvas.height);// Draw next piece centered\nif(state.nextPiece){const pieceWidth=state.nextPiece[0].length;const pieceHeight=state.nextPiece.length;const offsetX=(4-pieceWidth)/2;const offsetY=(4-pieceHeight)/2;ctx.fillStyle=state.nextColor;for(let row=0;row<state.nextPiece.length;row++){for(let col=0;col<state.nextPiece[row].length;col++){if(state.nextPiece[row][col]){ctx.fillRect((offsetX+col)*BLOCK_SIZE+1,(offsetY+row)*BLOCK_SIZE+1,BLOCK_SIZE-2,BLOCK_SIZE-2);}}}}},[selectedTheme]);const spawnPiece=useCallback(()=>{const state=gameStateRef.current;// If there's no next piece, create both current and next\nif(!state.nextPiece){const current=createPiece();const next=createPiece();state.currentPiece=current.shape;state.currentColor=current.color;state.nextPiece=next.shape;state.nextColor=next.color;}else{// Move next piece to current\nstate.currentPiece=state.nextPiece;state.currentColor=state.nextColor;// Create new next piece\nconst next=createPiece();state.nextPiece=next.shape;state.nextColor=next.color;}state.currentX=Math.floor(COLS/2)-Math.floor(state.currentPiece[0].length/2);state.currentY=0;if(collision(state.board,state.currentPiece,state.currentX,state.currentY)){startTransition(()=>setGameOver(true));if(soundEnabled){playGameOverSound(audioContextRef.current);}if(hapticEnabled){// Long vibration for game over\ntriggerHaptic([200,100,200,100,400]);}// Save score when game ends\nsaveScore(playerName,gameStateRef.current.score||score);return false;}drawNextPiece();return true;},[createPiece,collision,soundEnabled,hapticEnabled,saveScore,playerName,score,drawNextPiece]);const drop=useCallback(()=>{const state=gameStateRef.current;if(!state.currentPiece)return;state.currentY++;if(collision(state.board,state.currentPiece,state.currentX,state.currentY)){state.currentY--;state.board=merge(state.board,state.currentPiece,state.currentX,state.currentY,state.currentColor);const{newBoard,linesCleared:clearedCount,animating}=clearLines(state.board);if(animating){// Animation will be handled by useEffect\nstate.board=newBoard;}else if(clearedCount>0){state.board=newBoard;const newScore=state.score+clearedCount*100;const newLinesCleared=state.linesCleared+clearedCount;startTransition(()=>{setScore(newScore);setLinesCleared(newLinesCleared);});state.score=newScore;state.linesCleared=newLinesCleared;if(soundEnabled){playLineClearSound(audioContextRef.current,clearedCount);}if(hapticEnabled){// Different vibration patterns based on lines cleared\nif(clearedCount===1){triggerHaptic(50);}else if(clearedCount===2){triggerHaptic([50,30,50]);}else if(clearedCount===3){triggerHaptic([50,30,50,30,50]);}else if(clearedCount===4){// Tetris! Stronger haptic\ntriggerHaptic([100,50,100,50,100]);}}}if(!animating&&!spawnPiece()){return;}}},[collision,merge,clearLines,spawnPiece,soundEnabled,hapticEnabled,score,linesCleared]);const move=useCallback(dir=>{const state=gameStateRef.current;if(!state.currentPiece)return;state.currentX+=dir;if(collision(state.board,state.currentPiece,state.currentX,state.currentY)){state.currentX-=dir;}else if(soundEnabled){playMoveSound(audioContextRef.current);}},[collision,soundEnabled]);const hardDrop=useCallback(()=>{const state=gameStateRef.current;if(!state.currentPiece)return;while(!collision(state.board,state.currentPiece,state.currentX,state.currentY+1)){state.currentY++;}if(hapticEnabled){// Medium vibration for hard drop\ntriggerHaptic(30);}drop();},[collision,drop,hapticEnabled]);const rotatePiece=useCallback(()=>{const state=gameStateRef.current;if(!state.currentPiece)return;const rotated=rotate(state.currentPiece);if(!collision(state.board,rotated,state.currentX,state.currentY)){state.currentPiece=rotated;if(soundEnabled){playRotateSound(audioContextRef.current);}if(hapticEnabled){// Light vibration for rotation\ntriggerHaptic(10);}}},[rotate,collision,soundEnabled,hapticEnabled]);const update=useCallback((time=0)=>{if(gameOver||isPaused||!gameStarted)return;const state=gameStateRef.current;const deltaTime=time-state.lastTime;state.lastTime=time;state.dropCounter+=deltaTime;if(state.dropCounter>state.dropInterval){drop();state.dropCounter=0;}draw();drawNextPiece();},[gameOver,isPaused,gameStarted,drop,draw,drawNextPiece]);const startGame=useCallback(()=>{const state=gameStateRef.current;state.board=Array(ROWS).fill(null).map(()=>Array(COLS).fill(0));state.dropCounter=0;state.lastTime=0;state.score=0;state.level=1;state.linesCleared=0;state.nextPiece=null;state.nextColor=\"\";state.dropInterval=1e3;startTransition(()=>{setScore(0);setLevel(1);setLinesCleared(0);setGameOver(false);setGameStarted(true);setShowLeaderboard(false);});spawnPiece();},[spawnPiece]);const togglePause=useCallback(()=>{if(!gameStarted||gameOver)return;startTransition(()=>setIsPaused(p=>!p));},[gameStarted,gameOver]);const handleNameSubmit=useCallback(e=>{e.preventDefault();if(playerName.trim().length>0){startTransition(()=>setNameEntered(true));}},[playerName]);const resetToNameEntry=useCallback(()=>{startTransition(()=>{setNameEntered(false);setGameStarted(false);setGameOver(false);setGameWon(false);setShowLeaderboard(false);setPlayerName(\"\");setRequiredLines(20);});},[]);// Load key bindings from localStorage\nuseEffect(()=>{if(typeof window!==\"undefined\"){const saved=localStorage.getItem(\"tetris-keybindings\");if(saved){try{startTransition(()=>setKeyBindings(JSON.parse(saved)));}catch(e){console.error(\"Failed to load key bindings\",e);}}}},[]);// Save key bindings to localStorage\nconst saveKeyBindings=useCallback(bindings=>{if(typeof window!==\"undefined\"){localStorage.setItem(\"tetris-keybindings\",JSON.stringify(bindings));startTransition(()=>setKeyBindings(bindings));}},[]);// Reset key bindings to default\nconst resetKeyBindings=useCallback(()=>{saveKeyBindings(DEFAULT_KEY_BINDINGS);},[saveKeyBindings]);// Get display name for a key\nconst getKeyDisplayName=useCallback(key=>{const keyMap={ArrowLeft:\"←\",ArrowRight:\"→\",ArrowUp:\"↑\",ArrowDown:\"↓\",\" \":\"Space\"};return keyMap[key]||key.toUpperCase();},[]);// Detect if device supports touch\nuseEffect(()=>{if(typeof window!==\"undefined\"){isTouchDeviceRef.current=\"ontouchstart\"in window||navigator.maxTouchPoints>0;}},[]);useEffect(()=>{if(typeof window===\"undefined\")return;if(!keyboardControlsEnabled)return;const handleKeyDown=e=>{// Handle key remapping\nif(remappingKey){e.preventDefault();const newBindings={...keyBindings,[remappingKey]:e.key};saveKeyBindings(newBindings);startTransition(()=>setRemappingKey(null));return;}if(e.key.toLowerCase()===keyBindings.toggleControls.toLowerCase()){e.preventDefault();startTransition(()=>setTouchControlsVisible(v=>!v));return;}if(e.key.toLowerCase()===keyBindings.pause.toLowerCase()){e.preventDefault();togglePause();return;}if(!gameStarted||gameOver||isPaused)return;switch(e.key){case keyBindings.moveLeft:e.preventDefault();move(-1);break;case keyBindings.moveRight:e.preventDefault();move(1);break;case keyBindings.softDrop:e.preventDefault();drop();break;case keyBindings.rotate:e.preventDefault();rotatePiece();break;case keyBindings.hardDrop:e.preventDefault();hardDrop();break;}};window.addEventListener(\"keydown\",handleKeyDown);return()=>window.removeEventListener(\"keydown\",handleKeyDown);},[gameStarted,gameOver,isPaused,move,drop,rotatePiece,hardDrop,keyboardControlsEnabled,keyBindings,remappingKey,saveKeyBindings,togglePause]);useEffect(()=>{if(typeof window===\"undefined\")return;if(!gameStarted||gameOver||isPaused)return;let animationId;const gameLoop=time=>{update(time);animationId=requestAnimationFrame(gameLoop);};animationId=requestAnimationFrame(gameLoop);return()=>cancelAnimationFrame(animationId);},[update,gameStarted,gameOver,isPaused]);useEffect(()=>{draw();drawNextPiece();},[draw,drawNextPiece]);// Update gameStateRef.current.score when score changes\nuseEffect(()=>{gameStateRef.current.score=score;},[score]);const isFixedWidth=props?.style&&props.style.width===\"100%\";const isFixedHeight=props?.style&&props.style.height===\"100%\";const currentTheme=THEMES[selectedTheme];const getButtonStyle=(isActive=false)=>({padding:\"4px 12px\",background:currentTheme.buttonBg,color:currentTheme.buttonColor,border:currentTheme.buttonBorder,borderColor:currentTheme.buttonBorderColor,boxShadow:currentTheme.buttonShadow,fontSize:12,fontWeight:selectedTheme===\"modern\"?600:400,fontFamily:currentTheme.fontFamily,cursor:\"pointer\",borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\",transition:selectedTheme===\"modern\"||selectedTheme===\"cyberpunk\"?\"all 0.2s ease\":\"none\",textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",letterSpacing:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"1px\":\"0\",...isActive?{opacity:.7}:{},...scoreFont});const getTouchButtonStyle=()=>{const baseStyle=getButtonStyle();// Remove padding from base style so we can apply custom padding\nconst{padding,...restStyle}=baseStyle;return restStyle;};const handleButtonMouseDown=e=>{if(selectedTheme===\"windows2000\"){e.currentTarget.style.borderColor=currentTheme.buttonActiveBorderColor;e.currentTarget.style.boxShadow=currentTheme.buttonActiveShadow;e.currentTarget.style.padding=\"5px 11px 3px 13px\";}else if(selectedTheme===\"classic\"){e.currentTarget.style.boxShadow=currentTheme.buttonActiveShadow;e.currentTarget.style.transform=\"translateY(2px)\";}else{e.currentTarget.style.boxShadow=currentTheme.buttonActiveShadow;e.currentTarget.style.transform=\"scale(0.98)\";}};const handleButtonMouseUp=e=>{if(selectedTheme===\"windows2000\"){e.currentTarget.style.borderColor=currentTheme.buttonBorderColor;e.currentTarget.style.boxShadow=currentTheme.buttonShadow;e.currentTarget.style.padding=\"4px 12px\";}else if(selectedTheme===\"classic\"){e.currentTarget.style.boxShadow=currentTheme.buttonShadow;e.currentTarget.style.transform=\"translateY(0)\";}else{e.currentTarget.style.boxShadow=currentTheme.buttonShadow;e.currentTarget.style.transform=\"scale(1)\";}};// Touch-safe button handler\nconst handleTouchButton=useCallback(action=>{const now=Date.now();if(now-lastTouchTimeRef.current<touchSensitivity){return;// Ignore if too soon after last touch\n}lastTouchTimeRef.current=now;action();},[touchSensitivity]);// Handle line clear animation completion\nuseEffect(()=>{if(clearingLines.length===0)return;const timer=setTimeout(()=>{const state=gameStateRef.current;const{newBoard,linesCleared:clearedCount}=completeClearLines(state.board,clearingLines);state.board=newBoard;const newScore=state.score+clearedCount*100;const newLinesCleared=state.linesCleared+clearedCount;// Check if player has reached the required lines\nif(newLinesCleared>=requiredLines){// Reset lines counter and increment required lines\nconst resetLinesCleared=newLinesCleared-requiredLines;// Increase speed by decreasing drop interval by 2000ms\nstate.dropInterval=Math.max(100,state.dropInterval-2e3);startTransition(()=>{setScore(newScore);setLinesCleared(resetLinesCleared);setRequiredLines(prev=>prev+10);setClearingLines([]);});state.score=newScore;state.linesCleared=resetLinesCleared;if(soundEnabled){playLineClearSound(audioContextRef.current,clearedCount);}if(hapticEnabled){// Victory haptic for reaching milestone\ntriggerHaptic([100,50,100,50,100,50,200]);}// Spawn next piece after clearing\nspawnPiece();return;}startTransition(()=>{setScore(newScore);setLinesCleared(newLinesCleared);setClearingLines([]);});state.score=newScore;state.linesCleared=newLinesCleared;if(soundEnabled){playLineClearSound(audioContextRef.current,clearedCount);}if(hapticEnabled){// Different vibration patterns based on lines cleared\nif(clearedCount===1){triggerHaptic(50);}else if(clearedCount===2){triggerHaptic([50,30,50]);}else if(clearedCount===3){triggerHaptic([50,30,50,30,50]);}else if(clearedCount===4){// Tetris! Stronger haptic\ntriggerHaptic([100,50,100,50,100]);}}// Spawn next piece after clearing\nspawnPiece();},200)// 200ms animation duration\n;return()=>clearTimeout(timer);},[clearingLines,completeClearLines,soundEnabled,hapticEnabled,spawnPiece,requiredLines,saveScore,playerName]);return /*#__PURE__*/_jsx(\"div\",{style:{...props.style,position:\"relative\",display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",gap:8,padding:selectedTheme===\"modern\"?16:3,background:currentTheme.containerBg,border:currentTheme.containerBorder,borderColor:currentTheme.containerBorderColor,boxShadow:currentTheme.containerShadow,borderRadius:selectedTheme===\"modern\"?\"16px\":selectedTheme===\"cyberpunk\"?\"8px\":\"0\",...isFixedWidth?{}:{width:\"max-content\"},...isFixedHeight?{}:{height:\"max-content\"}},children:!nameEntered?/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12,padding:16,width:COLS*BLOCK_SIZE,background:currentTheme.panelBg,border:currentTheme.panelBorder,borderColor:currentTheme.panelBorderColor,borderRadius:selectedTheme===\"modern\"?\"12px\":selectedTheme===\"cyberpunk\"?\"6px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#333333\":currentTheme.titleColor,fontSize:12,fontWeight:700,textAlign:\"center\",fontFamily:currentTheme.fontFamily,marginBottom:8,textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",letterSpacing:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"1px\":\"0\",...font},children:\"Enter Your Name\"}),/*#__PURE__*/_jsxs(\"form\",{onSubmit:handleNameSubmit,style:{display:\"flex\",flexDirection:\"column\",gap:8},children:[/*#__PURE__*/_jsx(\"input\",{type:\"text\",value:playerName,onChange:e=>startTransition(()=>setPlayerName(e.target.value)),maxLength:20,placeholder:\"Player Name\",autoFocus:true,style:{padding:selectedTheme===\"modern\"?\"8px 12px\":\"4px 6px\",background:currentTheme.inputBg,color:currentTheme.inputColor,border:currentTheme.inputBorder,borderColor:currentTheme.inputBorderColor,fontSize:12,fontFamily:currentTheme.fontFamily,outline:\"none\",borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\",...scoreFont}}),/*#__PURE__*/_jsx(\"button\",{type:\"submit\",disabled:playerName.trim().length===0,style:{...getButtonStyle(),opacity:playerName.trim().length===0?.5:1,cursor:playerName.trim().length===0?\"not-allowed\":\"pointer\"},onMouseDown:playerName.trim().length>0?handleButtonMouseDown:undefined,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:\"Continue\"})]}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>startTransition(()=>setShowKeyBindings(!showKeyBindings)),style:getButtonStyle(),onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:showKeyBindings?\"Hide Controls\":\"Customize Controls\"}),showKeyBindings&&/*#__PURE__*/_jsxs(\"div\",{style:{background:currentTheme.inputBg,border:currentTheme.inputBorder,borderColor:currentTheme.inputBorderColor,padding:8,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:currentTheme.inputColor,fontSize:11,fontWeight:700,fontFamily:currentTheme.fontFamily,marginBottom:6,textAlign:\"center\",textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",...scoreFont},children:remappingKey?\"Press any key...\":\"Click to remap\"}),Object.entries({moveLeft:\"Move Left\",moveRight:\"Move Right\",softDrop:\"Soft Drop\",rotate:\"Rotate\",hardDrop:\"Hard Drop\",toggleControls:\"Toggle Controls\",pause:\"Pause\"}).map(([key,label])=>/*#__PURE__*/_jsxs(\"button\",{onClick:()=>startTransition(()=>setRemappingKey(key)),disabled:remappingKey!==null&&remappingKey!==key,style:{display:\"flex\",justifyContent:\"space-between\",width:\"100%\",padding:\"4px 8px\",marginBottom:4,fontSize:10,fontFamily:currentTheme.fontFamily,color:currentTheme.inputColor,background:remappingKey===key?currentTheme.buttonBg:\"transparent\",border:currentTheme.inputBorder,borderColor:remappingKey===key?currentTheme.buttonBorderColor:\"transparent\",cursor:remappingKey!==null&&remappingKey!==key?\"not-allowed\":\"pointer\",opacity:remappingKey!==null&&remappingKey!==key?.5:1,borderRadius:selectedTheme===\"modern\"?\"4px\":selectedTheme===\"cyberpunk\"?\"2px\":\"0\",...scoreFont},children:[/*#__PURE__*/_jsx(\"span\",{children:label}),/*#__PURE__*/_jsx(\"span\",{style:{fontWeight:700},children:getKeyDisplayName(keyBindings[key])})]},key)),/*#__PURE__*/_jsx(\"button\",{onClick:resetKeyBindings,disabled:remappingKey!==null,style:{...getButtonStyle(),width:\"100%\",marginTop:4,opacity:remappingKey!==null?.5:1,cursor:remappingKey!==null?\"not-allowed\":\"pointer\"},onMouseDown:remappingKey===null?handleButtonMouseDown:undefined,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:\"Reset to Default\"})]}),leaderboard.length>0&&/*#__PURE__*/_jsx(\"button\",{onClick:()=>startTransition(()=>setShowLeaderboard(!showLeaderboard)),style:getButtonStyle(),onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:showLeaderboard?\"Hide Leaderboard\":\"View Leaderboard\"}),showLeaderboard&&leaderboard.length>0&&/*#__PURE__*/_jsxs(\"div\",{style:{background:currentTheme.inputBg,border:currentTheme.inputBorder,borderColor:currentTheme.inputBorderColor,padding:8,maxHeight:200,overflowY:\"auto\",borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:currentTheme.inputColor,fontSize:11,fontWeight:700,fontFamily:currentTheme.fontFamily,marginBottom:6,textAlign:\"center\",textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",...scoreFont},children:\"Top Scores\"}),leaderboard.map((entry,index)=>/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",padding:\"2px 4px\",fontSize:10,fontFamily:currentTheme.fontFamily,color:currentTheme.inputColor,backgroundColor:index%2===0?selectedTheme===\"modern\"?\"#f0f0f0\":\"rgba(255, 255, 255, 0.05)\":\"transparent\",...scoreFont},children:[/*#__PURE__*/_jsxs(\"span\",{children:[index+1,\". \",entry.name]}),/*#__PURE__*/_jsx(\"span\",{children:entry.score})]},index))]})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:selectedTheme===\"modern\"?16:8,alignItems:\"flex-start\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",padding:selectedTheme===\"modern\"?8:3,background:currentTheme.panelBg,border:currentTheme.panelBorder,borderColor:currentTheme.panelBorderColor,borderRadius:selectedTheme===\"modern\"?\"12px\":selectedTheme===\"cyberpunk\"?\"6px\":\"0\"},children:[/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,width:COLS*BLOCK_SIZE,height:ROWS*BLOCK_SIZE,style:{display:\"block\",backgroundColor:currentTheme.canvasBg,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"}}),isPaused&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",top:selectedTheme===\"modern\"?8:3,left:selectedTheme===\"modern\"?8:3,width:COLS*BLOCK_SIZE,height:ROWS*BLOCK_SIZE,backgroundColor:\"rgba(0, 0, 0, 0.7)\",display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",gap:12,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:\"#FFFFFF\",fontSize:24,fontWeight:700,fontFamily:currentTheme.fontFamily,textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",letterSpacing:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"2px\":\"0\",textShadow:\"2px 2px 4px rgba(0, 0, 0, 0.8)\",...font},children:\"PAUSED\"}),/*#__PURE__*/_jsxs(\"div\",{style:{color:\"#CCCCCC\",fontSize:12,fontFamily:currentTheme.fontFamily,textAlign:\"center\",...scoreFont},children:[\"Press \",getKeyDisplayName(keyBindings.pause),\" or click Resume\"]})]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:selectedTheme===\"modern\"?12:8,width:120},children:[/*#__PURE__*/_jsxs(\"div\",{style:{padding:selectedTheme===\"modern\"?8:6,background:currentTheme.panelBg,border:currentTheme.panelBorder,borderColor:currentTheme.panelBorderColor,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#666666\":currentTheme.inputColor,fontSize:10,fontWeight:700,fontFamily:currentTheme.fontFamily,marginBottom:4,textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",...scoreFont},children:\"Score\"}),/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#333333\":currentTheme.titleColor,fontSize:16,fontWeight:700,fontFamily:currentTheme.fontFamily,...font},children:score})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:selectedTheme===\"modern\"?8:6,background:currentTheme.panelBg,border:currentTheme.panelBorder,borderColor:currentTheme.panelBorderColor,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#666666\":currentTheme.inputColor,fontSize:10,fontWeight:700,fontFamily:currentTheme.fontFamily,marginBottom:4,textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",...scoreFont},children:\"High Score\"}),/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#333333\":currentTheme.titleColor,fontSize:16,fontWeight:700,fontFamily:currentTheme.fontFamily,...font},children:highScore})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:selectedTheme===\"modern\"?8:6,background:currentTheme.panelBg,border:currentTheme.panelBorder,borderColor:currentTheme.panelBorderColor,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#666666\":currentTheme.inputColor,fontSize:10,fontWeight:700,fontFamily:currentTheme.fontFamily,marginBottom:4,textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",...scoreFont},children:\"Next\"}),/*#__PURE__*/_jsx(\"canvas\",{ref:nextPieceCanvasRef,width:4*BLOCK_SIZE,height:4*BLOCK_SIZE,style:{display:\"block\",backgroundColor:currentTheme.canvasBg,borderRadius:selectedTheme===\"modern\"?\"4px\":selectedTheme===\"cyberpunk\"?\"2px\":\"0\"}})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:selectedTheme===\"modern\"?8:6,background:currentTheme.panelBg,border:currentTheme.panelBorder,borderColor:currentTheme.panelBorderColor,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#666666\":currentTheme.inputColor,fontSize:10,fontWeight:700,fontFamily:currentTheme.fontFamily,marginBottom:4,textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",...scoreFont},children:\"Level\"}),/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#333333\":currentTheme.titleColor,fontSize:16,fontWeight:700,fontFamily:currentTheme.fontFamily,...font},children:level})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:selectedTheme===\"modern\"?8:6,background:currentTheme.panelBg,border:currentTheme.panelBorder,borderColor:currentTheme.panelBorderColor,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#666666\":currentTheme.inputColor,fontSize:10,fontWeight:700,fontFamily:currentTheme.fontFamily,marginBottom:4,textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",...scoreFont},children:\"Lines\"}),/*#__PURE__*/_jsxs(\"div\",{style:{color:selectedTheme===\"modern\"?\"#333333\":currentTheme.titleColor,fontSize:16,fontWeight:700,fontFamily:currentTheme.fontFamily,...font},children:[linesCleared,\"/\",requiredLines]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:selectedTheme===\"modern\"?8:6,background:currentTheme.panelBg,border:currentTheme.panelBorder,borderColor:currentTheme.panelBorderColor,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"4px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#666666\":currentTheme.inputColor,fontSize:10,fontWeight:700,fontFamily:currentTheme.fontFamily,marginBottom:4,textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",...scoreFont},children:\"Speed\"}),/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#333333\":currentTheme.titleColor,fontSize:16,fontWeight:700,fontFamily:currentTheme.fontFamily,...font},children:Math.max(1,11-level)})]})]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:8,width:\"100%\",maxWidth:COLS*BLOCK_SIZE+120+(selectedTheme===\"modern\"?16:8),padding:selectedTheme===\"modern\"?\"0 8px 8px 8px\":\"0 3px 3px 3px\"},children:[!gameStarted?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"button\",{onClick:startGame,style:getButtonStyle(),onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:\"Start Game\"}),/*#__PURE__*/_jsx(\"button\",{onClick:resetToNameEntry,style:getButtonStyle(),onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:\"Change Settings\"})]}):gameOver?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#333333\":currentTheme.titleColor,fontSize:12,fontWeight:700,textAlign:\"center\",fontFamily:currentTheme.fontFamily,padding:\"4px\",background:currentTheme.panelBg,border:currentTheme.panelBorder,borderColor:currentTheme.panelBorderColor,borderRadius:selectedTheme===\"modern\"?\"8px\":selectedTheme===\"cyberpunk\"?\"6px\":\"0\",textTransform:selectedTheme===\"retro\"||selectedTheme===\"classic\"?\"uppercase\":\"none\",...font},children:gameWon?`You Win! Next: ${requiredLines} lines`:\"Game Over!\"}),/*#__PURE__*/_jsx(\"button\",{onClick:startGame,style:getButtonStyle(),onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:\"Play Again\"}),/*#__PURE__*/_jsx(\"button\",{onClick:resetToNameEntry,style:getButtonStyle(),onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:\"Change Settings\"})]}):/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:6,width:\"100%\"},children:[/*#__PURE__*/_jsx(\"button\",{onClick:togglePause,style:{flex:1,...getButtonStyle()},onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:isPaused?\"Resume\":\"Pause\"}),/*#__PURE__*/_jsx(\"button\",{onClick:resetToNameEntry,style:{flex:1,...getButtonStyle()},onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,children:\"Exit Game\"})]})}),/*#__PURE__*/_jsx(\"div\",{style:{color:selectedTheme===\"modern\"?\"#666666\":currentTheme.inputColor,fontSize:10,textAlign:\"center\",fontFamily:currentTheme.fontFamily,...scoreFont},children:gameStarted&&!gameOver&&keyboardControlsEnabled?`${getKeyDisplayName(keyBindings.moveLeft)}${getKeyDisplayName(keyBindings.moveRight)} Move | ${getKeyDisplayName(keyBindings.rotate)} Rotate | ${getKeyDisplayName(keyBindings.softDrop)} Drop | ${getKeyDisplayName(keyBindings.hardDrop)} Hard Drop | ${getKeyDisplayName(keyBindings.toggleControls)} Hide/Show`:\"\"}),showTouchControls&&touchControlsVisible&&gameStarted&&!gameOver&&!isPaused&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6,width:\"100%\",marginTop:4},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:6,justifyContent:\"center\"},children:[/*#__PURE__*/_jsx(\"button\",{onTouchStart:e=>{e.preventDefault();handleTouchButton(rotatePiece);},onClick:e=>{if(isTouchDeviceRef.current){e.preventDefault();return;}e.preventDefault();rotatePiece();},style:{flex:1,padding:`${touchButtonPaddingTop}px 8px ${touchButtonPaddingBottom}px 8px`,...getTouchButtonStyle(),touchAction:\"manipulation\",userSelect:\"none\"},onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,onTouchEnd:e=>{handleButtonMouseUp(e);},children:\"↻ Rotate\"}),/*#__PURE__*/_jsx(\"button\",{onTouchStart:e=>{e.preventDefault();handleTouchButton(hardDrop);},onClick:e=>{if(isTouchDeviceRef.current){e.preventDefault();return;}e.preventDefault();hardDrop();},style:{flex:1,padding:`${touchButtonPaddingTop}px 8px ${touchButtonPaddingBottom}px 8px`,...getTouchButtonStyle(),touchAction:\"manipulation\",userSelect:\"none\"},onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,onTouchEnd:e=>{handleButtonMouseUp(e);},children:\"⇊ Hard Drop\"})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:6,justifyContent:\"center\"},children:[/*#__PURE__*/_jsx(\"button\",{onTouchStart:e=>{e.preventDefault();handleTouchButton(()=>move(-1));},onClick:e=>{if(isTouchDeviceRef.current){e.preventDefault();return;}e.preventDefault();move(-1);},style:{flex:1,padding:`${touchButtonPaddingTop}px 8px ${touchButtonPaddingBottom}px 8px`,...getTouchButtonStyle(),touchAction:\"manipulation\",userSelect:\"none\"},onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,onTouchEnd:e=>{handleButtonMouseUp(e);},children:\"← Left\"}),/*#__PURE__*/_jsx(\"button\",{onTouchStart:e=>{e.preventDefault();handleTouchButton(drop);},onClick:e=>{if(isTouchDeviceRef.current){e.preventDefault();return;}e.preventDefault();drop();},style:{flex:1,padding:`${touchButtonPaddingTop}px 8px ${touchButtonPaddingBottom}px 8px`,...getTouchButtonStyle(),touchAction:\"manipulation\",userSelect:\"none\"},onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,onTouchEnd:e=>{handleButtonMouseUp(e);},children:\"↓ Down\"}),/*#__PURE__*/_jsx(\"button\",{onTouchStart:e=>{e.preventDefault();handleTouchButton(()=>move(1));},onClick:e=>{if(isTouchDeviceRef.current){e.preventDefault();return;}e.preventDefault();move(1);},style:{flex:1,padding:`${touchButtonPaddingTop}px 8px ${touchButtonPaddingBottom}px 8px`,...getTouchButtonStyle(),touchAction:\"manipulation\",userSelect:\"none\"},onMouseDown:handleButtonMouseDown,onMouseUp:handleButtonMouseUp,onMouseLeave:handleButtonMouseUp,onTouchEnd:e=>{handleButtonMouseUp(e);},children:\"Right →\"})]})]})]})]})});}addPropertyControls(TetrisGame,{font:{type:ControlType.Font,title:\"Title Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"14px\",variant:\"Bold\",letterSpacing:\"0\",lineHeight:\"1em\"}},scoreFont:{type:ControlType.Font,title:\"UI Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"12px\",variant:\"Regular\",letterSpacing:\"0\",lineHeight:\"1.2em\"}},soundEnabled:{type:ControlType.Boolean,title:\"Sound\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},hapticEnabled:{type:ControlType.Boolean,title:\"Haptic Feedback\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},keyboardControlsEnabled:{type:ControlType.Boolean,title:\"Keyboard Controls\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},showTouchControls:{type:ControlType.Boolean,title:\"Touch Controls\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},touchSensitivity:{type:ControlType.Number,title:\"Touch Delay (ms)\",defaultValue:150,min:50,max:500,step:50,unit:\"ms\",displayStepper:false},touchButtonPaddingTop:{type:ControlType.Number,title:\"Touch Button Padding Top (px)\",defaultValue:24,min:0,max:50,step:1,unit:\"px\",displayStepper:false},touchButtonPaddingBottom:{type:ControlType.Number,title:\"Touch Button Padding Bottom (px)\",defaultValue:24,min:0,max:50,step:1,unit:\"px\",displayStepper:false}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TetrisGame\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TetrisGame_1.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";import*as React from\"react\";export const v0=\"Tetris game icon\";export const v1=/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO01TIFNhbnMgU2VyaWYgQm9sZCBSZWd1bGFy\",\"--framer-font-family\":'\"MS Sans Serif Bold Regular\", \"MS Sans Serif Bold Regular Placeholder\", serif',\"--framer-font-size\":\"12px\",\"--framer-line-height\":\"12px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:\"Tetris Brick Game\"})});\nexport const __FramerMetadata__ = {\"exports\":{\"v0\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v1\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport*as localizedValues from\"./xN1chRYFL-0.js\";const valuesByLocaleId={HyIjoKWDY:localizedValues};export default function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (c2a8602)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.img,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"img\",{...rest,ref:ref});});const getProps=({height,id,width,...props})=>{return{...props};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,alt:\"\",className:cx(\"framer-hcu10\",className),layoutId:layoutId,ref:ref,src:'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 9 8\" xmlns=\"http://www.w3.org/2000/svg\"><g d=\"M 0 8 L 0 0 L 9 0 L 9 8 Z M 0 0 L 2.25 0 L 2.25 1.143 L 3.375 1.143 L 3.375 2.286 L 5.625 2.286 L 5.625 1.143 L 6.75 1.143 L 6.75 0 L 9 0 L 9 1.143 L 7.875 1.143 L 7.875 2.286 L 6.75 2.286 L 6.75 3.429 L 5.625 3.429 L 5.625 4.571 L 6.75 4.571 L 6.75 5.714 L 7.875 5.714 L 7.875 6.857 L 9 6.857 L 9 8 L 6.75 8 L 6.75 6.857 L 5.625 6.857 L 5.625 5.714 L 3.375 5.714 L 3.375 6.857 L 2.25 6.857 L 2.25 8 L 0 8 L 0 6.857 L 1.125 6.857 L 1.125 5.714 L 2.25 5.714 L 2.25 4.571 L 3.375 4.571 L 3.375 3.429 L 2.25 3.429 L 2.25 2.286 L 1.125 2.286 L 1.125 1.143 L 0 1.143 Z\" fill=\"transparent\" height=\"8px\" id=\"IsXHyt2Z7\" transform=\"translate(0 0.377)\" width=\"9px\"><path d=\"M 0 8 L 0 0 L 9 0 L 9 8 Z\" fill=\"transparent\" height=\"8px\" id=\"wq7MGi1Fg\" transform=\"translate(0 0)\" width=\"9px\"/><path d=\"M 0 0 L 2.25 0 L 2.25 1.143 L 3.375 1.143 L 3.375 2.286 L 5.625 2.286 L 5.625 1.143 L 6.75 1.143 L 6.75 0 L 9 0 L 9 1.143 L 7.875 1.143 L 7.875 2.286 L 6.75 2.286 L 6.75 3.429 L 5.625 3.429 L 5.625 4.571 L 6.75 4.571 L 6.75 5.714 L 7.875 5.714 L 7.875 6.857 L 9 6.857 L 9 8 L 6.75 8 L 6.75 6.857 L 5.625 6.857 L 5.625 5.714 L 3.375 5.714 L 3.375 6.857 L 2.25 6.857 L 2.25 8 L 0 8 L 0 6.857 L 1.125 6.857 L 1.125 5.714 L 2.25 5.714 L 2.25 4.571 L 3.375 4.571 L 3.375 3.429 L 2.25 3.429 L 2.25 2.286 L 1.125 2.286 L 1.125 1.143 L 0 1.143 Z\" fill=\"rgb(0, 0, 0)\" height=\"8px\" id=\"VZCslPmkq\" transform=\"translate(0 0)\" width=\"9px\"/></g></svg>',style:{...style}});});const css=[`.framer-hcu10 { -webkit-mask: ${mask}; aspect-ratio: 1.125; display: block; mask: ${mask}; user-select: none; width: 9px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 9\n * @framerIntrinsicHeight 8\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Close small\",\"color\":{\"type\":\"static\",\"value\":\"rgb(0,0,0)\"},\"set\":{\"localId\":\"vectorSet/BFefz9iyn\",\"id\":\"BFefz9iyn\",\"moduleId\":\"FUgK2uC7p58c6WAo60MC\"}}\n */const Icon=withCSS(Component,css,\"framer-hcu10\");Icon.displayName=\"Close small\";export default Icon;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"9\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"8\",\"framerVector\":\"{\\\"name\\\":\\\"Close small\\\",\\\"color\\\":{\\\"type\\\":\\\"static\\\",\\\"value\\\":\\\"rgb(0,0,0)\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/BFefz9iyn\\\",\\\"id\\\":\\\"BFefz9iyn\\\",\\\"moduleId\\\":\\\"FUgK2uC7p58c6WAo60MC\\\"}}\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getLoadingLazyAtYPosition,Image,RichText,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import TetrisGame from\"https://framerusercontent.com/modules/m6hWSH9hqvB0MGhgZis7/86SGHeRkDQC4UIg5Uapt/TetrisGame_1.js\";import getLocalizedValue from\"https://framerusercontent.com/modules/QMcyot77vIXM5G2LT38s/5F27jnK5IdQEJx8i7xYJ/xN1chRYFL.js\";import CloseSmall from\"https://framerusercontent.com/modules/FGVt5ZIxIpuMdp7X5xdp/Due1numn71jhDaPetDl8/MNFeffudX.js\";import Controls from\"https://framerusercontent.com/modules/jzxd3KoryNRVonLsqo9p/kEzytzOxVQG83JP8Tp76/ZuJnbUgD1.js\";const ControlsFonts=getFonts(Controls);const TetrisGameFonts=getFonts(TetrisGame);const cycleOrder=[\"kX3KfIy0l\",\"BmNxLwRMc\",\"cdhN9iZgs\"];const serializationHash=\"framer-ssms5\";const variantClassNames={BmNxLwRMc:\"framer-v-nn4ts9\",cdhN9iZgs:\"framer-v-18hzmid\",kX3KfIy0l:\"framer-v-bot5d5\"};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 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={Desktop:\"kX3KfIy0l\",Mobile:\"cdhN9iZgs\",Tablet:\"BmNxLwRMc\"};const getProps=({closeOverlay,height,id,width,...props})=>{return{...props,UpYqYOcCw:closeOverlay??props.UpYqYOcCw,variant:humanReadableVariantMap[props.variant]??props.variant??\"kX3KfIy0l\"};};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,UpYqYOcCw,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"kX3KfIy0l\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const DBidGrmAZ1spvxn6=activeVariantCallback(async(...args)=>{if(UpYqYOcCw){const res=await UpYqYOcCw(...args);if(res===false)return false;}});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__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-bot5d5\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"kX3KfIy0l\",ref:refBinding,style:{...style},...addPropertyOverrides({BmNxLwRMc:{\"data-framer-name\":\"Tablet\"},cdhN9iZgs:{\"data-framer-name\":\"Mobile\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-k2hp3m\",layoutDependency:layoutDependency,layoutId:\"BznuLlZvl\",style:{backgroundColor:\"rgb(192, 192, 192)\",boxShadow:\"inset -2px -2px 0px 0px rgb(10, 10, 10), inset 2px 2px 0px 0px rgb(255, 255, 255), inset -4px -4px 0px 0px rgb(128, 128, 128), inset 4px 4px 0px 0px rgb(222, 222, 222)\"},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1j4752k\",\"data-framer-name\":\"Title Bar\",layoutDependency:layoutDependency,layoutId:\"P0jnF9h9r\",style:{background:\"linear-gradient(90deg, rgb(0, 0, 128) 0%, rgb(16, 132, 208) 100%)\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1m4axi9\",\"data-framer-name\":\"Frame 1\",layoutDependency:layoutDependency,layoutId:\"pQJ75X0ba\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-ux770y\",\"data-framer-name\":\"joystick_button\",layoutDependency:layoutDependency,layoutId:\"wXKsVhFjr\",children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-hs78c6\",\"data-framer-name\":\"joystick_button\",layoutDependency:layoutDependency,layoutId:\"H2DaVr_Yu\",children:/*#__PURE__*/_jsx(Image,{background:{alt:\"Tetris game icon\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+(((componentViewport?.height||724)-0-732)/2+0+0)+6+10.5+0+0+0),pixelHeight:32,pixelWidth:32,src:\"https://framerusercontent.com/images/M9XbcIoKJSDcdHq0ORyCG2hD24.png?width=32&height=32\"},className:\"framer-191m5r1\",\"data-framer-name\":\"joystick_button\",layoutDependency:layoutDependency,layoutId:\"BIkC0prcO\",...addPropertyOverrides({BmNxLwRMc:{background:{alt:\"Tetris game icon\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+(((componentViewport?.height||692)-0-700)/2+0+0)+6+10.5+0+0+0),pixelHeight:32,pixelWidth:32,src:\"https://framerusercontent.com/images/M9XbcIoKJSDcdHq0ORyCG2hD24.png?width=32&height=32\"}},cdhN9iZgs:{background:{alt:\"Tetris game icon\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+(((componentViewport?.height||637)-0-729)/2+0+0)+6+10.5+0+0+0),pixelHeight:32,pixelWidth:32,src:\"https://framerusercontent.com/images/M9XbcIoKJSDcdHq0ORyCG2hD24.png?width=32&height=32\"}}},baseVariant,gestureVariant)})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:getLocalizedValue(\"v1\",activeLocale)??/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO01TIFNhbnMgU2VyaWYgQm9sZCBSZWd1bGFy\",\"--framer-font-family\":'\"MS Sans Serif Bold Regular\", \"MS Sans Serif Bold Regular Placeholder\", serif',\"--framer-font-size\":\"12px\",\"--framer-line-height\":\"12px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:\"Tetris Brick Game\"})}),className:\"framer-1vb8sak\",\"data-framer-name\":\"A Title Bar\",fonts:[\"CUSTOM;MS Sans Serif Bold Regular\"],layoutDependency:layoutDependency,layoutId:\"raHsfy9c2\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"center\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:32,y:(componentViewport?.y||0)+0+(((componentViewport?.height||724)-0-732)/2+0+0)+6+3,...addPropertyOverrides({BmNxLwRMc:{y:(componentViewport?.y||0)+0+(((componentViewport?.height||692)-0-700)/2+0+0)+6+3},cdhN9iZgs:{y:(componentViewport?.y||0)+0+(((componentViewport?.height||637)-0-729)/2+0+0)+6+3}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1u95ide-container\",layoutDependency:layoutDependency,layoutId:\"amIN4mQ4o-container\",nodeId:\"amIN4mQ4o\",rendersWithMotion:true,scopeId:\"xN1chRYFL\",children:/*#__PURE__*/_jsx(Controls,{DBidGrmAZ:DBidGrmAZ1spvxn6,height:\"100%\",id:\"amIN4mQ4o\",K9XY2rrF9:CloseSmall,layoutId:\"amIN4mQ4o\",variant:\"sc5mYqRMz\",width:\"100%\"})})})]})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1lapcs5-container\",\"data-code-component-plugin-id\":\"84d4c1\",isAuthoredByUser:true,layoutDependency:layoutDependency,layoutId:\"gL77KqLxQ-container\",nodeId:\"gL77KqLxQ\",rendersWithMotion:true,scopeId:\"xN1chRYFL\",children:/*#__PURE__*/_jsx(TetrisGame,{font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:700,letterSpacing:\"0em\",lineHeight:\"1em\"},hapticEnabled:true,height:\"100%\",id:\"gL77KqLxQ\",keyboardControlsEnabled:true,layoutId:\"gL77KqLxQ\",scoreFont:{fontFamily:'\"MS Sans Serif Regular\", \"MS Sans Serif Regular Placeholder\", serif',fontSize:\"12px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0em\",lineHeight:\"1.2em\"},showTouchControls:true,soundEnabled:true,style:{height:\"100%\",width:\"100%\"},touchButtonPaddingBottom:24,touchButtonPaddingTop:24,touchSensitivity:150,width:\"100%\",...addPropertyOverrides({BmNxLwRMc:{keyboardControlsEnabled:false},cdhN9iZgs:{keyboardControlsEnabled:false}},baseVariant,gestureVariant)})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-ssms5.framer-1x3x66q, .framer-ssms5 .framer-1x3x66q { display: block; }\",\".framer-ssms5.framer-bot5d5 { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: min-content; }\",\".framer-ssms5 .framer-k2hp3m { align-content: center; align-items: center; align-self: stretch; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 6px; position: relative; width: auto; }\",\".framer-ssms5 .framer-1j4752k { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: visible; padding: 3px 2px 3px 3px; position: relative; width: 1px; }\",\".framer-ssms5 .framer-1m4axi9 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 3px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-ssms5 .framer-ux770y { aspect-ratio: 1 / 1; flex: none; gap: 0px; height: var(--framer-aspect-ratio-supported, 16px); overflow: visible; position: relative; width: 16px; }\",\".framer-ssms5 .framer-hs78c6 { bottom: 0px; flex: none; gap: 0px; left: 0px; overflow: visible; position: absolute; right: 0px; top: 0px; }\",\".framer-ssms5 .framer-191m5r1 { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; }\",\".framer-ssms5 .framer-1vb8sak { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-ssms5 .framer-1u95ide-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-ssms5 .framer-1lapcs5-container { aspect-ratio: 0.5747800586510264 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 682px); position: relative; width: 392px; }\",\".framer-ssms5.framer-v-nn4ts9 .framer-1lapcs5-container { height: var(--framer-aspect-ratio-supported, 650px); width: 374px; }\",\".framer-ssms5.framer-v-18hzmid .framer-1lapcs5-container { height: var(--framer-aspect-ratio-supported, 595px); width: 342px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 724\n * @framerIntrinsicWidth 392\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"BmNxLwRMc\":{\"layout\":[\"auto\",\"auto\"]},\"cdhN9iZgs\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"UpYqYOcCw\":\"closeOverlay\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerxN1chRYFL=withCSS(Component,css,\"framer-ssms5\");export default FramerxN1chRYFL;FramerxN1chRYFL.displayName=\"Tetris\";FramerxN1chRYFL.defaultProps={height:724,width:392};addPropertyControls(FramerxN1chRYFL,{variant:{options:[\"kX3KfIy0l\",\"BmNxLwRMc\",\"cdhN9iZgs\"],optionTitles:[\"Desktop\",\"Tablet\",\"Mobile\"],title:\"Variant\",type:ControlType.Enum},UpYqYOcCw:{title:\"Close Overlay\",type:ControlType.EventHandler}});addFonts(FramerxN1chRYFL,[{explicitInter:true,fonts:[{cssFamilyName:\"MS Sans Serif Bold Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"MS Sans Serif Bold\",url:\"https://framerusercontent.com/assets/2EpeiVr9SXfW2uO6Op8a0vcVJDo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/syRNPWzAMIrcJ3wIlPIP43KjQs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{cssFamilyName:\"MS Sans Serif Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"MS Sans Serif\",url:\"https://framerusercontent.com/assets/cuFqT0zd4yPJLYfeBhPc510vSc.woff2\",weight:\"400\"}]},...ControlsFonts,...TetrisGameFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerxN1chRYFL\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"BmNxLwRMc\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"cdhN9iZgs\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicWidth\":\"392\",\"framerIntrinsicHeight\":\"724\",\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"UpYqYOcCw\\\":\\\"closeOverlay\\\"}\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (569b461)\nconst valuesByLocaleId={HyIjoKWDY:{v0:\"Dee-Space_03\",v1:\"Made with Framer\"}};function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}export default function metadata(params,activeLocale){return{description:getLocalizedValue(\"v1\",activeLocale)??\"A web, product designer & framer developer based in Accra, Ghana. I’ve worked in all kinds of industries, from food, entertainment, energy, web3 & more.\",favicon:\"https://framerusercontent.com/assets/CDfXuP7zvqfcfhSg3eXmJuZMXM.png\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/6jVipcPVEU6rjOjY6zrqw3F17kw.png\",title:getLocalizedValue(\"v0\",activeLocale)??\"Dee-Space_03\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}