takeat-design-system-ui-kit 1.1.12 → 1.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/components/Badge/index.d.cts +1 -1
  2. package/dist/components/Badge/index.d.ts +1 -1
  3. package/dist/components/Button/index.d.cts +1 -1
  4. package/dist/components/Button/index.d.ts +1 -1
  5. package/dist/components/Calendar/index.cjs.map +1 -1
  6. package/dist/components/Calendar/index.css +3 -2
  7. package/dist/components/Calendar/index.css.map +1 -1
  8. package/dist/components/Calendar/index.js.map +1 -1
  9. package/dist/components/CalendarDateFuture/index.cjs.map +1 -1
  10. package/dist/components/CalendarDateFuture/index.css +3 -2
  11. package/dist/components/CalendarDateFuture/index.css.map +1 -1
  12. package/dist/components/CalendarDateFuture/index.js.map +1 -1
  13. package/dist/components/Checkbox/index.cjs.map +1 -1
  14. package/dist/components/Checkbox/index.css +3 -2
  15. package/dist/components/Checkbox/index.css.map +1 -1
  16. package/dist/components/Checkbox/index.js.map +1 -1
  17. package/dist/components/CollapsableMenu/index.cjs.map +1 -1
  18. package/dist/components/CollapsableMenu/index.css +4 -3
  19. package/dist/components/CollapsableMenu/index.css.map +1 -1
  20. package/dist/components/CollapsableMenu/index.js.map +1 -1
  21. package/dist/components/ErrorBoundary/index.d.cts +1 -1
  22. package/dist/components/ErrorBoundary/index.d.ts +1 -1
  23. package/dist/components/HighlightIcon/index.d.cts +1 -1
  24. package/dist/components/HighlightIcon/index.d.ts +1 -1
  25. package/dist/components/Image/index.cjs.map +1 -1
  26. package/dist/components/Image/index.css +4 -3
  27. package/dist/components/Image/index.css.map +1 -1
  28. package/dist/components/Image/index.js.map +1 -1
  29. package/dist/components/Switch/index.cjs.map +1 -1
  30. package/dist/components/Switch/index.css +2 -2
  31. package/dist/components/Switch/index.css.map +1 -1
  32. package/dist/components/Switch/index.js.map +1 -1
  33. package/dist/components/TakeatLogo/index.d.cts +1 -1
  34. package/dist/components/TakeatLogo/index.d.ts +1 -1
  35. package/dist/{index-OXa02Q_c.d.cts → index-BNAaK0Se.d.cts} +1 -1
  36. package/dist/{index-OXa02Q_c.d.ts → index-BNAaK0Se.d.ts} +1 -1
  37. package/dist/{index-CtCRsHIv.d.cts → index-BnVzp7Lc.d.cts} +1 -1
  38. package/dist/{index-CtCRsHIv.d.ts → index-BnVzp7Lc.d.ts} +1 -1
  39. package/dist/{index-CpMNKHas.d.cts → index-CPcPCVHx.d.cts} +1 -1
  40. package/dist/{index-CpMNKHas.d.ts → index-CPcPCVHx.d.ts} +1 -1
  41. package/dist/{index-C9UYe0UW.d.cts → index-MnS1OFJm.d.cts} +1 -1
  42. package/dist/{index-C9UYe0UW.d.ts → index-MnS1OFJm.d.ts} +1 -1
  43. package/dist/index.cjs.map +1 -1
  44. package/dist/index.css +9 -7
  45. package/dist/index.css.map +1 -1
  46. package/dist/index.d.cts +4 -4
  47. package/dist/index.d.ts +4 -4
  48. package/dist/index.js.map +1 -1
  49. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/CollapsableMenu/index.tsx","../../../src/utils/functions.ts","../../../src/components/ScrollArea/index.tsx","../../../src/components/ScrollArea/styles.css.ts","../../../src/components/CollapsableMenu/hooks/useMenuState.ts","../../../src/components/icons/IconChevronDown.tsx","../../../src/components/icons/IconClose.tsx","../../../src/components/icons/IconCloseMenu.tsx","../../../src/components/icons/IconExclamation.tsx","../../../src/components/icons/IconEye.tsx","../../../src/components/icons/IconEyeSlash.tsx","../../../src/components/icons/IconMenu.tsx","../../../src/components/icons/IconSearch.tsx","../../../src/theme/themeValues.ts","../../../src/utils/consts.tsx","../../../src/components/CollapsableMenu/menuContext.tsx","../../../src/components/CollapsableMenu/styles.css.ts","../../../src/components/CollapsableMenu/MenuSubitem/index.tsx","../../../src/components/CollapsableMenu/MenuContent/index.tsx","../../../src/components/CollapsableMenu/MenuHeader/index.tsx","../../../src/components/Image/index.tsx","../../../src/components/Image/styles.css.ts","../../../src/components/CollapsableMenu/MenuItem/index.tsx","../../../src/components/CollapsableMenu/MenuSearch/index.tsx","../../../src/components/Input/index.tsx","../../../src/theme/theme.css.ts","../../../src/components/FieldInfo/FieldMessage.tsx","../../../src/components/FieldInfo/styles.css.ts","../../../src/components/Spinner/index.tsx","../../../src/components/Spinner/styles.css.ts","../../../src/components/Input/styles.css.ts"],"sourcesContent":["import { NavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport React, {\n forwardRef,\n type HTMLAttributes,\n useCallback,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport {\n filterItems,\n filterSidebarItems,\n formatSearchItems,\n} from \"../../utils/functions\";\nimport { ScrollArea } from \"../ScrollArea\";\nimport { useMenuState } from \"./hooks/useMenuState\";\nimport { MenuContent } from \"./MenuContent\";\nimport { MenuHeader } from \"./MenuHeader\";\nimport { MenuItem } from \"./MenuItem\";\nimport { MenuSearch } from \"./MenuSearch\";\nimport { MenuProvider } from \"./menuContext\";\nimport {\n menuBodyClass,\n menuContainerClass,\n menuContainerOpenClass,\n menuFooterClass,\n menuPopupWrapperClass,\n menuViewportClass,\n} from \"./styles.css\";\nimport type { MenuItemProps, MenuObjectProps } from \"./types\";\n\ninterface BodyNavigationMenuProps {\n bodyItems: MenuItemProps[];\n renderMenuItem: (item: MenuItemProps, index: number) => React.ReactNode;\n searchInput: string;\n onSearchChange: (value: string) => void;\n onActiveSearchChange: (value: string) => void;\n searchItems: MenuItemProps[];\n searchPlaceholder?: string;\n searchEmptyMessage?: string;\n}\n\nconst BodyNavigationMenu: React.FC<BodyNavigationMenuProps> = ({\n bodyItems,\n renderMenuItem,\n searchInput,\n onSearchChange,\n onActiveSearchChange,\n searchItems,\n searchPlaceholder,\n searchEmptyMessage,\n}) => {\n const [navValue, setNavValue] = useState(\"\");\n const searchInputFocusedRef = useRef(false);\n\n const handleInputFocus = useCallback(() => {\n searchInputFocusedRef.current = true;\n setNavValue(\"search\");\n }, []);\n\n const handleInputBlur = useCallback((popupHovered: boolean) => {\n searchInputFocusedRef.current = false;\n if (!popupHovered) setNavValue(\"\");\n }, []);\n\n return (\n <NavigationMenu.Root\n delay={0}\n closeDelay={100}\n orientation=\"vertical\"\n value={navValue}\n onValueChange={(val) => {\n if (!val && searchInputFocusedRef.current) return;\n setNavValue(val);\n }}\n >\n <NavigationMenu.List>\n <MenuSearch\n sideBarOpen={false}\n searchInput={searchInput}\n onSearchChange={onSearchChange}\n onActiveSearchChange={onActiveSearchChange}\n searchItems={searchItems}\n searchPlaceholder={searchPlaceholder}\n searchEmptyMessage={searchEmptyMessage}\n onInputFocus={handleInputFocus}\n onInputBlur={handleInputBlur}\n />\n {bodyItems.map(renderMenuItem)}\n </NavigationMenu.List>\n <NavigationMenu.Portal>\n <NavigationMenu.Positioner\n sideOffset={4}\n side=\"right\"\n align=\"start\"\n collisionAvoidance={{ align: \"none\" }}\n style={{ zIndex: 10 }}\n >\n <NavigationMenu.Popup className={menuPopupWrapperClass}>\n <NavigationMenu.Viewport className={menuViewportClass} />\n </NavigationMenu.Popup>\n </NavigationMenu.Positioner>\n </NavigationMenu.Portal>\n </NavigationMenu.Root>\n );\n};\n\nexport interface CollapsableMenuComponentProps\n extends HTMLAttributes<HTMLDivElement> {\n menuObject: MenuObjectProps;\n defaultSideBarOpen?: boolean;\n onSideBarToggle?: (e: boolean) => void;\n subitemComponent?: React.ElementType;\n searchPlaceholder?: string;\n searchEmptyMessage?: string;\n}\n\nexport const CollapsableMenu = forwardRef<\n HTMLDivElement,\n CollapsableMenuComponentProps\n>(\n (\n {\n menuObject,\n defaultSideBarOpen,\n onSideBarToggle,\n subitemComponent = \"a\",\n searchPlaceholder = \"Buscar\",\n searchEmptyMessage = \"Nenhum resultado encontrado\",\n ...props\n },\n ref,\n ) => {\n const { state, actions } = useMenuState(\n defaultSideBarOpen,\n onSideBarToggle,\n );\n\n const itemsFormattedToSearch = useMemo(\n () => formatSearchItems(menuObject.categories),\n [menuObject.categories],\n );\n\n const searchItemsFiltered = useMemo(\n () =>\n itemsFormattedToSearch.filter((item) =>\n filterItems(item, state.searchInput),\n ),\n [itemsFormattedToSearch, state.searchInput],\n );\n\n const { footerItems, bodyItems } = useMemo(() => {\n const filtered = filterSidebarItems(menuObject.categories);\n return {\n footerItems: filtered.filter((item) => item.barPosition === \"footer\"),\n bodyItems: filtered.filter((item) => !item.barPosition),\n };\n }, [menuObject.categories]);\n\n const renderMenuItem = useCallback(\n (item: MenuItemProps, index: number) => (\n <MenuItem\n key={`menu-item${item.path || \"\"}-${index}`}\n item={item}\n sideBarOpen={state.sideBarOpen}\n categoryOpen={state.categoryOpen}\n toggleCategoryOpen={(category) =>\n actions.setCategoryOpen(\n state.categoryOpen === category ? null : category,\n )\n }\n />\n ),\n [state.sideBarOpen, state.categoryOpen, actions],\n );\n\n return (\n <MenuProvider component={subitemComponent}>\n <div\n ref={ref}\n className={`${menuContainerClass} ${\n state.sideBarOpen ? menuContainerOpenClass : \"\"\n }`}\n role=\"navigation\"\n aria-label=\"Menu principal\"\n {...props}\n >\n <MenuHeader\n sideBarOpen={state.sideBarOpen}\n profile={menuObject.profile}\n onToggleSidebar={actions.toggleSidebar}\n />\n\n <div className={menuBodyClass}>\n {state.sideBarOpen ? (\n <ScrollArea maxHeight=\"calc(100vh - 48px)\">\n <MenuSearch\n sideBarOpen={state.sideBarOpen}\n searchInput={state.searchInput}\n onSearchChange={actions.setSearchInput}\n onActiveSearchChange={actions.setActiveSearch}\n searchItems={itemsFormattedToSearch}\n searchPlaceholder={searchPlaceholder}\n searchEmptyMessage={searchEmptyMessage}\n />\n\n <MenuContent\n activeSearch={state.activeSearch}\n sideBarOpen={state.sideBarOpen}\n searchItemsFiltered={searchItemsFiltered}\n bodyItems={bodyItems}\n onSearchChange={actions.setActiveSearch}\n renderMenuItem={renderMenuItem}\n />\n </ScrollArea>\n ) : (\n <BodyNavigationMenu\n bodyItems={bodyItems}\n renderMenuItem={renderMenuItem}\n searchInput={state.searchInput}\n onSearchChange={actions.setSearchInput}\n onActiveSearchChange={actions.setActiveSearch}\n searchItems={itemsFormattedToSearch}\n searchPlaceholder={searchPlaceholder}\n searchEmptyMessage={searchEmptyMessage}\n />\n )}\n </div>\n\n <div className={menuFooterClass}>\n {state.sideBarOpen ? (\n footerItems.map(renderMenuItem)\n ) : (\n <NavigationMenu.Root\n delay={100}\n closeDelay={150}\n orientation=\"vertical\"\n >\n <NavigationMenu.List>\n {footerItems.map(renderMenuItem)}\n </NavigationMenu.List>\n <NavigationMenu.Portal>\n <NavigationMenu.Positioner\n sideOffset={4}\n side=\"right\"\n align=\"start\"\n collisionAvoidance={{ align: \"none\" }}\n >\n <NavigationMenu.Popup className={menuPopupWrapperClass}>\n <NavigationMenu.Viewport className={menuViewportClass} />\n </NavigationMenu.Popup>\n </NavigationMenu.Positioner>\n </NavigationMenu.Portal>\n </NavigationMenu.Root>\n )}\n </div>\n </div>\n </MenuProvider>\n );\n },\n);\n\nCollapsableMenu.displayName = \"CollapsableMenu\";\n","import axios from \"axios\";\nimport {\n addDays,\n getDaysInMonth,\n isAfter,\n isBefore,\n set,\n subDays,\n} from \"date-fns\";\nimport type { MenuItemProps } from \"../components/CollapsableMenu/types\";\n\n// Função para calcular o MDC (Máximo Divisor Comum) usando o Algoritmo de Euclides\nexport const mdc = (a: number, b: number) => {\n while (b !== 0) {\n [a, b] = [b, a % b];\n }\n return a;\n};\n\n// Função para calcular o MMC (Mínimo Múltiplo Comum) de dois números\nexport const mmc = (a: number, b: number) => {\n return Math.abs(a * b) / mdc(a, b);\n};\n\n// Função para calcular o MMC de um array de números\nexport const mmcArray = (numbers: number[]) => {\n return numbers.reduce((acc, num) => mmc(acc, num), 1);\n};\n\ninterface PriceOptions {\n hasPrefix?: boolean;\n minimumFractionDigits?: number;\n maximumFractionDigits?: number;\n}\n// Função para formatar preço\nexport const formatPrice = (price: number | string, options?: PriceOptions) => {\n if (price === undefined || price === null) return \"\";\n\n const hasDecimal =\n price.toString().includes(\".\") || price.toString().includes(\",\");\n\n if (typeof price === \"string\") {\n price = price.replace(/\\./g, \"\").replace(\",\", \"\");\n }\n\n const parsedPrice =\n typeof price === \"string\"\n ? parseFloat(price) / (hasDecimal ? 100 : 1)\n : price;\n\n const amount = new Intl.NumberFormat(\"pt-BR\", {\n style: \"currency\",\n currency: \"BRL\",\n ...options,\n }).format(parsedPrice);\n\n return options?.hasPrefix === false ? `${amount}`.substring(3) : `${amount}`;\n};\n\n// Função para mascarar uma string\nexport const maskString = (string: string, percent = 50, char = \"*\") => {\n const length = string.length;\n const charAmount = length * (percent / 100);\n const firstAmount = Math.floor((length - charAmount) / 2);\n\n return (\n string.substring(0, firstAmount) +\n char.repeat(charAmount) +\n string.substring(firstAmount + charAmount)\n );\n};\n\n// Função para limpar telefone\nexport const clearPhone = (phone: string) => {\n return phone.replace(/\\D/g, \"\");\n};\n\n// Função para validar um CPF\nexport const validateCPF = (cpf: string) => {\n if (cpf.length !== 11) {\n return false;\n }\n\n if (cpf.match(/(\\d)\\1{10}/)) {\n return false;\n }\n\n const numbers = cpf.substring(0, 9);\n const digits = cpf.substring(9);\n\n const sum = numbers\n .split(\"\")\n .map((number, index) => parseInt(number, 10) * (10 - index))\n .reduce((acc, curr) => acc + curr);\n\n const firstDigit = (sum * 10) % 11;\n\n if (firstDigit.toString() !== digits.charAt(0)) {\n return false;\n }\n\n const sum2 = numbers\n .split(\"\")\n .map((number, index) => parseInt(number, 10) * (11 - index))\n .reduce((acc, curr) => acc + curr);\n\n const secondDigit = (sum2 * 10) % 11;\n\n return secondDigit.toString() === digits.charAt(1);\n};\n\n// Função para buscar endereço pelo cep\nexport const getAddressByCep = async (cep: string) => {\n const formattedCep = cep.replace(/(\\.|-)/gi, \"\");\n try {\n const { data } = await axios.get(\n `https://viacep.com.br/ws/${formattedCep}/json/`,\n );\n\n return { ...data, provider: \"viacep\" };\n } catch (_err) {\n const { data } = await axios.get(\n `https://brasilapi.com.br/api/cep/v2/${cep}`,\n );\n\n return {\n cep: data.cep,\n logradouro: data.street,\n bairro: data.neighborhood,\n localidade: data.city,\n uf: data.state,\n provider: \"brasilapi\",\n brasilapi_service: data.service,\n };\n }\n};\n\n// Função para converter HEX para RGB\nexport const hexToRgb = (hex: string): [number, number, number] => {\n // Remove o '#' se presente\n hex = hex.replace(/^#/, \"\");\n\n // Converter HEX para os componentes RGB\n const r = parseInt(hex.substring(0, 2), 16);\n const g = parseInt(hex.substring(2, 4), 16);\n const b = parseInt(hex.substring(4, 6), 16);\n return [r, g, b];\n};\n\n// Função para converter RGB para HSB\nexport const rgbToHsb = (r: number, g: number, b: number) => {\n r /= 255;\n g /= 255;\n b /= 255;\n const v = Math.max(r, g, b),\n n = v - Math.min(r, g, b);\n const h =\n n === 0\n ? 0\n : n && v === r\n ? (g - b) / n\n : v === g\n ? 2 + (b - r) / n\n : 4 + (r - g) / n;\n return [60 * (h < 0 ? h + 6 : h), v && (n / v) * 100, v * 100];\n};\n\n// Função para converter HEX para HSB\nexport const hexToHsb = (hex: string): [number, number, number] => {\n // Remove o '#' se presente\n hex = hex.replace(/^#/, \"\");\n\n // Converter HEX para RGB\n const r = parseInt(hex.substring(0, 2), 16) / 255;\n const g = parseInt(hex.substring(2, 4), 16) / 255;\n const b = parseInt(hex.substring(4, 6), 16) / 255;\n\n // Calcular o máximo e mínimo entre R, G, B\n const max = Math.max(r, g, b),\n min = Math.min(r, g, b);\n const delta = max - min;\n\n // Calcular brilho (B)\n const bValue = max * 100;\n\n // Calcular saturação (S)\n const sValue = max === 0 ? 0 : (delta / max) * 100;\n\n // Calcular matiz (H)\n let hValue = 0;\n if (delta !== 0) {\n if (max === r) hValue = (g - b) / delta + (g < b ? 6 : 0);\n else if (max === g) hValue = (b - r) / delta + 2;\n else hValue = (r - g) / delta + 4;\n\n hValue = Math.round(hValue * 60);\n }\n\n return [hValue, Math.round(sValue), Math.round(bValue)];\n};\n\nexport const rgbToHex = (number: number) =>\n number.toString(16).padStart(2, \"0\");\n\n// Função para converter HSB para HEX\nconst hsbToHex = (h: number, s: number, b: number): string => {\n s /= 100;\n b /= 100;\n\n const c = b * s;\n const x = c * (1 - Math.abs(((h / 60) % 2) - 1));\n const m = b - c;\n let r = 0,\n g = 0,\n bl = 0;\n\n if (0 <= h && h < 60) {\n r = c;\n g = x;\n bl = 0;\n } else if (60 <= h && h < 120) {\n r = x;\n g = c;\n bl = 0;\n } else if (120 <= h && h < 180) {\n r = 0;\n g = c;\n bl = x;\n } else if (180 <= h && h < 240) {\n r = 0;\n g = x;\n bl = c;\n } else if (240 <= h && h < 300) {\n r = x;\n g = 0;\n bl = c;\n } else if (300 <= h && h < 360) {\n r = c;\n g = 0;\n bl = x;\n }\n\n r = Math.round((r + m) * 255);\n g = Math.round((g + m) * 255);\n bl = Math.round((bl + m) * 255);\n\n return `#${rgbToHex(r)}${rgbToHex(g)}${rgbToHex(bl)}`;\n};\n\ninterface ColorVariants {\n lightest: string;\n lighter: string;\n light: string;\n default: string;\n dark: string;\n darker: string;\n}\n\n// Cache for color variants with LRU eviction (max 50 entries)\nconst colorVariantsCache = new Map<string, ColorVariants>();\nconst MAX_CACHE_SIZE = 50;\n\nconst cacheColorVariants = (\n hex: string,\n variants: ColorVariants,\n): ColorVariants => {\n if (colorVariantsCache.size >= MAX_CACHE_SIZE) {\n // Remove oldest entry (first inserted)\n const firstKey = colorVariantsCache.keys().next().value;\n colorVariantsCache.delete(firstKey);\n }\n colorVariantsCache.set(hex, variants);\n return variants;\n};\n\n// Função para gerar variações de cor\nexport const generateColorVariants = (hex: string): ColorVariants => {\n // Check cache first\n const cached = colorVariantsCache.get(hex);\n if (cached) {\n return cached;\n }\n\n // Converter de HEX para HSB\n const [h, s, b] = hexToHsb(hex);\n\n // Gerar cor mais clara: -20 de S, +4 de L\n const lightS = Math.max(s - 20, 0); // Garantir que S não seja negativo\n const lightB = Math.min(b + 4, 100); // Garantir que L não passe de 100\n const lightColor = hsbToHex(h, lightS, lightB);\n\n // Gerar cor ainda mais clara: -40 de S, +8 de L\n const lighterS = Math.max(s - 40, 0); // Garantir que S não seja negativo\n const lighterB = Math.min(b + 8, 100); // Garantir que L não passe de 100\n const lighterColor = hsbToHex(h, lighterS, lighterB);\n\n // Gerar cor ainda mais clara: -60 de S, +12 de L\n const lightestS = Math.max(s - 60, 0); // Garantir que S não seja negativo\n const lightestB = Math.min(b + 12, 100); // Garantir que L não passe de 100\n const lightestColor = hsbToHex(h, lightestS, lightestB);\n\n // Gerar cor mais escura: +4 de S, -20 de L\n const darkS = Math.min(s + 4, 100); // Garantir que S não passe de 100\n const darkB = Math.max(b - 20, 0); // Garantir que L não seja negativo\n const darkColor = hsbToHex(h, darkS, darkB);\n\n // Gerar cor ainda mais escura: +8 de S, -40 de L\n const darkerS = Math.min(s + 8, 100); // Garantir que S não passe de 100\n const darkerB = Math.max(b - 40, 0); // Garantir que L não seja negativo\n const darkerColor = hsbToHex(h, darkerS, darkerB);\n\n const variants: ColorVariants = {\n lightest: lightestColor,\n lighter: lighterColor,\n light: lightColor,\n default: hex,\n dark: darkColor,\n darker: darkerColor,\n };\n\n return cacheColorVariants(hex, variants);\n};\n\nexport const getBrighterColor = (hex: string, percentage: number) => {\n let [r, g, b] = hexToRgb(hex);\n\n const lightenChannel = (channel: number) =>\n Math.round(channel + (255 - channel) * (percentage / 100));\n\n r = lightenChannel(r);\n g = lightenChannel(g);\n b = lightenChannel(b);\n\n return `#${rgbToHex(r)}${rgbToHex(g)}${rgbToHex(b)}`;\n};\n\n// Função para preencher um array de datas\nexport const fillDaysArray = (arr: Array<Date>) => {\n const firstDay = arr[0];\n for (let i = 1; i <= firstDay.getDay(); i++) {\n const date = subDays(firstDay, i);\n arr.unshift(date);\n }\n\n const multiplier = Math.ceil(arr.length / 7);\n const left = 7 * multiplier - arr.length;\n const lastDay = arr[arr.length - 1];\n\n for (let i = 1; i <= left; i++) {\n const date = addDays(lastDay, i);\n arr.push(date);\n }\n};\n\n// Função para aceitar apenas horas validas numa string e ajustar conforme necessário\nexport const clampTimeString = (\n timeStr: string,\n currentDate: Date,\n type: \"start\" | \"end\",\n compareDate?: Date,\n) => {\n const [hourStr, minuteStr] = timeStr.split(\":\");\n\n let hours = parseInt(hourStr, 10);\n let minutes = parseInt(minuteStr, 10);\n\n // Ajuste para valores válidos de horas e minutos\n hours = Math.max(0, Math.min(23, hours));\n minutes = Math.max(0, Math.min(59, minutes));\n\n // Define a data ajustada com partes preservadas de currentDate\n const adjustedDate = set(currentDate, { hours, minutes });\n\n // Verifica e aplica restrições\n if (compareDate && type === \"start\" && isAfter(adjustedDate, compareDate)) {\n return compareDate;\n } else if (\n compareDate &&\n type === \"end\" &&\n isBefore(adjustedDate, compareDate)\n ) {\n return compareDate;\n }\n\n return adjustedDate;\n};\n\n// Função para aceitar apenas datas validas numa string e ajustar conforme necessário\nexport const clampDateString = (\n dateStr: string,\n currentDate: Date,\n type: \"start\" | \"end\",\n compareDate?: Date,\n) => {\n const [dayStr, monthStr, yearStr] = dateStr.split(\"/\");\n\n let day = parseInt(dayStr, 10);\n let month = parseInt(monthStr, 10) - 1;\n const year = parseInt(yearStr, 10);\n\n // Ajuste do mês e do dia\n month = Math.max(0, Math.min(11, month));\n const maxDay = getDaysInMonth(new Date(year, month));\n day = Math.max(1, Math.min(maxDay, day));\n\n // Define a data ajustada com partes preservadas de currentDate\n const adjustedDate = set(currentDate, { year, month, date: day });\n\n if (compareDate && type === \"start\" && isAfter(adjustedDate, compareDate)) {\n return compareDate;\n } else if (\n compareDate &&\n type === \"end\" &&\n isBefore(adjustedDate, compareDate)\n ) {\n return compareDate;\n }\n\n return adjustedDate;\n};\n\nexport function currencyFormatter(\n value: number,\n hasPrefix?: boolean,\n\n minimumFractionDigits = 2,\n max?: number,\n min?: number,\n) {\n if (value === null || value === undefined || Number.isNaN(value)) return \"\";\n\n if (max && value > max * 100) {\n value = max * 100;\n }\n\n if (min && value < min * 100) {\n value = min * 100;\n }\n\n const amount = new Intl.NumberFormat(\"pt-BR\", {\n style: \"currency\",\n currency: \"BRL\",\n minimumFractionDigits,\n }).format(value / 10 ** minimumFractionDigits);\n\n return hasPrefix ? `${amount}` : `${amount}`.substring(3);\n}\n\ntype Complement = {\n price: string;\n amount: number;\n};\n\ntype ComplementCategory = {\n additional: boolean;\n more_expensive_only: boolean;\n use_average: boolean;\n complements: Complement[];\n};\n\nexport type Product = {\n price: string;\n amount: number;\n weight?: number;\n complement_categories?: ComplementCategory[];\n};\n\nexport const getComplementsPrice = (product: Product) => {\n const basePrice =\n parseFloat(product.price) * product.amount * (product.weight || 1);\n\n const complementsPrice =\n product.complement_categories?.reduce((catTotal, cat) => {\n if (!cat.additional) return catTotal;\n\n if (cat.more_expensive_only) {\n const highestComplement = cat.complements.reduce(\n (highest, c) => {\n return parseFloat(c.price) > parseFloat(highest.price)\n ? c\n : highest;\n },\n { price: \"0\", amount: 0 },\n );\n\n return (\n catTotal +\n parseFloat(highestComplement.price) *\n (highestComplement.amount >= 1 ? 1 : 0) *\n product.amount\n );\n }\n\n if (cat.use_average) {\n const totalValue = cat.complements.reduce(\n (sum, c) => sum + parseFloat(c.price) * c.amount * product.amount,\n 0,\n );\n const totalAmount = cat.complements.reduce(\n (sum, c) => sum + c.amount * product.amount,\n 0,\n );\n\n return totalAmount > 0 ? catTotal + totalValue / totalAmount : catTotal;\n }\n\n const complementsValue = cat.complements.reduce(\n (sum, c) => sum + parseFloat(c.price) * c.amount * product.amount,\n 0,\n );\n\n return catTotal + complementsValue;\n }, 0) ?? 0;\n\n return basePrice + complementsPrice;\n};\n\nexport const formatSearchItems = (\n menuItems: MenuItemProps[],\n parentPath = \"\",\n parentTexts: string[] = [],\n): MenuItemProps[] => {\n return menuItems\n .filter((item) => item.condition !== false)\n .flatMap((item) => {\n const currentPath = parentPath + (item.path || \"\");\n const currentTexts = [...parentTexts, item.text];\n\n if (item.subitems && item.subitems.length > 0) {\n return formatSearchItems(item.subitems, currentPath, currentTexts);\n }\n\n return [\n {\n ...item,\n path: currentPath,\n searchText: currentTexts.join(\"/\"),\n key: `${currentPath}|${currentTexts.join(\"/\")}`,\n },\n ];\n });\n};\n\nexport const filterItems = (item: MenuItemProps, search: string) => {\n return item.searchText?.toLowerCase().includes(search.toLowerCase());\n};\n\nexport const filterSidebarItems = (items: MenuItemProps[]) => {\n return items\n .map((item) => {\n if (item.subitems) {\n return {\n ...item,\n subitems: item.subitems.filter(\n (subitem) =>\n (subitem.displayType === \"sidebar\" || !subitem.displayType) &&\n subitem.condition !== false,\n ),\n };\n }\n return item;\n })\n .filter(\n (item) =>\n (item.displayType === \"sidebar\" || !item.displayType) &&\n item.condition !== false,\n );\n};\n","import { ScrollArea as BaseScrollArea } from \"@base-ui/react/scroll-area\";\nimport type React from \"react\";\nimport { type CSSProperties, forwardRef, useCallback, useRef } from \"react\";\nimport {\n scrollAreaRootClass,\n scrollAreaScrollbarClass,\n scrollAreaThumbClass,\n scrollAreaViewportClass,\n scrollAreaViewportDraggableClass,\n} from \"./styles.css\";\n\ninterface ScrollAreaProps {\n children: React.ReactNode;\n className?: string;\n style?: CSSProperties;\n maxHeight?: string | number;\n draggable?: boolean;\n}\n\nexport const ScrollArea = forwardRef<HTMLDivElement, ScrollAreaProps>(\n function ScrollArea(\n { children, className, style, maxHeight, draggable = false },\n ref,\n ) {\n const viewportRef = useRef<HTMLDivElement | null>(null);\n const dragState = useRef({\n active: false,\n startX: 0,\n startY: 0,\n scrollLeft: 0,\n scrollTop: 0,\n moved: false,\n });\n\n const onPointerDown = useCallback(\n (e: React.PointerEvent<HTMLDivElement>) => {\n if (!draggable) return;\n if (e.pointerType === \"touch\") return;\n const el = viewportRef.current;\n if (!el) return;\n dragState.current = {\n active: true,\n startX: e.clientX,\n startY: e.clientY,\n scrollLeft: el.scrollLeft,\n scrollTop: el.scrollTop,\n moved: false,\n };\n el.setPointerCapture(e.pointerId);\n },\n [draggable],\n );\n\n const onPointerMove = useCallback(\n (e: React.PointerEvent<HTMLDivElement>) => {\n const s = dragState.current;\n if (!s.active) return;\n const el = viewportRef.current;\n if (!el) return;\n const dx = e.clientX - s.startX;\n const dy = e.clientY - s.startY;\n if (!s.moved && Math.hypot(dx, dy) > 3) s.moved = true;\n el.scrollLeft = s.scrollLeft - dx;\n el.scrollTop = s.scrollTop - dy;\n },\n [],\n );\n\n const onPointerUp = useCallback((e: React.PointerEvent<HTMLDivElement>) => {\n const s = dragState.current;\n if (!s.active) return;\n s.active = false;\n viewportRef.current?.releasePointerCapture(e.pointerId);\n if (s.moved) {\n // Swallow the click that follows so drag doesn't trigger buttons/links underneath\n const stopClick = (ev: MouseEvent) => {\n ev.stopPropagation();\n ev.preventDefault();\n };\n const el = viewportRef.current;\n el?.addEventListener(\"click\", stopClick, { capture: true, once: true });\n setTimeout(() => el?.removeEventListener(\"click\", stopClick, true), 0);\n }\n }, []);\n\n return (\n <BaseScrollArea.Root\n ref={ref}\n className={`${scrollAreaRootClass}${className ? ` ${className}` : \"\"}`}\n style={{\n maxHeight:\n typeof maxHeight === \"number\" ? `${maxHeight}px` : maxHeight,\n ...style,\n }}\n >\n <BaseScrollArea.Viewport\n ref={viewportRef}\n className={`${scrollAreaViewportClass}${draggable ? ` ${scrollAreaViewportDraggableClass}` : \"\"}`}\n onPointerDown={draggable ? onPointerDown : undefined}\n onPointerMove={draggable ? onPointerMove : undefined}\n onPointerUp={draggable ? onPointerUp : undefined}\n onPointerCancel={draggable ? onPointerUp : undefined}\n >\n {children}\n </BaseScrollArea.Viewport>\n <BaseScrollArea.Scrollbar\n orientation=\"vertical\"\n className={scrollAreaScrollbarClass}\n >\n <BaseScrollArea.Thumb className={scrollAreaThumbClass} />\n </BaseScrollArea.Scrollbar>\n <BaseScrollArea.Scrollbar\n orientation=\"horizontal\"\n className={scrollAreaScrollbarClass}\n >\n <BaseScrollArea.Thumb className={scrollAreaThumbClass} />\n </BaseScrollArea.Scrollbar>\n </BaseScrollArea.Root>\n );\n },\n);\n\nScrollArea.displayName = \"ScrollArea\";\n","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nimport 'src/components/ScrollArea/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA6VUXWvbMBR9z68QhdIEpuBk6cdUBhvbL9jGXsYIsnVti8q65kpOmo389yHLaut1WRr6YnQu8jnn6h5p7vzOgFu7gtCYjwTyC6L_ZKRz6zW25mZznbHfE8ZadNprtIIRGOn1Bm4njOEGqDS4FazWSoENta1WvhZskWXnAdagq9onvJ_Mnyl-17Btkcaqi171v1yP8nwnmOw8jmr3T01FtVwSHygtWjjFjhB8C_md9vyBqneotGuN3L2E8DPJqpK5gRHzsqcpOnJIglUk87-7SJ11Dog7MFD4V8gJWYTpPVPNta3-Tfg1NTwiejtuvzRwf8AkYx67ouZBOAQoVR8jJXOHpvPD3lawLKwoDrtf5-g9NgMYRnjV9oqtVErbSrBlxJ6kTcT9TpbNl-6k1n4o6SWvwxC0rX4-jeJNEDmZCkmD9TKYen9RI-lfaL00F5HaQOmP9dwfS0rC4CXBdC2uDnn7VndNPvK16oXD0ARb9GKyuKsIO6t4gSaEYiNpyiNw3ELnSRpugtJ6vVjltVttFu9m0SgpIE5S6c6lHyPi7mHzspjdHnhIXuhZiBxKpCG7aD1YL9jZ2ZEwXcbHIp7yAPqQlEiNiEsjPUz5ZXb-hoXv7OhDxlijbXpMVqsYvVBK22JtP_nQgNKSTVuCEshxAtUVoHiD6RQCnvU9nXb3xlFPt2o_2f8B_m6lEtUFAAA';\nexport var scrollAreaRootClass = 'styles_scrollAreaRootClass__opl8v70';\nexport var scrollAreaScrollbarClass = 'styles_scrollAreaScrollbarClass__opl8v73';\nexport var scrollAreaThumbClass = 'styles_scrollAreaThumbClass__opl8v74';\nexport var scrollAreaViewportClass = 'styles_scrollAreaViewportClass__opl8v71';\nexport var scrollAreaViewportDraggableClass = 'styles_scrollAreaViewportDraggableClass__opl8v72';","import { useEffect, useReducer } from \"react\";\n\nexport interface MenuState {\n sideBarOpen: boolean;\n searchInput: string;\n activeSearch: string;\n categoryOpen: string | null;\n}\n\nexport type MenuAction =\n | { type: \"TOGGLE_SIDEBAR\" }\n | { type: \"SET_SEARCH_INPUT\"; payload: string }\n | { type: \"SET_ACTIVE_SEARCH\"; payload: string }\n | { type: \"SET_CATEGORY_OPEN\"; payload: string | null };\n\nfunction menuReducer(state: MenuState, action: MenuAction): MenuState {\n switch (action.type) {\n case \"TOGGLE_SIDEBAR\":\n return { ...state, sideBarOpen: !state.sideBarOpen };\n case \"SET_SEARCH_INPUT\":\n return { ...state, searchInput: action.payload };\n case \"SET_ACTIVE_SEARCH\":\n return { ...state, activeSearch: action.payload };\n case \"SET_CATEGORY_OPEN\":\n return { ...state, categoryOpen: action.payload };\n default:\n return state;\n }\n}\n\nexport const useMenuState = (\n defaultSideBarOpen?: boolean,\n onSideBarToggle?: (e: boolean) => void,\n) => {\n const initialState: MenuState = {\n sideBarOpen: defaultSideBarOpen || false,\n searchInput: \"\",\n activeSearch: \"\",\n categoryOpen: null,\n };\n\n const [state, dispatch] = useReducer(menuReducer, initialState);\n\n const actions = {\n toggleSidebar: () => dispatch({ type: \"TOGGLE_SIDEBAR\" }),\n setSearchInput: (value: string) =>\n dispatch({ type: \"SET_SEARCH_INPUT\", payload: value }),\n setActiveSearch: (value: string) =>\n dispatch({ type: \"SET_ACTIVE_SEARCH\", payload: value }),\n setCategoryOpen: (value: string | null) =>\n dispatch({ type: \"SET_CATEGORY_OPEN\", payload: value }),\n };\n\n useEffect(() => {\n if (state.searchInput || state.searchInput === \"\") {\n dispatch({ type: \"SET_ACTIVE_SEARCH\", payload: state.searchInput });\n }\n }, [state.searchInput]);\n\n useEffect(() => {\n onSideBarToggle?.(state.sideBarOpen);\n }, [state.sideBarOpen, onSideBarToggle]);\n\n return { state, actions };\n};\n","export const IconChevronDown = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n d=\"M4.793 8.543a1 1 0 0 1 1.414 0L12 14.336l5.793-5.793a1 1 0 1 1 1.414 1.414l-5.793 5.793a2 2 0 0 1-2.828 0L4.793 9.957a1 1 0 0 1 0-1.414\"\n clipRule=\"evenodd\"\n />\n </svg>\n );\n};\n","export const IconClose = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconClose_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconClose_svg__a)\">\n <path d=\"m12 13.4-4.9 4.9a.95.95 0 0 1-.7.275.95.95 0 0 1-.7-.275.95.95 0 0 1-.275-.7q0-.425.275-.7l4.9-4.9-4.9-4.9a.95.95 0 0 1-.275-.7q0-.425.275-.7a.95.95 0 0 1 .7-.275q.425 0 .7.275l4.9 4.9 4.9-4.9a.95.95 0 0 1 .7-.275q.425 0 .7.275a.95.95 0 0 1 .275.7.95.95 0 0 1-.275.7L13.4 12l4.9 4.9a.95.95 0 0 1 .275.7.95.95 0 0 1-.275.7.95.95 0 0 1-.7.275.95.95 0 0 1-.7-.275z\" />\n </g>\n </svg>\n );\n};\n","export const IconCloseMenu = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 24 24\"\n {...props}\n >\n <path d=\"M3.138 19q-.484 0-.81-.335A1.14 1.14 0 0 1 2 17.833q0-.495.327-.83.327-.336.811-.336h12.518q.483 0 .81.335t.328.831-.327.832a1.09 1.09 0 0 1-.811.335zm16.956-1.983-4.097-4.2a1.13 1.13 0 0 1-.341-.817q0-.466.341-.817l4.097-4.2q.312-.32.796-.32t.797.32q.313.32.313.817t-.313.817L18.387 12l3.3 3.383q.313.32.313.817 0 .495-.313.817-.313.32-.797.32-.483 0-.796-.32m-16.956-3.85q-.484 0-.81-.336A1.14 1.14 0 0 1 2 12q0-.496.327-.831.327-.336.811-.336h9.104q.483 0 .81.336.328.335.328.831t-.327.831a1.09 1.09 0 0 1-.811.336zm0-5.834q-.484 0-.81-.335A1.14 1.14 0 0 1 2 6.167q0-.495.327-.832Q2.654 5 3.138 5h12.518q.483 0 .81.335.328.336.328.832t-.327.83a1.09 1.09 0 0 1-.811.336z\" />\n </svg>\n );\n};\n","export const IconExclamation = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconExclamation_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconExclamation_svg__a)\">\n <path d=\"M12 21q-.825 0-1.412-.587A1.93 1.93 0 0 1 10 19q0-.824.588-1.413A1.93 1.93 0 0 1 12 17q.825 0 1.412.587Q14 18.176 14 19q0 .824-.588 1.413A1.93 1.93 0 0 1 12 21m0-6q-.825 0-1.412-.588A1.93 1.93 0 0 1 10 13V5q0-.824.588-1.412A1.93 1.93 0 0 1 12 3q.825 0 1.412.587Q14 4.176 14 5v8q0 .825-.588 1.412A1.93 1.93 0 0 1 12 15\" />\n </g>\n </svg>\n );\n};\n","export const IconEye = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <path d=\"M12 16q1.875 0 3.188-1.312Q16.5 13.375 16.5 11.5t-1.312-3.187T12 7 8.813 8.313 7.5 11.5t1.313 3.188T12 16m0-1.8q-1.125 0-1.912-.787A2.6 2.6 0 0 1 9.3 11.5q0-1.125.787-1.912A2.6 2.6 0 0 1 12 8.8q1.125 0 1.912.787.788.788.788 1.913t-.787 1.912A2.6 2.6 0 0 1 12 14.2m0 4.8q-3.35 0-6.112-1.8t-4.363-4.75a1.907 1.907 0 0 1-.187-1.437q.062-.238.187-.463 1.6-2.95 4.363-4.75Q8.65 4 12 4t6.113 1.8 4.362 4.75q.125.225.188.462a1.9 1.9 0 0 1 0 .976 2 2 0 0 1-.188.462q-1.6 2.95-4.363 4.75Q15.35 19 12 19m0-2a9.54 9.54 0 0 0 5.188-1.488A9.77 9.77 0 0 0 20.8 11.5a9.77 9.77 0 0 0-3.613-4.012A9.54 9.54 0 0 0 12 6a9.55 9.55 0 0 0-5.187 1.487A9.77 9.77 0 0 0 3.2 11.5a9.77 9.77 0 0 0 3.613 4.012A9.54 9.54 0 0 0 12 17\" />\n </svg>\n );\n};\n","export const IconEyeSlash = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconEyeSlash_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconEyeSlash_svg__a)\">\n <path d=\"M15.175 8.325a4.5 4.5 0 0 1 1.063 1.65q.337.925.237 1.9 0 .375-.275.637a.9.9 0 0 1-.65.263.87.87 0 0 1-.638-.263.87.87 0 0 1-.262-.637q.124-.65-.075-1.25A2.6 2.6 0 0 0 13.95 9.6a2.8 2.8 0 0 0-1.025-.65q-.6-.225-1.275-.1a.85.85 0 0 1-.638-.275.9.9 0 0 1-.262-.65q0-.375.262-.638a.87.87 0 0 1 .638-.262 4.14 4.14 0 0 1 1.875.237 4.5 4.5 0 0 1 1.65 1.063M12 6q-.475 0-.925.037t-.9.138a1.08 1.08 0 0 1-.763-.125 1.02 1.02 0 0 1-.462-.6.94.94 0 0 1 .088-.775q.211-.375.612-.45.574-.125 1.162-.175T12 4q3.424 0 6.262 1.8t4.338 4.85a1.9 1.9 0 0 1 .2.85q0 .225-.038.438-.036.212-.137.412-.45 1-1.113 1.875-.662.875-1.462 1.6a.84.84 0 0 1-.7.225.91.91 0 0 1-.65-.4 1.1 1.1 0 0 1-.212-.763q.037-.412.337-.687.6-.575 1.1-1.25t.875-1.45a9.77 9.77 0 0 0-3.613-4.013A9.55 9.55 0 0 0 12 6m0 13q-3.35 0-6.125-1.812A13 13 0 0 1 1.5 12.425a1.6 1.6 0 0 1-.187-.437 2 2 0 0 1-.063-.488q0-.25.05-.475t.175-.45a13.6 13.6 0 0 1 1.163-1.913Q3.3 7.75 4.15 7L2.075 4.9a.97.97 0 0 1-.263-.713A.98.98 0 0 1 2.1 3.5a.95.95 0 0 1 .7-.275q.425 0 .7.275l17 17q.275.275.288.688a.93.93 0 0 1-.288.712.95.95 0 0 1-.7.275.95.95 0 0 1-.7-.275l-3.5-3.45A12 12 0 0 1 12 19M5.55 8.4q-.725.65-1.325 1.425A9 9 0 0 0 3.2 11.5a9.77 9.77 0 0 0 3.613 4.012A9.55 9.55 0 0 0 12 17q.5 0 .975-.062.475-.063.975-.138l-.9-.95q-.274.075-.525.113A3.5 3.5 0 0 1 12 16q-1.875 0-3.187-1.312Q7.499 13.375 7.5 11.5q0-.274.037-.525.038-.25.113-.525z\" />\n </g>\n </svg>\n );\n};\n","export const IconMenu = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconMenu_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconMenu_svg__a)\">\n <path d=\"M4 18a.97.97 0 0 1-.712-.288A.97.97 0 0 1 3 17q0-.424.288-.712A.97.97 0 0 1 4 16h16q.424 0 .712.288.288.287.288.712 0 .424-.288.712A.97.97 0 0 1 20 18zm0-5a.97.97 0 0 1-.712-.287A.97.97 0 0 1 3 12q0-.424.288-.713A.97.97 0 0 1 4 11h16q.424 0 .712.287.288.288.288.713 0 .424-.288.713A.97.97 0 0 1 20 13zm0-5a.97.97 0 0 1-.712-.287A.97.97 0 0 1 3 7q0-.424.288-.713A.97.97 0 0 1 4 6h16q.424 0 .712.287Q21 6.576 21 7q0 .424-.288.713A.97.97 0 0 1 20 8z\" />\n </g>\n </svg>\n );\n};\n","export const IconSearch = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconSearch_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconSearch_svg__a)\">\n <path d=\"M9.5 16q-2.725 0-4.612-1.887T3 9.5t1.888-4.612T9.5 3t4.613 1.888T16 9.5a6.1 6.1 0 0 1-1.3 3.8l5.6 5.6a.95.95 0 0 1 .275.7.95.95 0 0 1-.275.7.95.95 0 0 1-.7.275.95.95 0 0 1-.7-.275l-5.6-5.6q-.75.6-1.725.95T9.5 16m0-2q1.875 0 3.188-1.312Q14 11.375 14 9.5t-1.312-3.187T9.5 5 6.313 6.313 5 9.5t1.313 3.188T9.5 14\" />\n </g>\n </svg>\n );\n};\n","// Single source of truth for all theme values\n// Used by both vanilla-extract (theme.css.ts) and runtime components\n\nexport const themeValues = {\n colors: {\n primary: {\n lightest: \"#e5a1a4\",\n lighter: \"#db6e72\",\n light: \"#d13f45\",\n default: \"#c8131b\",\n dark: \"#94090f\",\n darker: \"#610206\",\n },\n red: {\n lightest: \"#e5a1a4\",\n lighter: \"#db6e72\",\n light: \"#d13f45\",\n default: \"#c8131b\",\n dark: \"#94090f\",\n darker: \"#610206\",\n },\n yellow: {\n lightest: \"#ffebc8\",\n lighter: \"#ffd894\",\n light: \"#ffc561\",\n default: \"#ffb32f\",\n dark: \"#cc8c1d\",\n darker: \"#99670f\",\n },\n green: {\n lightest: \"#bce3de\",\n lighter: \"#89d9cf\",\n light: \"#59cfc1\",\n default: \"#2ec9b7\",\n dark: \"#1d9688\",\n darker: \"#0f635a\",\n },\n blue: {\n lightest: \"#99dfff\",\n lighter: \"#66cfff\",\n light: \"#33bfff\",\n default: \"#01afff\",\n dark: \"#018ccc\",\n darker: \"#016999\",\n },\n orange: {\n lightest: \"#FFD8BD\",\n lighter: \"#FFB98A\",\n light: \"#FF9B57\",\n default: \"#FF7D24\",\n dark: \"#CC5F14\",\n darker: \"#994409\",\n },\n second_green: {\n lightest: \"#A5C7AF\",\n lighter: \"#77BD8B\",\n light: \"#4DB26A\",\n default: \"#27A84C\",\n dark: \"#167532\",\n darker: \"#0A421A\",\n },\n neutral: {\n white: \"#ffffff\",\n lightest: \"#f6f6f6\",\n lighter: \"#ededed\",\n light: \"#c6c6c6\",\n default: \"#7a7a7a\",\n dark: \"#545454\",\n darker: \"#222222\",\n black: \"#000000\",\n },\n fixed: {\n white: \"#ffffff\",\n black: \"#000000\",\n },\n },\n shadows: {\n lighter: \"0px 0px 2px 0px #0000001F, 0px 1px 2px 0px #00000024;\",\n light: \"0px 0px 2px 0px #0000001F, 0px 2px 4px 0px #00000024;\",\n default: \"0px 0px 2px 0px #0000001F, 0px 4px 8px 0px #00000024;\",\n dark: \"0px 0px 2px 0px #0000001F, 0px 8px 16px 0px #00000024;\",\n darker: \"0px 0px 8px 0px #00000033, 0px 10px 25px 0px #00000024;\",\n },\n typography: {\n family: {\n default: '\"Poppins\", sans-serif',\n },\n weights: {\n regular: \"400\",\n medium: \"500\",\n semibold: \"600\",\n bold: \"700\",\n },\n scale: {\n display: { fontSize: \"24px\", lineHeight: \"28px\", fontWeight: \"700\" },\n heading: { fontSize: \"20px\", lineHeight: \"24px\", fontWeight: \"700\" },\n body: { fontSize: \"14px\", lineHeight: \"20px\", fontWeight: \"400\" },\n caption: { fontSize: \"12px\", lineHeight: \"16px\", fontWeight: \"500\" },\n small: { fontSize: \"10px\", lineHeight: \"14px\", fontWeight: \"400\" },\n },\n },\n spacing: {\n xxs: \"4px\",\n xs: \"8px\",\n s: \"16px\",\n m: \"24px\",\n l: \"32px\",\n xl: \"40px\",\n xxl: \"48px\",\n },\n radius: {\n s: \"4px\",\n m: \"8px\",\n l: \"12px\",\n xl: \"16px\",\n xxl: \"24px\",\n },\n semantic: {\n error: \"#c8131b\",\n success: \"#2ec9b7\",\n info: \"#01afff\",\n warning: \"#ffb32f\",\n },\n zIndex: {\n dropdown: \"1000\",\n modal: \"1100\",\n tooltip: \"1200\",\n toast: \"1300\",\n },\n motion: {\n fast: \"150ms\",\n normal: \"300ms\",\n slow: \"500ms\",\n },\n components: {\n fieldInfo: {\n fontSize: {\n desktop: \"12px\",\n tablet: \"14px\",\n totem: \"16px\",\n },\n },\n input: {\n label: {\n fontSize: {\n desktop: \"16px\",\n large: \"16px\",\n medium: \"14px\",\n small: \"12px\",\n tablet: \"18px\",\n \"tablet-medium\": \"16px\",\n \"tablet-small\": \"16px\",\n totem: \"20px\",\n \"totem-medium\": \"18px\",\n \"totem-small\": \"16px\",\n },\n },\n input: {\n fontSize: {\n desktop: \"14px\",\n large: \"14px\",\n medium: \"14px\",\n small: \"12px\",\n tablet: \"16px\",\n \"tablet-medium\": \"16px\",\n \"tablet-small\": \"16px\",\n totem: \"18px\",\n \"totem-medium\": \"16px\",\n \"totem-small\": \"16px\",\n },\n height: {\n desktop: \"40px\",\n large: \"40px\",\n medium: \"32px\",\n small: \"24px\",\n tablet: \"48px\",\n \"tablet-medium\": \"40px\",\n \"tablet-small\": \"32px\",\n totem: \"56px\",\n \"totem-medium\": \"48px\",\n \"totem-small\": \"40px\",\n },\n borderRadius: {\n desktop: \"8px\",\n large: \"8px\",\n medium: \"8px\",\n small: \"4px\",\n tablet: \"12px\",\n \"tablet-medium\": \"8px\",\n \"tablet-small\": \"4px\",\n totem: \"16px\",\n \"totem-medium\": \"8px\",\n \"totem-small\": \"8px\",\n },\n padding: {\n desktop: \"8px 16px\",\n large: \"8px 16px\",\n medium: \"4px 12px\",\n small: \"4px 8px\",\n tablet: \"8px 16px\",\n \"tablet-medium\": \"4px 16px\",\n \"tablet-small\": \"4px 12px\",\n totem: \"8px 12px\",\n \"totem-medium\": \"8px 12px\",\n \"totem-small\": \"4px 12px\",\n },\n },\n },\n select: {\n padding: {\n desktop: \"4px 16px\",\n tablet: \"4px 16px\",\n totem: \"4px 12px\",\n },\n },\n button: {\n fontSize: {\n medium: \"14px\",\n small: \"12px\",\n large: \"14px\",\n tablet: \"16px\",\n \"tablet-medium\": \"16px\",\n \"tablet-small\": \"14px\",\n totem: \"24px\",\n \"totem-medium\": \"24px\",\n \"totem-small\": \"22px\",\n },\n height: {\n large: \"40px\",\n medium: \"32px\",\n small: \"24px\",\n tablet: \"48px\",\n \"tablet-medium\": \"40px\",\n \"tablet-small\": \"32px\",\n totem: \"56px\",\n \"totem-medium\": \"48px\",\n \"totem-small\": \"40px\",\n },\n padding: {\n large: {\n text: \"0 24px\",\n icon: \"0 24px 0 16px\",\n textAndIcon: \"0 24px 0 16px\",\n },\n medium: {\n text: \"0 12px\",\n icon: \"0 12px 0 8px\",\n textAndIcon: \"0 12px 0 8px\",\n },\n small: {\n text: \"0 8px\",\n icon: \"0 8px 0 4px\",\n textAndIcon: \"0 8px 0 4px\",\n },\n tablet: {\n text: \"0 24px\",\n icon: \"0 24px 0 16px\",\n textAndIcon: \"0 24px 0 16px\",\n },\n \"tablet-medium\": {\n text: \"0 12px\",\n icon: \"0 12px 0 8px\",\n textAndIcon: \"0 12px 0 8px\",\n },\n \"tablet-small\": {\n text: \"0 8px\",\n icon: \"0 8px 0 4px\",\n textAndIcon: \"0 8px 0 4px\",\n },\n totem: {\n text: \"0 24px\",\n icon: \"0 24px 0 16px\",\n textAndIcon: \"0 24px 0 16px\",\n },\n \"totem-medium\": {\n text: \"0 12px\",\n icon: \"0 12px 0 8px\",\n textAndIcon: \"0 12px 0 8px\",\n },\n \"totem-small\": {\n text: \"0 8px\",\n icon: \"0 8px 0 4px\",\n textAndIcon: \"0 8px 0 4px\",\n },\n },\n borderRadius: {\n large: \"12px\",\n medium: \"8px\",\n small: \"4px\",\n tablet: \"12px\",\n \"tablet-medium\": \"8px\",\n \"tablet-small\": \"4px\",\n totem: \"12px\",\n \"totem-medium\": \"8px\",\n \"totem-small\": \"8px\",\n },\n iconSize: {\n large: \"24px\",\n medium: \"20px\",\n small: \"16px\",\n tablet: \"24px\",\n \"tablet-medium\": \"20px\",\n \"tablet-small\": \"16px\",\n totem: \"36px\",\n \"totem-medium\": \"32px\",\n \"totem-small\": \"28px\",\n },\n },\n },\n device: \"desktop\" as const,\n} as const;\n\nexport type ThemeValues = typeof themeValues;\nexport type DeviceType = \"desktop\" | \"tablet\" | \"totem\";\n","import type { MenuObjectProps } from \"../components/CollapsableMenu/types\";\nimport {\n IconHelpFilled,\n IconIdCardFilled,\n IconLogout,\n IconMotorcycle,\n IconSquareMenu,\n IconUser,\n IconUtensils,\n} from \"../components/icons\";\nimport { themeValues } from \"../theme/themeValues\";\n\nexport const DEFAULT_THEME = {\n ...themeValues,\n components: {\n ...themeValues.components,\n button: {\n ...themeValues.components.button,\n iconPadding: {\n large: 8,\n medium: 8,\n small: 4,\n tablet: 24,\n \"tablet-medium\": 16,\n \"tablet-small\": 8,\n totem: 32,\n \"totem-medium\": 24,\n \"totem-small\": 16,\n },\n },\n },\n} as const;\n\nexport type DeviceType = \"desktop\" | \"tablet\" | \"totem\";\n\nexport type ButtonSize = \"small\" | \"medium\" | \"large\";\n\nexport type ColorShades = {\n white?: string;\n lightest: string;\n lighter: string;\n light: string;\n default: string;\n dark: string;\n darker: string;\n black?: string;\n};\n\nexport type Colors = {\n [key in keyof typeof DEFAULT_THEME.colors]: ColorShades;\n};\n\nexport type Spacing = {\n xxs: string;\n xs: string;\n s: string;\n m: string;\n l: string;\n xl: string;\n xxl: string;\n};\n\nexport type Radius = {\n s: string;\n m: string;\n l: string;\n xl: string;\n xxl: string;\n};\n\nexport type Typography = {\n family: {\n default: string;\n };\n weights: {\n regular: number;\n medium: number;\n semibold: number;\n bold: number;\n };\n};\n\nexport type ButtonSizeKey =\n | ButtonSize\n | Exclude<DeviceType, \"desktop\">\n | `${Exclude<DeviceType, \"desktop\">}-${Exclude<ButtonSize, \"large\">}`;\n\nexport type InputSizeKey =\n | ButtonSize\n | \"desktop\"\n | Exclude<DeviceType, \"desktop\">\n | `${Exclude<DeviceType, \"desktop\">}-${Exclude<ButtonSize, \"large\">}`;\n\nexport type Components = {\n fieldInfo: {\n fontSize: Record<DeviceType, string>;\n };\n input: {\n label: {\n fontSize: Record<InputSizeKey, string>;\n };\n input: {\n fontSize: Record<InputSizeKey, string>;\n height: Record<InputSizeKey, string>;\n borderRadius: Record<InputSizeKey, string>;\n padding: Record<InputSizeKey, string>;\n };\n };\n select: {\n padding: Record<DeviceType, string>;\n };\n button: {\n fontSize: Record<ButtonSizeKey, string>;\n iconSize: Record<ButtonSizeKey, string>;\n height: Record<ButtonSizeKey, string>;\n borderRadius: Record<ButtonSizeKey, string>;\n padding: Record<\n ButtonSizeKey,\n {\n text: string;\n icon: string;\n textAndIcon: string;\n }\n >;\n };\n};\n\nexport type DefaultThemeType = {\n colors: Colors;\n shadows: {\n lighter: string;\n light: string;\n default: string;\n dark: string;\n darker: string;\n };\n typography: Typography;\n spacing: Spacing;\n radius: Radius;\n components: Components;\n device: DeviceType;\n};\n\nexport type ColorType = Exclude<keyof DefaultThemeType[\"colors\"], \"fixed\">;\n\n// Usado em alguns componentes como Switch e Radio Button\nexport const LABEL_POSITIONS = {\n top: \"column\",\n bottom: \"column-reverse\",\n left: \"row\",\n right: \"row-reverse\",\n};\n\nexport const MENU_OBJECT: MenuObjectProps = {\n profile: {\n name: \"Restaurante de teste\",\n image: null,\n text: \"Perfil\",\n path: \"/profile\",\n icon: <IconUser />,\n displayType: \"page\",\n subitems: [\n { text: \"Editar meu negócio\", path: \"/info\" },\n { text: \"Alterar perfil da conta\", path: \"/user-profile\" },\n { text: \"Tarefas\", path: \"/tasks\" },\n ],\n },\n categories: [\n {\n text: \"Operação\",\n path: \"/operation\",\n icon: <IconUtensils />,\n displayType: \"sidebar\",\n subitems: [\n {\n text: \"Mesa / Balcão\",\n path: \"\",\n },\n {\n text: \"Caixa\",\n path: \"/cashier\",\n },\n {\n text: \"Comandas\",\n path: \"/bills\",\n },\n {\n text: \"KDS\",\n path: \"/kds\",\n },\n ],\n },\n {\n text: \"Delivery\",\n path: \"/delivery\",\n icon: <IconMotorcycle />,\n subitems: [\n {\n text: \"Pedidos\",\n path: \"/orders\",\n displayType: \"sidebar\",\n },\n\n {\n text: \"Horário de funcionamento\",\n path: \"/opening-hours\",\n displayType: \"page\",\n },\n {\n text: \"Endereços\",\n path: \"/addresses\",\n displayType: \"page\",\n },\n {\n text: \"Agendamento\",\n path: \"/scheduling\",\n displayType: \"page\",\n },\n {\n text: \"Cupons\",\n path: \"/coupons\",\n displayType: \"page\",\n },\n {\n text: \"Motoboys\",\n path: \"/motoboys\",\n displayType: \"page\",\n },\n {\n text: \"Configurações\",\n path: \"/config\",\n },\n ],\n },\n {\n text: \"Cadastros\",\n path: \"/register\",\n icon: <IconIdCardFilled />,\n displayType: \"sidebar\",\n subitems: [\n {\n text: \"Cardápio\",\n path: \"/menu\",\n },\n {\n text: \"Estoque\",\n path: \"/stock\",\n displayType: \"sidebar\",\n },\n {\n text: \"Vinculos iFood \",\n path: \"/ifood\",\n },\n {\n text: \"Vinculos Fiscais\",\n path: \"/fiscal\",\n },\n {\n text: \"Funcionários\",\n path: \"/employees\",\n displayType: \"page\",\n },\n {\n text: \"Impressoras e outros\",\n path: \"/printers\",\n displayType: \"page\",\n },\n ],\n },\n {\n text: \"Ver mais\",\n path: \"/search\",\n icon: <IconSquareMenu />,\n displayType: \"sidebar\",\n },\n\n {\n text: \"Fiscal\",\n path: \"/fiscal\",\n displayType: \"page\",\n subitems: [\n { text: \"Manifesto de Notas\", path: \"/manifest\" },\n { text: \"Entrada de Notas\", path: \"/entries\" },\n { text: \"Notas Emitidas\", path: \"/issued\" },\n { text: \"Notas Devolvidas\", path: \"/returned\" },\n { text: \"Grupos fiscais\", path: \"/groups\" },\n ],\n },\n {\n text: \"Estoque\",\n path: \"/register/stock\",\n displayType: \"page\",\n subitems: [\n { text: \"Insumos\", path: \"\" },\n { text: \"Transferência de Estoque\", path: \"/transfers\" },\n { text: \"Fornecedores\", path: \"/suppliers\" },\n ],\n },\n {\n text: \"Perfil\",\n path: \"/profile\",\n displayType: \"page\",\n subitems: [\n { text: \"Editar meu negócio\", path: \"/info\" },\n { text: \"Alterar perfil da conta\", path: \"/user-profile\" },\n { text: \"Tarefas\", path: \"/tasks\" },\n ],\n },\n {\n text: \"Ajuda\",\n path: \"/help\",\n icon: <IconHelpFilled />,\n displayType: \"sidebar\",\n barPosition: \"footer\",\n },\n {\n text: \"Sair\",\n icon: <IconLogout />,\n displayType: \"sidebar\",\n barPosition: \"footer\",\n function: () => {\n console.log(\"Sair\");\n },\n },\n ],\n};\n\nexport const MENU_CONSTANTS = {\n TOOLTIPS: {\n CLOSE_MENU: \"Fechar menu\",\n OPEN_MENU: \"Abrir menu\",\n },\n SEARCH: {\n PLACEHOLDER: \"Buscar\",\n NO_RESULTS: \"Nenhum resultado encontrado\",\n },\n} as const;\n\nexport const MENU_ITEMS = [\n {\n id: \"home\",\n text: \"Home\",\n path: \"/\",\n },\n];\n","import type React from \"react\";\nimport { createContext, useContext } from \"react\";\n\ntype MenuType = React.ElementType | null;\n\nconst MenuContext = createContext<MenuType>(null);\n\ninterface MenuProviderProps {\n component: React.ElementType;\n children: React.ReactNode;\n}\n\nexport const MenuProvider = ({ component, children }: MenuProviderProps) => {\n return (\n <MenuContext.Provider value={component}>{children}</MenuContext.Provider>\n );\n};\n\nexport const useMenu = () => {\n const context = useContext(MenuContext);\n\n if (context === null) {\n throw new Error(\"useMenu must be used within a MenuProvider\");\n }\n\n return context;\n};\n","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nimport 'src/theme/sprinkles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA72dTW_6WJaH9_0psuxeUArvoWYz0z2azki9qm6pNi1FNhgwGJsYEyCj_u4jv-Hr834JM6vSX7GfB-79cck5cCq_nI55nO6T6PSxik_HJLh9pFkafayi077Ijh8fw-35bbg4j17-5w8vL80lv76U1_zbH_71h1_w7eskuqLbp_3by2uY2-M0idNoQFLe-hTnUgYWJtlyjzBhH1NdxAA2ebxC90f9-8trwO3HYLWK083H9XpCd2-ru5srfn35CvI_DganY7CM082gvOFjOAm3p8nXaPonDoupe5HqQGccFDNTiekg5xzygJCfEvLQId84ZIKQhYRMOuSCXU3MvIir6UADFkpQv-Wdd7Ahg_1HdiQzNRy56EGRHR8KVoUn6FOVbghYCSfYbxrbELQSjbM2DDW0IXAlGu_kMNLQhuBVq02wt-pqGwJYJ4Wg7_WkGIL456wosgOdxd6xMQirKx-KYyshHJ8WhyGUjYIwFAaDIZqNgEjnxSAwBLQREDv9bRAYYtruAjaMRpZdMIT1nibCMTWlyRDZv0XrggzsqH8EJdG6eCiutYDghzrfENUKT9AjlW6IaQXHIR1tVbghohWc2Nq9CjfEs151gp7qq26IZpMagv9pSI0hlr_Fmy2Ty_4RlJcXPhTMRkEYLgaDIZq1gOB_63xDOGs8Tud4pOMN8azxeIfHUx1vCGiz-gT_zbD6hoi2CSIMoSVBUkgPQb6JUzKe4_rgqa_wy2VLJaBbCSpFsWESyL2AlNLXEIncpQJRClxDJDbqUyBKGWtXkkAW0kpKsbrvOQG9iHuuJ4krYMbfDti_fnHgmD0ZaWw9V3TxMpkqZD1edOkyeVPAesrowmUSKmA9bEzZMom0VdYzxxUtk62aDj16QskycY-IhyqWvoIwpAaDHkO2XJl86nw9jGyxMil0vB5JtlSZXHS8Hky-UJl8G1Zfj6dQpkxHlgTpIWWLlGnvqPGvUVw8QX9T6Xo4mQJlGmpsPZhMeTKNNLQeSqY4mW41tB5IrjSZ7tXV1sPIFibTVE-KHkS-LJn2jpoHqpKegOAXOl8PI1eSTC8qXY8jV5BMv1W4HkiuHJmNVLgeSbYYmU31VddDyZciszdDaqRYbgL6N8dZfbxsAs9fGSsegYtYnBS6kkbAthxMyljJwtma7TmWFKmSRWxGyrGkBFUrRsA-2RWTAlPvJ4Er-P2U8pFnl79yEalf83l2GXjHpMUS1G-RKqWlgWLmfCQxpdA0SJyb-VRCStlpkHiL5m8SUopQu5oEMxRXU0rSfecJaiTvvBSoZZacDymXqXn90q4v8o-VAyfYe40thatDE-RUIUsR68BEyj4VsBS0DkzsYKGApbg5q0yQL9oqS6Fz00Gwv9V0SNFbZ2nx9_g7un8NAX0Roj4nyusGp_g7avHF7Zht8uC4vQ1OyyCJBg1gcCe20uEnK91GQfURNpJOjdIGQEgLVhpmK-JpvhmN5d2E7sLqlsGxiLMUG0OjsQEQ0m9WejoECc7KW2RUVrdj4WgEheW3Yt6j6lcxNkD18VV9f2Ybub-NsRFyqPfnmgtqNkZ7s7oNEqU-C2o6TKnZW8WJkl4FKRupT7O3DRWhHr0KaiZYhVlcR4vSjqH2Eq-KLfmW-FYfqNUFfu-GDZNAfgtI6U2wJmLgYsQDpfe-moff9xZTnie95dU8vGeLN54nvdM1K0gAQ2EFpTe4dp8JZCTts_S-VqeQDM-iPpD6ObWlp6US0L0ElfLTMAlkKiClBDVEIkKfAlHKUEMkNqgQiFKK2pUkkBdpJaUc3fecgH6Ley42qeL0d_YgCppOSZwOHjiMOjRBnipksTHVggnum8wVW1ItFkcrCGWs2IxqsXjfgkjGim2o--oS3K2yumIDqksEQd5riVDC9s6fXEF6Zz9yejlwgv2psZXAvXPnWFAoZCVy79xxFlwUsBK6d-5UC74VsBK7d_ZwC0faKivBe-fPuHCqpkNuxl_5cy5se6rXh865O5oghwpZbsBfuXMujGSu3Hq_cudcuJWxctP9yp1z4V7Gyu32K3vOhamyunKj_cqfc-GnlgglbMI5FxZ39kPnXAcn2BeNrQSOPefCb4WsRI4955YjBayEjj3nllMFrMSOP-eWb9oqK8ETzrllqKZDil6Y5aso_y1YxecTsYvL-tyorxrk1WWtoP6Xu49LkU5s5ValO5u5EunEyuxVurMykUinFj5V8e7Kr2U-JfjUBa5hg_pfSXT9zziPllV7JM8uHTqvW19JdB2s2it-Ldv1GmKQR19Rfoo61IlDtZeKyLpT29EKklZfZQDhh3cWgMwjDJJ4k_53ER1OH6cij4rltsN9VbjqikFcXvLrS3MND6nkpyLIi45zwZzuMh61jNIiyjvMFWPqS5RHE6WrDnJjHkuUwvE6BxMGp6jsW3WYb4xpLwKY3flUxOvbX7K0iNKCWp_VawVrLhws6yuFNQJIsE6rIY0j14p6dO56rUbCY8NrBnDlsRwNwqi4RFGX-9WYZvautoCDPDu7j3UiceuLLdjoK0qTW4edStj6YuLV-nseHD_S7FL-546adS_Q8gfliGv5X-72_s1zeLN2KzogVm8UQji7_r4t__Xx2hEWHeFU_fDXl1f-xmF3Y4BvHBI3_rU8uh1f2N22ybMLbatuclxLeBM0HbNTXJ2kpyIo4mV356q6s_1xed6VP-fuzqMkKOIvZ4EjcH97BUcIwlOWnAuHsAaE9gqOsI6vkfMa2IDbqx_zzz5e7p2kb9GzL38O7s6-onydZJePr_gUh4nz0OPq9vbnv740F3D3b-PVyj0WduD2-ufc3adlniVJd_ce3F3_nLs7OBdZd28C7i1_Cu4somvxH-Vx_1F-2a279VDdWv50UL0b_PpS_py9GZ7VKbqdPKY7QN58ctLcn6H7qwvY25tTrAMcEaC5BH4Ufc5PWQ7Wrfk8vvoRuWrNXatoHZwT52HnvRubH9P3HrO4v2Sn3r3Nj-l706x8Vkl2cV8hRe9-5xKacQli54GfezeXPyM-h_29rmDyaHNOAueRf3WfwV64j8rqH5wG3c3Np4IH6hPfxnSIVvH50IkuHqL7vY0nFTyn6BCHWeIs5tXD5NzduDLB1ffcPDx9x5Fy_FdwiJMbzuV3p1lXlxCa-geD7t5GlBDf3ijzm8eHIL_985ekfHTRqbNFr-33N8os1Z7qH6dBc9PAuae2oA9oSUmXuWhodDhJsyg6wcgm6Eo3BQ_3JBqrArgV6ONkqAjyfcef6Pz6-ho-McDdDZia8M76U1_jyvKPPFpRGZqx-Dxa4fxQX-Tqw52HPjewu8dNfZWrh-7Abzr4jqW-yNViUVYWIhjmhPoq1x3dy0ggc918UF_icqHuAocq1llf6ruDWf5xi8p3LyoaS5Ze34PTgXpalMJ5_CuboXsOqK1FCDp8ZMLf4air1YejsKw1PMwLamsBQS8yG5Xupgb1szDaXfitBe6s-5bGb_IoSqnoxCy_ugUnJzYInMe_M_G7x7_T8R18b4Hf0XsRjUKTKHCYGea3ghbfi8xBY7uJQb8PIrC74KkB7aw3-iWwhofJOaLikrH08g6cFvR7H8Y7j_1ooXePHf3Ch-Ad-tOAvoPRl1ldMApKLqNhTtCXHHvwXkxOCtlNyUnDugtd6GBnndHXbGt0lgfphkzJmcXX9-CcoK9fUgrnCXzZDN1z-DIIOvzFhL_D0ReD-3CUmKuGh5lBXxQFgl5qbirdzc1NR7sL_22BO-uOvr5c40_RMktX7NvSmi-Y3DtxjoZM2UT5ume15msnQucUUEwFRdg6F19GYVdnYoqpvgkGbc1XVD0XqnCZugrY3NSt-eKqr3KzN2RKLOxxN4uvs5DJ3Sum2kqjc5EHyT9_uWxjpzu75sut5o5Be0PDZwquOx-HnK-6WgXON1N7AYuzWnwF1pc4K8UUYn1HZ-BLsZ6h4zPV2J2PYswXZa0BJZgpzjpHL7x8eXYX9HLLVGg9ursJfIHm8t09YAq0uyFMgqXzBPj6rBW0NzR8pj6rPkRArwW-PKuuh68Epjxr2OCR87VZzQaPG3_hIFjuN9Unfn_J5C7cui7UuhsGlNXekFPMzvZv_cVCl072dtbY28q37lgneq3ufKxqP4_39l6_ey-p2OQTje6mJr5OqfMHrXQPcH2wOG3tQMHoPMnUTyj0CHlfZ8u8bHzjkHShpB6tNrWbSPt6Cf00y8QWI2tyNy33cUl9R2hjO5Drk0VpbkbKXueZFt5aoUMpWjvn2dfJty05I4rql4dT7WWy1l5gLz5KscEp-dzNvHoapa4ndLKF5s0itbZCRavzTL99pUJ_VHLejZtXTyPfNGV8MLKbod2odlI5pxvYzchDKLZXBZuziZuxn0_quUIj033dTCxKYyNWcjrPcuqpFLqzgrHzzfx8fMuWtqGYzs0-tY_LGHshfbPrxOYu73I3b-Flkzq-0Mf2fjeBxWluA8te56mG3lqhNyxaO-fS18k3jDkjyuvKw6l2kVlrL7ORj1JsLUs-dzPXnkap3wydSud5Y2oS-DahLQ_Cef6mfoFnZ9rwELoHYGodeLWrZT2KuamL4NnDVh5CL_OmhoJPY1uXuwEw9Rb8ut3wATB9742pxWBtgbNS_LozdRo8-uKK2llsU9fB3iyXxZ3W1H6wdtBZKXplmRoR9rY6L-69nkwtCWOvXVS6G2tqSpgb8Ky239DemHoS1q48lJL9-Y2pJWFr1TNC8BxN_Qhj_74aBNR695umHVFPDf6wb88bnfBc_YRSv571dbabl03o01MudAZ8W216f570uS_97atZJvflOZOzaduhj0vsxzs2uhe_HWkuYx-eNjlPamwXSf130tNZJmaL0HeHDpi87dRi0fvtyNNL3MwkkfvslMHdlLnVIfbXHQvbW9--aSp7X531Oc9s4aWT-umcrXMFPi6hj06YUPRCo0vvn1O2XgCXVpXcN2c87matPExiv9xxcaXxNtJk5j45Z3Oe2dpHJvXHGVdn2niYhL449qAIbm0mvR9OuHoBjI0iuQ9OW9xN2tk9Yv_bMTG97-1eU1n73ozLeVaJh0rqd9OmznOwe4Q-N7Kg2KUmj97fxqZe6DKbRu5rkw53c45mi9jPdjxsL3v7qbnsfWzW5zy13Esn9a85W-c6-biEvjVhQvkrjC69X03Zehk8W1Vyn5rxuJv15WES-9OOS-lNb9Ui2Lsvrcid56vWw779aFndidXS2K8PzWpRbNUq2bf_zKvdDMdqwezVdxalzgbHau3s2W92xEyvOVZLaHOfmZKh10-sVtI-_WVe6SyqWlV79JVZYadTy2tzP5mSwVdIrBbaHn1kUth7Xaglt7V_zKncjVOLbnvfmNL1-6mxWnOb-8WOjOwVx2rJbewTYxF4Tmq9besPr-MkERrDcfN_AIqT5OGGMKVworCyGYQOMCHo8JEJz7d8-3D0Gl1reLXHCwS91-RGpYtNXYx2F35rgUtd3ApPt2_jmIPb2rYQ7TzsnU4W-rQA3GH3KpZvzHZQlI9EwqqdWAfcy8VBpIqt1z7SXdhUg0q91grLNlnjjGObm6uEwHnsRxNf6KZifAf_tMD59mkPjQKSK3C1X9rH92Jy0thigxSB3QUvDGipI1rBuUosPnN0awsU453H_mWhCz1PBO_QFwOab3K6YBSUq4xWu5o9eC8mN4UstjEh1l3obx0s9S0rNNOw3L1ybGOjEsG7x70bGthCZxKiO_BIB_OtSAcLw7Ebi2C19-ii3WjsJjJXbDYCqLvAUxUrdRcrMNtW3M04uLmdSAicBz838YX-IcZ38DcLnG8Y9tAoJQsFrnYI-_heUgKNLbYEEdhd8NCAlnqAFVxp_u3YQse36cfanGfE1jyeXT7O1ZnY8serrUd4ULjYSsizj0e5ekljiyKfxh1jcTeJrY_8OnWViWnR7dgyydqa69NxrNlqyaMXRzmcdWIrJ3vzjTB0fLaEsnbb-nQUXLaYsrfXgKEXV7asMvbTMNtdfLawMjfQ-vx-l2nH1lXWjllFJ1tlO7assrXIXDJ41GxNZeuJnYo820dCV2xXF1b1dQ_3xWiNs7eF1SL0xkhJpzgbFXx_DArQy-tLV6g9MiTpvcIuBoPYJ6Pw7kZcbQKpV9Yo6G7Z7sYLbP0yjHce_reFLvTMEPyO3r8a0HzfzAXD3OyHMlrtnfXgbl72I4Us9s8g1lno_VgHSz20Bs120fYTnm_uo5ES5zlMjQ6hl0YpOsHMJuD7aQCPgjNXBWpPDSp68XnT-WJfjYC7G7Aw4aXeWiPgSp19wBus_TVK4TyH0GYQemyEoMMvTXi-z9aHowCtNLzaawOCXnwilS722zDaXfi1BS713Bo803Xbb3i-se9GCJzHvzXxhd4bxnfw2ALn-289NArNToGrPbg-vheZvcYW-3AI7C54YkBLvbgGznbj9gdeYO7HkRLnSaRGh9CToxSdILMJ-L4cwKP0HFWB2puDil6CPnW-2J8j4O4G5Ca81KNrBEqXbi8UXr59OsHoPDOhBvPs1fG-ziaUY179OtKFQidUZp49O9rXS6BQpPn07ViTu2lCvebXu2tsTPduL5Rt1v4dNODIC9WbRw-P9nRrlgiVnL2PR1o6h1DSWXt50ABDnQjFnb2fhyxulBOhzDP29Ci-uxlCoWfu60FHv0eWCHWetbfXGMjuXiKUebb-Xp8OHr1Q4wk9vn8v_0ZTUP5FsyhKX4J09fJH548vz2fz4_VPFdh5GKv4dEyC20eapdHHIQtj5w-11a-Zl5fmmvKPYJV_tvLl5V80o_xDepAxhozyIoERp-XfxhxQqBlEOdcKxDDJlnvIWkBWdZVA2eTxCkKWEFJeRDCOwWoVp5vqD1kDxLpBNJe0e83-FWuejdCxggZ_xJolI3Aig8HfsGa5B8jNZC74E9YsN4HcXOaCv2DNrzACn5UVBn_AWsgFQl-1XIC_X82x_5EdqdgNX_v8QZEdH85e5cCKsUFhzGBpwIKZLjBmseSjOA4XOt-YyZKPtni41PnGbFY7gAVrww4YM1rnCCtiS46MWf1zVhTZgYwrOHIGYXXpw4ltTViU2UTG3DYerMlNGmN6GwsO8NlkMWa4seAIXE0WY5LbnUGaETyxmJ0x5vmeNSyC5xaXNWOq_1b-GVgi0yN4fJV_D_bhRNcWLIFnGCkxprlyYAU8xiiFMcmVAeV4BM8xymBMcWXAew6PMcpgTHC9E1gBjzByJ4zpbTKFJfD4ojNlTO5vVa1KRRceX9XfEn44u40Ha-D5RWuM6a0tWAKPL1JizG_tQAEew7OLdBgTXDvQ1o_hsUU6jBludgRL4JlF74gxxW2-sAaeWky-tBwfgnwTp1SCx-2hVV_iH90WjclrmayltQFjbixytYA2WBzNRMRqmWyweAczEavFsF1dzM3l1dWSd08EJp-VRNjCxtRb42uP_li55RiQYPKqC2zRI2utyVjF2xJIVlqTmUq3BZGssyYLlW7LI11lTZb6yttiydRYk7UhO7Z08hXWpH-8PFxg9T1Yk5g0tqRy1dUks0hseeVqq0lucdhSy1VWk7PFYcsuW1dNrqYdsSWYr6qmr7Z82XLM1VRTcEw9VlK5DqyYGRS2_NL11HShC2zZpaup6VLn23JL11LTtc63ZZappKaxYQdseeXqqGliyZEtq2wVNQXH1INFVM-CJblFYssrU0FNzwaFLbFM_TS9Ggy2zDLV0-zVYLCllqudZmPLTthyy1ZOs5kpU1pyNwH5W-ysPZo2wQO_vlZQzFwKTC2XJRIT1zxRi2EJRPGbxTxQS10JxLuU8EAtZNUqYmImrKKWqXq3MTOXdluLUJ5d_sqkqD0v8uwyeChJLRujrwpaC1RDRuD5qwzWctVwUbTmY5mrxavhor2bz2SulrJ2hTF4oaywFrZ7LjB6qeVCy9wyS86HlIndvD0W6qseS55jwIJYF2j56_gYn6h4LYUdHQcxU-laFjs63tpcpWuJdFYe48_6ymu5dLODBVdDdrR0rrO0-Hv8Hd2_UgIkb-0ZU144OMXf92_-FLdjtsmD4_Y2OC2DJBo0hMEdef8i0Kdo3kZB_dULYB6bzQ2BMBeiOcxW-AnPzNrydsJ5EZ3L4FjEWYq0C7O2IRDmb9F8OgQJCtHb0uyt7sfW0Yiylt-Beo-q3wi5ZLVHX_V1qW3k_lLIZsvB3p91rvi5fMUe_jZhlP-s-MmUJR7yKmeU-aqYuaxlHvI2bYR_9Kr46cTlHvY6c5R7TLmrLxVS77Nv7WHcfO3Q9y22AWPuVeRq76w1FlEXrxJVe0OtoejNdDGWoNr7aA1Fm7mYSVDt7bNZVUxdiKuqvWu2KcDcpZwC7c2yDiuVr0V7mPXzbA9Yi8bkWCZrEWvAmJuIXC1kDRanLBOxWswaLN65XMRqQWtXF3PP8upqUbsnApOvSiLURl2c_s4dZ8G9MxSngwePtI6P8WMVrzbnWjqGzzS42pZr2Sh9wUJjqw25lo02NFhqbLUVd19xDF-rK6424bq8YHys58WQx3f2_AsSR_DoGegYsCDTBYZMvjOnYZCreEMq35lDMTirdEMu35mzMbiqdEMy37kjMnzVV96QzXf2pAzHhuzoH2tc2dMy7PrP14dPyzsf4xcqXv8o48qcluFSg-sfYlyZ0zJca2z944src1qGscbWP7i4cqdlmKgrrn9kcWVPyzDT82LII39ahrkjePi07AxYcNYFhkxyp2V4VfGGVHKn5fJVpRtyyZ2Wy7FKNySTPS2XM33lDdnkT8vlwpAdLZ31_8H-t2AVn094e5ftmdP8j-7z6rrWUv_L3eClqsB7vDYonF1eqQq8ULFB4SxUpCqIzUgMDnc31rqEsGQWi6vZNBp6-rL7HXA-eyunL-FQ5vB1NNamMosgTKJuBHjYPESvqUzAmECGx1QmQM0hymcqE7ACyDJNZQLICkIMU5kAsel___jhb7Z_YPROQdunMgH4IIPtU5mAe5S59qlMwD3JXI-pTAD-UlbYZyoToG9aLjynMuEre9jnP2MqEyomBoXXVCYUzHWB11Qm5Ac632sqE_JXOt9vKhMKNoYd8JzKhIqdJUf-U5lQA46c501lQtHRJvKdyoSak0njO5UJLV8mi-9UJrTcTBbvqUygGcET62lTmVAEz61nTWVCDzy-njKVCSXwDHvCVCZUwGPs51OZ0ADPsZ9PZUIDPMaeMJUJFfAIe8pUJpTA4-tJU5lQA4-vJ01lQg08v54ylQkl8Ph6xlQmcIzh2fWMqUzogMfWU6YyoQSeWU-ayoQaeGr9fCoTGtpD6-dTmZC8kcnmqUzI3Ylc81QmxB5ErHkqE2KPItY-lQm5J3l1PaYyIflLSYTfVCak33r0J0xlwjbLUBf4TGVC_ETF-0xlQvpcpftMZUJ6oNK9pjIhfqWvvN9UJhRsDNnxnsqEkv7x8rSpTKg5mDSeU5lQcrRIPKcyoeNkcXhOZULHl8XhO5UJJTfTjnhPZQLNdGjLl-dUJrSAY-oZU5lQMTcovKYyoSDQBV5TmZC_0vleU5mQv9H5flOZULAz7IDnVCZUHCw58p3KhBJwTD1nKhNKThaJ31QmVHwZFH5TmdBwMxj8pjKBYTY0GDynMqFiYtkJ36lMKJmbMmWdyoT09mj6yVQmZK4Epm0qExI3PNE2lQmBOx5om8qEwAMPNE5lQuJRWEXrVCZknqTd9pjKhNz2vHjCVCZE3xS0eSoTfvQ8lMHmqUzInchc81Qm5M5lrn0qE4IDZYU9pjIheqXlwm8qE-LbY-FpU5lQsNMFPlOZEH9Q8T5TmZB-VOk-U5mQflLpXlOZEP-lr7zfVCYU3AzZ8Z7KBJK39oz5v5_KhOaJ2fyjqUyonZu1P5rKhNrArP3ZVCb0rszen05lQnN79P1_TWVC_87D_-OpTCg_eMh_PJUJ5UcP-c-nMqH95GF_eCoTStvD-KdTmZB7E7nWqUxAXQwlqnUqE0InEtQ6lQmhcwlqnsqE1EBcVftUJuSu5BR4TGVCcnuY_XwqE5J3Mtk8lQm5B5FrnsqE2KOINU9lQuxJxNqnMiH3S15dj6lMSL4pifCayoRfFL53hp4zlQnxExXvMZUJ4XMN7jGVCdmBxvaYyoTslcb2mcqE8I264l5TmRC_0_PiN5UJBQdH8JSpTCg46gKfqUyIP6l4n6lMSP9S6T5TmZB-U-leU5kAHw71lfebyoSCiSE7XlOZUND1n58ylQnxgYr3mMqE8JUG95jKhOyNxvaYyoTsncb2mcqE8IO64l5TmRB_1PPiN5UJBSdH8JSpTCj40gU-U5kQf1PxPlOZgL4cqnSfqUxIn6h0r6lMiJ_rK-83lQkFgSE7nlOZUNGeOU-cyoSKjUHhOZUJFTuDwncqEzoOBof_VCa0HC0WcirzfwEZHmviUh4BAA';\nimport 'src/components/CollapsableMenu/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA91YW2vkNhR-z68QgUIGVqk9ueyg0Id2YWmgpQsLbaEsQbaPbe1oJCFpbrvsfy-SL-PLeMaTTLZQSEgsWzr37ztH18ZuOZinBYjlOyksZQL0O06NeXoK0xsdi2mIvl4gpKRhlklBkAZOLVvBwwVCVlNRra9ZYnMUXN8Y98Y_EXR_qzbuMQeW5ZagMAiSVe5WFE0SJjKCZmrjf8Np8WlGlV90_0dyg01OE7kmaEX1FS6fDObuPNBPT-FtlJvbVZhN3Aa5Ap1yucZbgujSylrJVOoFlpplTBDEIbUPF98urkdYTwheQzRnFptYS84jqr1DEmYUp1uChBQweNgfCkT7wKnfXbpnOvX-aW_-FWjSVePW72q6pjwhDIIfGu7EkbRWLhoO1AnoejVUG2QkZ0npzVhyqQ0WsLSa8tKpxu68-nayX7u-XXejPvJmpBw2OGEa4jKj5BprWIE2Pqk-L41l6RbHUlgQliCjaAw4ArsGEOO8ZVZZIUoKiw37AgRNy1RMGeekbb_SbEH1FieQ0iXfmX_jc8qra3LNxJygYKR8RcXO1ky7BA7dYQsmcBm64KGfRghV2caZABxzulAETZsvXE1IzbxnVqAtiylvpj5BOUsS5yiELGws3r0AzpkyrChQqRMcaaBzgvwf7FbcG-8Usj9DEqrnzaqLCw_tvBxWXvZLzk3ONL0odPSr6xIL7gPvAW9ohQ_ToNjOwVrQ2EXeg0RwHQ4VyrNTsY5RHYOGi_fLeoylGACKtwVMNlCtUX-aJmxpytVTDya5i6A_PqLxPNNyKRJ8KErj6_igXBo7nB8juCqgnuBgct-qGKVlyjg8LmgGbXGzJi7eBW3aqJ6pURBbrKllkqAQ_VgUlYw-u-WUWYJi56w9rr8rcLJbzNV3BE1rbPSEoagGYbskVx7qzS65bpRxzRg2jjgBh9rR-0Um27YIeowhHPJU_uyh2HspbTcBYn9ihcYGeEoK94FIukRd0Y-Vqpv7fulZxNMxYaexAarjfCBvoZlIlfGV4bdtfWtdvS3T4ZotoTSBWPrkE33eP6JUjTbPhNeULhjfVvvsVslMU5Vvyxe9nAl5F5pnL0Lmoj0bay4R0l4NfNrH4nRyRsJ-LRXPD8Nn1u8V4NpBwwepluovTZXqqpgdmAwqQHCtNkHhfRHKBd1U3c9NUGK6XFqXaLsOSDrSt9uyYWqib_kGBddTc4KahESQSg1l-ZVd5eXlQ0t7GhnJl7aYazxm3Ve9iDOhDapBE1SCLtrNhqik044f-04X588Og-c6ZxZ2OXY_KYvGOlZLtFTl0HSFHcUFbtRSG6SziF4Fb1D5cx1O_L4vmIkENt75ox38T0ItxcZSbV3M_aZPb9BJu0Eku70-UnUe9FLyTwZrJbVtH5QPpmN79-8yofyje27v_9xj0EazHlYtSPmcMlsNKMOc0e8GD46zuxjmk27q10Os7zreNEqhmLdHDLnO7H3TynwfYdY9sWN833pxlgnMLCwMQTEIW3RZAw3vSQNng_Bmk6EJ5MiM9lKK7FDfnonmlDmlOY2tmGERh5GhqHnw5Cm1S5w7cT5ovzHTqZfFLt87G4S0ORPZe0cgHxXtUI1oTzplIhcewBtT6zW9Hwxms9_ZhSM6Z7dzwiB6-9JB9NHCYi-2qR6kDOPr8CGn81dVfnjWpLBgz1RQt3cl2fU7hw411QYE3RQbaGT0mH78DP13S4V-g2SGrp66o0yl2lIYsH2IG2nz97mAOqbCdZzDSkvRVSWcDapyqDSHCWmsUgXXKyqAY6lAfOppWZ_rgmOphb-vwlmQQDYZb_j_bNQ6mtm728aRtNW-lRzn1vPPPwelvcI0czAxqWbUXXJAbCH56dLqJVx-OkX84Vn0GbJHpfGe5v9lQof7j1Ei_Z_kneScKt_3fHC13pZt27eumWbFfZJmCbawUJxawFquDUFBqrvA0_-sh0CjlCigqAChrwPiQye-ce4yYhbMo-i5c-WP6Fyx7W-uzDJ6HI7LpgDB_WTnBmidMVFO1TfToTFjH4E-rze6e0lvdMTUV7hROSLwFUClyIkhkdt2qkdcxvPxIRtMg_-A2DoJ8eIBqXWr3olFv6APO_lVEumgwO-QSD97EW3BX84h8V9vGzCe9B8AAA';\nexport var itemContainerClass = 'styles_itemContainerClass__1f3rcn2r sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_justifyContent_center__1hu819ud1 sprinkles_alignItems_center__1hu819ucx sprinkles_position_relative__1hu819ude';\nexport var itemContainerOpenClass = 'styles_itemContainerOpenClass__1f3rcn2s';\nexport var itemsListClass = 'styles_itemsListClass__1f3rcn2m sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_overflow_auto__1hu819udl';\nexport var menuBodyClass = 'styles_menuBodyClass__1f3rcn2a sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_flexGrow_1__1hu819udc';\nexport var menuContainerClass = 'styles_menuContainerClass__1f3rcn21 sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_alignItems_center__1hu819ucx sprinkles_backgroundColor_neutral.white__1hu819ugm';\nexport var menuContainerOpenClass = 'styles_menuContainerOpenClass__1f3rcn22';\nexport var menuFooterClass = 'styles_menuFooterClass__1f3rcn2c sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct';\nexport var menuHeaderClass = 'styles_menuHeaderClass__1f3rcn24 sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_alignItems_center__1hu819ucx';\nexport var menuHeaderIconContainerClass = 'styles_menuHeaderIconContainerClass__1f3rcn27 sprinkles_display_flex_desktop__1hu819u5 sprinkles_alignItems_center__1hu819ucx sprinkles_justifyContent_center__1hu819ud1 sprinkles_cursor_pointer__1hu819uds';\nexport var menuHeaderOpenClass = 'styles_menuHeaderOpenClass__1f3rcn25';\nexport var menuItemWrapperClass = 'styles_menuItemWrapperClass__1f3rcn2p sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_position_relative__1hu819ude';\nexport var menuModalSearchContainerClass = 'styles_menuModalSearchContainerClass__1f3rcn210';\nexport var menuModalStyleClass = 'styles_menuModalStyleClass__1f3rcn2j sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_position_relative__1hu819ude sprinkles_backgroundColor_neutral.white__1hu819ugm';\nexport var menuPopupWrapperClass = 'styles_menuPopupWrapperClass__1f3rcn2g';\nexport var menuViewportClass = 'styles_menuViewportClass__1f3rcn2h';\nexport var modalHeaderClass = 'styles_modalHeaderClass__1f3rcn2k';\nexport var nothingFoundSpanClass = 'styles_nothingFoundSpanClass__1f3rcn2n';\nexport var profileImageClass = 'styles_profileImageClass__1f3rcn28';\nexport var searchContainerClass = 'styles_searchContainerClass__1f3rcn2e sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_justifyContent_center__1hu819ud1 sprinkles_alignItems_center__1hu819ucx sprinkles_cursor_pointer__1hu819uds sprinkles_position_relative__1hu819ude';\nexport var searchContainerOpenClass = 'styles_searchContainerOpenClass__1f3rcn2f';\nexport var styledCollapsiblePanelClass = 'styles_styledCollapsiblePanelClass__1f3rcn2t';\nexport var subItemContainerClass = 'styles_subItemContainerClass__1f3rcn2x sprinkles_display_flex_desktop__1hu819u5 sprinkles_alignItems_center__1hu819ucx sprinkles_position_relative__1hu819ude sprinkles_flexGrow_1__1hu819udc sprinkles_color_neutral.darker__1hu819ufc';\nexport var subitemContainerActiveClass = 'styles_subitemContainerActiveClass__1f3rcn2z';\nexport var subitemContainerClass = 'styles_subitemContainerClass__1f3rcn2y';\nexport var subitesInnerClass = 'styles_subitesInnerClass__1f3rcn2v sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_overflow_hidden__1hu819udj';","import type { HTMLAttributes } from \"react\";\nimport { useMenu } from \"../menuContext\";\nimport {\n subitemContainerActiveClass,\n subitemContainerClass,\n} from \"../styles.css\";\nimport type { MenuItemProps } from \"../types\";\n\ninterface MenuSubitemComponentProps extends HTMLAttributes<HTMLAnchorElement> {\n subitem: MenuItemProps;\n parentPath?: string;\n setSearch?: (value: string) => void;\n}\n\nexport const MenuSubitem = ({\n subitem,\n parentPath = \"\",\n setSearch,\n ...props\n}: MenuSubitemComponentProps) => {\n const SubitemComponent = useMenu();\n const pathToGo = subitem.function ? \"#\" : parentPath + subitem.path || \"#\";\n const isActive = pathToGo === window.location.pathname;\n\n const componentProps = {\n to: pathToGo,\n href: pathToGo,\n id: `menu-item-${subitem.path}`,\n className: `${subitemContainerClass} ${\n isActive ? subitemContainerActiveClass : \"\"\n }`,\n onClick: () => {\n setSearch?.(\"\");\n subitem.function?.();\n },\n ...props,\n };\n\n return (\n <SubitemComponent {...componentProps}>\n <span>{subitem.searchText || subitem.text}</span>\n </SubitemComponent>\n );\n};\n","import { MENU_CONSTANTS } from \"../../../utils/consts\";\nimport { MenuSubitem } from \"../MenuSubitem\";\nimport { nothingFoundSpanClass } from \"../styles.css\";\nimport type { MenuItemProps } from \"../types\";\n\ninterface MenuContentProps {\n activeSearch: string;\n sideBarOpen: boolean;\n searchItemsFiltered: MenuItemProps[];\n bodyItems: MenuItemProps[];\n onSearchChange: (value: string) => void;\n renderMenuItem: (item: MenuItemProps, index: number) => React.ReactNode;\n}\n\nexport const MenuContent = ({\n activeSearch,\n sideBarOpen,\n searchItemsFiltered,\n bodyItems,\n onSearchChange,\n renderMenuItem,\n}: MenuContentProps) => {\n if (activeSearch && sideBarOpen) {\n return searchItemsFiltered.length > 0 ? (\n searchItemsFiltered.map((item, index) => (\n <MenuSubitem\n key={(item.path || \"\") + index}\n subitem={item}\n setSearch={onSearchChange}\n />\n ))\n ) : (\n <span className={nothingFoundSpanClass} style={{ textAlign: \"center\" }}>\n {MENU_CONSTANTS.SEARCH.NO_RESULTS}\n </span>\n );\n }\n\n return bodyItems.map(renderMenuItem);\n};\n","import { NavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport { Image } from \"../../Image\";\nimport { IconCloseMenu, IconMenu } from \"../../icons\";\nimport { ScrollArea } from \"../../ScrollArea\";\nimport { MenuSubitem } from \"../MenuSubitem\";\nimport {\n menuHeaderClass,\n menuHeaderIconContainerClass,\n menuHeaderOpenClass,\n menuModalStyleClass,\n menuPopupWrapperClass,\n menuViewportClass,\n modalHeaderClass,\n profileImageClass,\n} from \"../styles.css\";\nimport type { ProfileItemProps } from \"../types\";\n\ninterface MenuHeaderProps {\n sideBarOpen: boolean;\n profile: ProfileItemProps;\n onToggleSidebar: () => void;\n}\n\nexport const MenuHeader = ({\n sideBarOpen,\n profile,\n onToggleSidebar,\n}: MenuHeaderProps) => {\n const hasSubitems = profile.subitems && profile.subitems.length > 0;\n\n return (\n <div\n className={`${menuHeaderClass} ${sideBarOpen ? menuHeaderOpenClass : \"\"}`}\n >\n <button\n onClick={onToggleSidebar}\n className={menuHeaderIconContainerClass}\n aria-label={sideBarOpen ? \"Fechar menu\" : \"Abrir menu\"}\n style={{ border: \"none\", background: \"none\" }}\n >\n {sideBarOpen ? (\n <IconCloseMenu id=\"icon-menu\" />\n ) : (\n <IconMenu id=\"icon-menu\" />\n )}\n </button>\n\n {sideBarOpen && <span>{profile.name}</span>}\n\n {hasSubitems ? (\n <NavigationMenu.Root delay={0} closeDelay={100} orientation=\"vertical\">\n <NavigationMenu.List>\n <NavigationMenu.Item>\n <NavigationMenu.Trigger\n nativeButton={false}\n render={\n <Image\n id=\"menu-item/profile\"\n src={profile.image ?? undefined}\n alt=\"Foto do perfil\"\n className={profileImageClass}\n />\n }\n />\n <NavigationMenu.Content className={menuModalStyleClass}>\n <span className={modalHeaderClass}>{profile.name}</span>\n <ScrollArea maxHeight=\"calc(100vh - 48px)\">\n <div>\n {profile.subitems?.map((subitem) => (\n <MenuSubitem\n key={`profile-subitem-${subitem.text}`}\n subitem={subitem}\n parentPath={profile.path}\n />\n ))}\n </div>\n </ScrollArea>\n </NavigationMenu.Content>\n </NavigationMenu.Item>\n </NavigationMenu.List>\n <NavigationMenu.Portal>\n <NavigationMenu.Positioner\n sideOffset={4}\n side=\"right\"\n align=\"start\"\n collisionAvoidance={{ align: \"none\" }}\n style={{ zIndex: 10 }}\n >\n <NavigationMenu.Popup className={menuPopupWrapperClass}>\n <NavigationMenu.Viewport className={menuViewportClass} />\n </NavigationMenu.Popup>\n </NavigationMenu.Positioner>\n </NavigationMenu.Portal>\n </NavigationMenu.Root>\n ) : (\n <Image\n id=\"menu-item/profile\"\n src={profile.image ?? undefined}\n alt=\"Foto do perfil\"\n className={profileImageClass}\n />\n )}\n </div>\n );\n};\n","import type React from \"react\";\nimport {\n type ElementType,\n forwardRef,\n type ImgHTMLAttributes,\n type SyntheticEvent,\n useEffect,\n useState,\n} from \"react\";\n\nimport * as styles from \"./styles.css\";\n\nexport interface ImageProps extends ImgHTMLAttributes<HTMLImageElement> {\n as?: ElementType;\n}\n\nexport const Image = forwardRef(function Image(\n { as: Component = \"img\", ...props }: ImageProps,\n ref: React.Ref<HTMLImageElement>,\n) {\n const {\n src,\n width,\n height,\n style: consumerStyle,\n className: consumerClassName = \"\",\n onError,\n ...rest\n } = props;\n const [errored, setErrored] = useState(false);\n\n useEffect(() => {\n setErrored(false);\n }, [src]);\n\n const handleError = (e: SyntheticEvent<HTMLImageElement, Event>) => {\n setErrored(true);\n onError?.(e);\n };\n\n if (src && !errored) {\n return <Component ref={ref} {...props} src={src} onError={handleError} />;\n }\n\n return (\n <div\n ref={ref as React.Ref<HTMLDivElement>}\n className={`${styles.placeholderContainer} ${consumerClassName}`}\n style={{\n width: width != null ? width : undefined,\n height: height != null ? height : undefined,\n ...consumerStyle,\n }}\n {...rest}\n />\n );\n});\n\nImage.displayName = \"Image\";\n","import 'src/components/Image/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-yaNw_2PLKee_-KLQ3ItnI6rpRzzmoWyjk8ypL_vPHuwgvbOP02HwEWJAacG3MRIIec_7Ef71jtf1_HrKjaZSyrjVvmI-vmavv738ulPCoc-tv_-i9_-1ueFUOzLedc_vduyprqP_52buN_LbMj-49_jMF1bv5nnu0Vgf23LmQt94Y0qVkYhmFML2iFoGEYJh4YhpF47s8sw2-JD1QMw2jsNAaR7CZ-cBMJQh_6JA45oo763B4F889m8zRWSGKfISGkSOqYIuNpe_p1klSnSONge2psBtDtxyyfRu3qyeubhibhj25fTUdvRU5nf5hmyw1RSfCdRyGUeCyWR89ZfCtme2qbSnSX-uuf8ZHGbqu_SlPxK5bHLJR9UBcJsKMI5lVMQWNyGKT3zOHG7Vr2Smc3S2PL6pD2q-cKSVNJ8J7PBlFM7mR76lLK7m111FWiJarPxadP9Ju-1GP5A65_zKt_yqvH6pB28FdFOJTEzZHPRq_0mKZwDPVnHWtwxwIx3-yPnog-lX_6a5OJhkse6pRmaRSO-ZfvNG7XtIe6THahgl8uHcG_f8V2Mq_co8dKGif9E06DozquYxqF-1dMoCxK_x_t-WycSeReyRSc_-CEums6JZfhYbf-Kn90Nv_0uTpZ3I652ApZBI_5bK45gtFKb6Dmf2o3_v922P-xK6VxSvtVzSNxTsNyTWV3sT3lM7_in3rlf2ggvAhuUyRU0micM9n5z9awi2kc89ltS2m88h7qDE-5_sGNo99USohgcCW7WSgd_b_2iP-P-Df_9s4s_34NHNP8c4_82_tfTP5i8heTv5j8xeQvJn8x-YvJX0z-qZWy0fZOInNLY6dJI_xPXoQqPQWUdoicf3IwpSVCsYWCSUQVmX1zJF1zKWhKebxTj_1HPsAwLIaMkfXeE-Mwj0ASMydcel4bixvkDP9-9aYv2zUYr2Aw3w6jMwN1YgBZaZslmbh22aU6itwMnQHLtXmXD7fm_U5zDNVKAUZc1dL1QBaZfUtMpGkeJwbNQ1x5iXpfdnijvxBUFGrFddCu_MNct4I-hJ2SHUDnAoaRMsgLXDaU-4yU0fx33tiHIDSIGabBNEa78GzCMwnTZPyt8VvtyTOpub9520iQbmEouuBYt37CEEdJ0GTVPhPZFgXaSNNH9ZYFISsgJsZc5DAWEIP3HlFiI0zszTQxEQwk_Qb2PGi6-2NmRl5MBJvZGudPf2fa5ma6EwGVa-QMjhQw5kVGFNo-SW-81nC_y9H3hWLAcirdnRXEVYxAjlrfjlbsXYT0qJHU_StOzpEBqQhnRYLAAZhKEgTC025vAONrsAgbnflZ10WDIKIPA3DHUWoAwN5DqrEjadMpE-r_WnoR1oLRKASzaRu7yeDZ6ppqweSoKrrHx0vdCVGsZo-6mpaAmFdXOcWkABzB-nKQf2h2mqxg27jAXqZKcbppZ1fYw9SxrSmZMUelnIq54aoFzb1lpXX0AR2t8SbFd5p3kN3UZvQW9AkTVWUPeRfGofIeGhqBuyKG8BRkCbNpruXAiJY0nKV5Tr5HTOaRrqK0Hshma6WIIns0-JOyavRPaPdfS9W4iCt2wR-k_8G_Au8B32ZYtU_WJbh8WJUHMP59rMPt_jfPmO0Fq3jG4SephXjBMeERyqirtTGqwGItGeTTDB7L5HBpUj9AwGCC-TgnTJHLEndLwNV4e7IDH5OchweLysiu6fYzXfv3bAEs4JdrJhBAfgQlgEpwY6OEG5BsS-5BTY2E4Frl2CDNIa-Tn7ouBaNzDROlvKjVFc2gDL8wTyukLp1V9i5bV1H8dclLNtmrJ0pprkFTTMEiW0Igty8EySRGUdTEU_tapM7MCFIjVU-ARsq5uRSPHK-xtM0JUUy7YN3d8v1O5TTg8dNRlASyw1ECuTMqy7GOPK_v_N363OMfeac3EDzahay7KnYsMZIqueusy9AW4WTkRKts_FZAPym9qJAye1WuSB0yqPYufKwgiUS5EYsdz8SwDQj4ALQ3fSdEJ2eAmqAQTwffQGpKZTx8vQK3ceGdgDWsA1211AFe30muIATjL0dVww0craPu-7hBRJMD4G42aHBiE63LPMUzmXZdS64kOugxUo6E4EZddLT4ahk1KGlXxIDPNN_Mhofz1bzp5KLfzKLJ2KNcQxmUQZmUGW13DsZQ7auh4jCCs2qjUn91Kig_ZlFdf-KeJnyY7YqP2aMND2g3lMkZlA9o94I0HVQZ8TQf4b6ULfUtU-nQQo7ezGXURDX4UPeE4wEPgshtZQHoyw_8d3ZvLWjo9TdB3b1frtnw-HBxLOx0PWFDwCyun8j221VXvnHzi1zw6zOWXpKtyhlXr4ez0-etu91u8VI127B0nzIPdIasbn_VsDBMinGIlSxF8ZTndPFh2qsMQ6hKCCuAXOSp2ntjzCefR0m51BXR27yhpfR7VU-ArFv0gO0yOq7OgTPpB3JG87xQw5bQ6iD0rxVCrpkV3BwivJzKbiQZ0PVNvMZbRrMV3wMSt8gP6avs9hTb5lhdafFFvrHxJjvLA2WBbe47kg-zk_Ez2H4FqjC_SV6QBszILt1Kof3RxI0kSD7Fku5lzi5UdVQGIn7JydXtnnruyvBnp14bPWpPK-DSbOPapquel_5zpu6339Jn4uR9MxLt5uPUNutPsgueYdTlNkItmZEnv5yhNlcLqz5Lb8OlEzaSStiWKm9PH07gzJcEQGdVckOqePelVWL22REQ0bi6xKrWcSG_0Rn5KfswAPuaVINQAX9kmKuvtqiVyFamxSC93uKd_eEswLznjMREo06kxAEy1hf51Jp8z5cMzAhjL1ip2ExN6-a_ayDg-a2gSwkeMc0JOwQ4hu5fn-M41ROURY7V7A0wO7-F1k7LoZaiSo0FynLBcgkEP8nVDopPVkbSH16CoopbSeTdFAYjLl3yFe9wb_87HP0S_JBwnIrY3kDP_ceUqxT_OFc6NfLW4BRXiCx0HLdvXP4Ez2TunPoT7GhyatTjbi5kxWqrV8pbvElx_ZNsUevj9IPd8Ec7AvGUiB5SgcsnoK57XGFweD-4RVlplVakBtRVZzo9Lf8ANtJZ8dmGGvbAGlTGYICeMP2qm9X3ZyHAa7LLDN8dEEPbAai98qO0W1NWZ5Fi8qZogAWcFealepIyI890rejiRo4vJ0PlNP8K1qpXjcINHKxy1GYTAHhLl-0jtOuY5qLk86FHePImgWiA4DSYi4ijqwFdgh46FWWQ0OkuY1kXtJ58zJYF1ZVx-J6QfIOh67NXugD1zJaOeol__QsKHMx3kts8_VKIiK-ilUQdvHUeKAxADejAncWRsUpp2LXVUqMTFYZlpU_WA5zXXBguUCxgjKc9Qf9XkSRCoGspM3FFWLJqcGiDxMpDVWQpQ43KVA761v0WpfYt2-PaD-bOlUVDo7LY4Hp2qM369XGBJbDN2SxDYU1-ha2NOgrxwZc3AzVcQL5NuL4yPmRoLXfX6hQciOgL7GEoXS6hFP4b8K-z8OlCEQVzC4yUv5vQRIw6F66BH_OmdoVnm0k0f7so1rQMr0HhsMYwLQ6yKBW_yKZT0ALjkrp0xtVIQA1V8MuvndJvLXKRrvYhVyKiVsQf_EHFE5DfvXe4w9qVuZsCIyUFzLMtM0A21Ffd0AoCMsASYpBMn4tTNCktyt-_ZFTUkg--eMjYxT3OpQGuRXI_zdS7hqVOc8VNzzZnE7HCHORuVzSlxrnjmsXpkkPkylEA5r5yRZTzsPOg6sQVxZ_vHwPvS4SZyhxYdXLT4wC2MSKPv-qWtyD4ZsGJUQZBRkbbuhrEVgIcUFPBXYXVveKcD4AahcDq5pbIfyAAj6NgCdT0tg_7MS6_afPK3jGhvbmxcDknEDnSWqANxksEJ7Ci5jeYui9qDv7rJr6deiVIpfPOpPyHDmCGosaS543djfbcSQJMWfGLzw9BNUZZc8gzhJe3rq9zOHjicvrUQ6uQCwB4LA5B5Qkhhhw6ShNecpobpA1kdGPx4i_HBpyqj7kcRybEzxlLZ0iN8iSQMrx_IhRNe5sAu4tBmV9KMpH3iZG23fDrdNzgm2v4Do4QA8xm_36YiVILVPjwhGB684xpa8f-SD1ruwF6bhFg5BngtaxrJ3dR0C1XizD4t8yN7nV6ofOoD3DNWV_AiUlo4ujj8eMu_NzuuN0diDN9DnJcHknsRU1t6bWRtKIUnSKrUSZjlT9PZQQd7q4AL-Jr6SLNmzyhlrevjXy5tW0KR4A6TA968iM5VFw4mixIl0lzVuLKBRcrknOuvnY2qcw4WHPEW6nsCKMQMiXYyjHjl259gpXDE_im-JAkwj2OdNobqwDeURg4dK5leI8BxU4RmQLxn7PPwvieNn9iZfd7ePN9DYx9NP_R4mZtBMPj1dT-dV9Q3UZpSmoMBbrwpFK6DqdKIwd8nNOqwxz4aHQO4WGhL-bikblm06NQB--Oh9QgJNOAi66s-hhg2I6A3YJlFtq-M0E09Dunwq8oUT1_S-Pojcu9jMUbmxygiYa219iZ-XzyuZIwmxrUdMIzVU8OfW5e_7hRqZxTQN3ffupz_tDUoVUpMlg4zY33I9Mn7q7q5XIQ7yS--jXexZVrjLIQOTCxJ5wf9Bq5n8dcPxy11Lpj9Wwx5kMhuBkV8uEXahpdszo9TK84Ht6nvUvqiWJCo8wpMeqfwbFD9LDYrkc9_qDwMXIMSWxFnYhD9zMx-kpeGP51VcKoNaQg18UR7GoDHhYp8J4KAGEhe0ZalTmDBfDmWz4s7gZYo4RrI3YkRiLOxvGdpfCwuDp40-6YHKFqV6ccIJiTGn_raq8Bi58E7pBvjW7RlNRp-iG4NxkynJ2VNQD7dHip-6Hfch7zhuAYBs0cWsqIM0kLDAb-3KmXUYPioeGR4KLd7J9IZZV23vLT41dkJ5jOYho4DU2sEuN2cwE7WwovURxrArAVLV6Bl8lEmJ6sbLIAQiVT1JejMCKiGfbFxKveEaybrTIJzO00mlJFXNFnu07yPdZ6acrgc9tQg-CvpkkNNQryDCFa_xnKiXyXYPtjE6OXrv1AFGvmaRisJ9ZND-Lsr_qm0wcN3r88rJnQxGVnn29IKpd5NKMV_lUi_WvVhaPwx4eHbeo1QGQfmRmJzAyv_r2D3jvMrnCpUW_On8pQwhcUef2VQW36j5nDEbAa7nWULM0nDBWPkrbGqHkZgbWXWD9znowvGPkmO7-0qcMsXAAi6pnF0bM2EPu1R5_YLOBun6ueiBIjoCi_vDxaV09pG0KLkAkG8Zsz3M8VoIEBpJPE-FnUUdTefRzAiq7ZtZOVz43qo-9l7gQFdn3z0REqf2bwPPdW9ADQ7S4l9kho9E-3AYD7y94Irews7FztEpn-5jDAQHghXuzaHO6-kaf05v1DzS67ik_CO1PGOgsmawfgsFL4JSxQa0k-mC00e_o3OJmwH9L4UsahVHBuBbRjzUJjqOT8M7BD1SDlNClaMI3hHm52DGfBnQAeAzt0SeetlhP10AuesEaU5NZ4SEpXA9pf4qCc4Bcy3Tw1yq4tZW27ldR7VN8y-9wQNpVOFoq4SJDtE6uchCK0xbHSZorjftOeTSMjv83UaXwY0pj6QStxtxoJGEHUnyOfMWvVnMd5nmj9SsBDm3rBSelTN5VmB35X4Oog5Aug1q4_JkqUHgWRn12gfmKAhA1t-3gSV6tSq960DuSoFae4_BIJPvBwVhFcdtHS9Mgn9T6bfdB1iBM2SZscPHGaPCqfGLt0lI5WXqA83UZQnk1IRijpc38Qb_LrG9ltwJzn8l1qSBfdA5FQIJniaGFWNdRhMWt6I11UDduiM3tICS6YdZr2wplU-4akJdnIH6xkVannD1q_urGa6pqHoHfyjJWo926e_LhR0Mbdru2jtMPLqTFvaAYXu6SkdEaIVJlQexr2PxJzkLYxsi1kQJ_GzAG38vJGobWa9OVHvfisceo04XD55Ebekho4XdIr_96VhpZ59hWG4Yz3woWtAmveNLZO4kiRfMDcGNgzvkq38D9orkBtISqO3O6yV_R6lTxt54bY-ZBhckVR-OUcf33WXZPcC-DXfseFiSD0U4u79bGbLayV5tCIV0vcs6M4KvBj4PnzXcaALAp690EzsUFhlJxGlcIdsB3xrbqoX-VqrR6ghkknmlgX8BZhxpbN8WBDKnI-Y3YVPZtvJ-0q1trSZGQ1ga2pvI1igJs-VsaeZd8wH847F29VaUtkESpFwkhXD4oOQ9ZaXqZTApnTD0ce1p0ozx1zVePtVQY7DFuV2_xEnt4Pe7KJihrlW2xKY6dAsYdsK4UA255HSeBjWX_z2lzx8KtxE4_t5GQ5WnGWrcpQIJLdd_p-2Fjp_qt2Gd_KlH65uURRve5rYFN1I04rc4OGpPVQ9H24uKB8hxLJqcQeK6z3nA-1lWp1FuuYSau9HDuvIClPGxpVTNjW8M5MNJdjD-6NY-Ud_Trhhl7WA3kPjJXcspjH7FqNJY8UkkJJzzzaEZOL2sm-em6CCngKC8envcnPgYtkHVODe-WuZD35YHnnEAnheob7SeE1DYD6IH9636t-2rqZI0LilzF0Nj90NMdeqj0wEZ1Ch3W8sSVVKuEdUmkRVV3QJ8gtSiPD-RvUTj4Fm7OW4nf45Judxi5jcqHzVbxKgg-EtQhzALY0e1ePSa9bZ8mChspScaO3R9jhODbi6vrqHBMuxAjxWVNrSv_RaY6oADAb2T3SZi3iiKYbfJ_B3qejLbvS2jWZnqEvT8w6xiX3gWkpQ-S734pQOGLm2Amx_rmY3bqhnTzCJ8NVSEln1CRHNlFcyVdvCY2-A5KTNBazNJL1QonhyYGjGYrH1HE5F5lFqWbxxjJYs-zx3gn-Sokmg4nALV5tXlbi2jX8US4rQKdP01oPh16RR9VE_JhplqzKzhM4pZgrS-AJAJ_pevOUYGoojqFo0CJauzZU69-oHgd6aYftUaT00n-Osjw_ZC_OL6LjZ-V94JmTH686TxZ26ZGD9UZ0YoWpVGwzAkN2AafaJDPpxgt8z717Le2Tp7qRjSlKQLK5BI1C1tMOgJJ_9WjfSLU2EX2mG-drpnyxb3TkpzeDUonvJYxXC4qNrgIbjmv-Mt4nHu3XTXsYWx6fMDHTQ1Fe1GXafZHYuFrp1VG1dDYY7iMU31EadR6KsQFB-00IBKCBTaPanukRyV9x6xoddD85N1d52Iee7Ly39eCbgGh_r1Sdakr66eGfDwE7DEC9ECfBWd9xnlEIU5aVdng-SFPctC3AARKpWjvk8F7bbKsluPj5lerpVO5rtKeTHujtK880tPKeVZiWQXzBZA5nRgcNym7XPHV1Y-cMusLK3ZlH2IiTxJ9Xissw-D3nFxs0OrLQObtPX6FW5YlfpoAKr0z8zj1Qfl_CCIjKYJ-RNfxy-GCH8SX3nv2dN0rBtTh8gVyRaVixB5M_GaUza3QE0v2TxXnLS7LiZjZ9CPxYk-gk3zsHonkCTw5XApWybGxl3E9SHRxNIBmVvQChpxTaEH0s33kGtyHQquQzLEfThg3NjIhRnnDaNrTvk0IdqBcTIs0E11IssvJMs5Nh9fpZ4nrMX8hX2AcLOBOaBg_lzCLeblHsJas0yJK3PQH81eoydo9pUnXs3h_o8Zbr2Njokubvag-xm0ZVXpKMApMeCV7Fm9IqfAbO-Klly2qAwpWJ0e40F6sd1Kb4r1etsyiIjC9GnlTCeP2-uTeg-8WbI2cgxwI6pkL3UxPryTeOJ3iMWwjwJc6rK9n6z679L3iSDAfMqvgunmOhPam5J10RyiNBxPV9XuzBa7qu8ZcuOFConvZCACQNuBgk7eU_QlNNGGcCL8QZTC4lLCzIueafNV4gIWIl4YHrFTX6KGRZ3BvjCXh2cMzDKDPWSdoWdocZsx6XoPeFN2vuD5XYXqqlnU9sqbQL6J0c764c5jUsadvuEL_nyT59fC1DHfJDdyuk3h-nX-q4W36PZfp9tWsi_gqBANRr_Lb5LRy2MxmlCm8aRQ3kCP_cSkbSZFmP9rjhxDBbXftsFzV_hoDKvqDjaVBEElVormiQVC5QBswqoaY4YZgPcNueNjAGl6mye2AlMtDpp-X0rW8yfFsFr7EOvuXnYiUBBuUx7L1Kdr89FOyIwX-KR28alL7QkzMHaxJ18JgFhl8xUy7goZ0aLHlsjNf06nz1A6cyVuXUqJWWSDhR2z56NNapqAP9XYkirSerdiSnSlFMPzu-_zvwKvyCJBSmmw_XLs1kcInXZT_46oT9QLaPxNuri74xdX4Fk6xgVbHuEaDnzyBbW7SvO9t1GhLhRhZanLghy1rWkRi88snEFinkm3EieA4FUQiH9pB_NZaVlj99eU6Szen3k2mqkBeMmt-T8zoCFT0mZn4YqVGqJv8j8S0lqda3TGDZrDG9DUkCtanZAtgxpR20o6A8ifHLnVmupdvh019k9TMLlba6Zlb9AbtRxj1YRu455e0P5iAYV3QD6EBWhPICfz4_dkGGymPAPJClVa48Glac6DxjOhyZ5vgQnc-weqHFJc_1pI_2IsUdVh0xtK18EthsumQkTZNCp4RVOfhzPu-lRGMf3dysOR52-VAxRYIJVORf6VNaXyKpR_5-CI2F_FxXKFRY65zAyp5GFDL5evSQNfS7S8eFZO0sTRf6lHt7le0kHWhhAKktHjg6Neikif1-ctlbD8484LKIN5Ev0VU30QqiNqHuZjDVd4Yt3yDoW3sD9MaOAYRnUGX2cJR0v1gvoJs4uZ_gpZh6YkfMzZvsGhLY4svPfwyDhOB9EFMI8JlMGW6-441GDaY7HoPN4iff5bcGryxXGm7ulrOAEYBy3YAm-wFamPd43n0q-jtyowy8K4nU6kazgz6MDKtlLk1PVwaTxH7cNj5sT6Dmy4Cad2m-JRqw3khieF-zTnbCWKE257cjNBhoOtcZT7q8Gr_KtyJEmBKCXqq7Vq4yds8pTcbKg4w1PnZ3UUYAOgPTgqIXfGic0k0ZFXxiDjl9CCm4lndYLaUiperYDYb9ggfoEdUzL-6GBuyYDseLWs_ngFim-xJRapoC8HAtPNmod0MAkimXHc4h4tVA96D1uaxx4cgyumANJ2tATZ-UmHJIYBPK7AexUh3Pz2h6UuCQo1jhQPlIPl_KzVheiqGNOF9vjR0rG7-6IqjIAHh5sa49kTycIz-ViM7AfBm8BklDPif8qNLsfYlJu8QQ5jwEJkKJpoF0oM3JTZ4MYrU0bF6mSdhUi6IFLi6e7K-mxzEwUvcK6qoP1_lhUTtvTqbwyu7VrTDWCcyPub6hw8aWuEn2SLPzaDZNJL8xm5KazJiZrXk5OrllRn_yw8C-nTnsKiFtpZS6IRErryWhbgEcNZ3ycUiqAcv4WYk9suqhRnybTei4jN8CIgsYF5x-R4dRSvTt9ayF2IIUYgW8BwzozNbzVb-fJ_sQ5tJvzDww_ivzncgLgasegCex7_lpCFmUIOVNPqBJSZWfbudzojCDHKn4pttbXibco1r8kP5Dc3Pkv_YCnt7TuIiKHhV9lI7EzWBTeetbiHzoi9P1hp21gBaTHgrlqc86Vy7Pe6tdAP8zHq_gokw7U59DiDMYZstC1-nBlo5qeWp4nx3ue5efWUl0bOZY5MlZ5xF3VmflBqrbAhS9TF1kiIRvOoOJQms91xyONYCTe7njOapq09pZyVV1rU1arM7rpHt6EaEi0Uhd9J--BLMNsbtjD7RsLvqRFn1t5h39_KJyqRq5zEzNsDghYoSuG9Zh687OOm04NyJeHp4rTkEtkSypsrwItUUgtxTf7Z--Ggmg4oen3O8HqbrbopctBmCSi4UVqJ0fnssKVS9cVGLLiRRygPWJA1Y-a0Ph1zikhbHd-8TA3o1vyxhGBrqqBAMdO04HPYx09T0Cz9kmr9JnR10KsGDtY8Keusl5TzrBxPq3gBBwRc0fjlzKA4omqzKpKkXtjqZfj3wN08nL88NfkkgiTgoT6QUwk_8gpOJ85cU9_nLQX1BqVSb2eAuz-zVC1xGDmbJRQa3WimbRUYknnDH0GQ4DYiuQHe1XIv2b3HyvCLYIF51-LMNc-sOk6otA3vydU_IzbjLDSG8Da6uEi0u8KnGt4lc8zk8ackb0bslNh_GBJlhxhqgNmYuovgw2F7Y3_DctEGghwHUuQbPCQ8CDacOqW3000QIjQ6C9SMwlIPNCprJh_eW1J-AuxrMHETCI0uAp5PIpvG4aQyv_vGxx64_0gGQeSnTkePPCfbhCgZ2rpwaauPCXQtwK094OnfpHUhGZ90jkyi5euZZXFBTh3pGwgTk1V342tU-S7-J73-lJYnbOWvLvxjVnMfxXhzmHBQiGBB2TCIfD2nOAukY_O5gT64PDBJvTG-8POyu3wZjp7DZH4dbF3wGEIv7UtZABRlurbhaJDO0D2JNtPT_8ndP0lgBpnXHujxxL6RCJ95BnTowEW7JQwWvyQWeZEOTAtfIbCckK2OZm35nf_gyl_AYc461B6b0l8M7nW1glI7DyyoE9bvqcHDt5pe2U7py_ngqEGRZZtPBEWUZjb71YzXl8UL292qmx1uQ29nxnY4Ym4IoQWS8H8EEEVxn1hRlmCzI8pAtdDqBpB8gHLnhaQo-Cz0zBm8jRwM7x7VfJc5vZnRGPpNYiEMnAzfjkbLLKoPi6F6S6mNUg7SiyAtq6XImrF91Pib5L1JBuMhek15sOR3f24cUBqYThJzgA6sW4csqhDDRsD0xsDzRKT8PW8FV5I5swQULjVUFh-AN0R1UAujDKmML7DMCQ2tHfK35FKa6aaIBoqqQhINDW4zUF-m-H4nleJjIW82qoldpwyUU_7bblProCe_SBn5IZhMBs4KZOz6_OXFytXwP-cJ6cRLFhBPE3fqrYT0iIFAtU7Jp4oYxqrTLUVq7mh25pft9w_cBI0HbobtjG2tGSGs8R7YIe8EDGSdLL9nvHAgFAAxyys2eJFzT1atdyuvksUSHYCuk61GEkLfCS1F7-An-TbA5tCyY8lLQnOwLjIXUeAKSNsaRvu1Iuili_AV1kltTtmh5Pp0wEX2PaMmpx9NTRfGjoJFe6PAkU3JRiYPk8EUymkYteLVoX2GtgE4wky6mg9QLh7eX1HULXWlEmjOnn92V6o8-egxmaT0byCzpo11zHSunIApJVdS3CUkx84OmUhyMVNxXKXyau9_MFgC-S1ACUyFvNZq9enW_Pjwz90uTXiwfRwKhogtq15ld1Wo1EwzgfvtZVaPRbrLUD_tgaWd6JTJt9HiKv9gOjVrdhpGyyhKx2AAiQPTiaU304hLbFd1b-cncq26N0t_EKnS0in_LYcHoRb7lCncavWpU4bXQDLd-yBa2lBV6Tb3qo0fRXlvh5Q799owagzhBypICgnjRR05VHQQukpWuCF-KUsHFrYIHE-zrZfEZ_qnYKJeVEfU1mSciQB5HNBeUHiOQVjCdqIm66BL_dCkzQZlU8NlS_iyDQz2CQc8mWZoXxTGuCfNG46odLLCIKZcFYeYPr_FFE3n0H0yYpDudklNC5-A1JEG47L_7Iy82xgBpBLHNPc7LXs0mcbAmz0lyDnvfRdDvRaPaFGDAvwazYr9f1FE6YkxvKYc6e1DgbqvcRIbUdqIggya2O5JiFTGiM9SCc73sjXAUX0AfySA_23gxfo9_V3C-VSxbhEl7IQ9KOVO1RXnLKjhyNAh02kfWD03DHA2xxfz7WN-fysfa-KreV6ZmHKM1joOd0Uy1yyxKIOaIAHIW4GVrjud1XuUP1zR1ThOUCXMHM-atI6lP7vFxt8LRZHyuF25UsNlthfiJ_KmpUJuLWP-_QewiwkQvf6qEDSIwdoq3af7dwa99JaEe-VBbNWVre44u5yGj2hYyfVVKzvIGTaMnjICGttZ-h_364_uedHhFPZxVplBRJj3_zCwpBNOc2tQBeFfhRA_nICNufOZoq9jsmoEo2j6M1qFY_MYdA0ZN9SiD3ZUTG-46tNK1INCBRYrzrCSq9NwC5FznSurkKB0p_ojNmCipi992Vt3KYOT9SYxGD_WV81wLNnd_685ejiIZKYS7NaqeFBNlKhYXF5_KaFtnLf-ap_MLpac1NyzY97PLMRzbtYO0EX3R5LuJwWFyAfJFKV4x-46CvL0xS8PDJprmEOkDl9D0Iq5wyERa9LhLA00_zIGhQWXGTPHmGCmefAc_XbxGsj1W9jer1oQ0tZrAYx9uxEJ5HruGtPtFSFd1L5How8uzxp1_UGaNj8oyi7DMT2T8jSoSSELUa5DhHxfXdLbtcjci6C5Gg2gxY8s0WrcPkIEyvRc_BNCTqyiHvY2oDi2P8Nnm6CeFVfIEWBfZA6qLyatgcl5LHIju8LolxZMZbwyWvPl0yV7tdVGDWWIR3QzRbRTeuqrOYPM8NgNaQX9XT0fd0FKkKnWwHAdJmZMhWrr_JHF1E7a3ryzwY5otdQ1STj5nUH3T3W2RIK17MMxeOEVDda3jiFo_9egwcIjDz4wIXK0IS4pwO9z8suMFIt6fpDOMMTFtnvgvw3u1IGWLfPlfdw3ruGBaBfqb71LbdrmyBOlqj73n6146Kntd2YiRl0Aal7rgondqZMH52VfaG7ODLCQzsgbeESf0ihJLFoCuTUSY0oAH1CZfylGE1FT8_XLRR4SvjCrdy_V3xzMUnBF6xxU2JOb8VxsETr2BpU-3A_fWyE0YSmxivWxgzopYCsTAyIZX3qgnPdqRtdB4V8OHewqGtI5dwCUkzQnPq7Sj8coQYKx7nayO6zo1_UZ04YgT233FCFTXEzSydPqaJlZcfQHLVGvWECf0jJRgb7bvi8lDDA-oz34VeZIFd4d17PJDY2e8krj0Q9y617Ozp1uTA1lv7VsReURShRfFmpkeXVEPGw0v9TDQ7Pkn-Yaq1gczQYy-8xBDzrABToq6ZaevoTwAzfurhZ27aBkEuT2SB-xR8jnpNNHLfpd4kRO1t6zh4qNn4cQdOkoiVXXChQzDKUzRnjt-lUrhAb3gc7Dl4kQ22vd2EXBZm-eOUWHgw5JyURVnJVBXugrxbpaWOKPQlvOty7p0md0MMODcCf5FGPTbiTTo5CIykvNbH1-MpAR-Rj-tC6scADCwAZVVAZmwCRQ47dfsM2_4bY7sd1tvMJ41bWWrkaev4ikAIZj0ht1B84R2-ENExtzAXhb8V-4TnIkNos0qk9BDoy1GjaSQSF_HBgfcJxRu4yNk1iXdzxhE3x3oDok1tT4ewdWvCs3pEBnZaqcceSrffqZc49hkNM2CWusV2eMC4m-ZLmoaonCB39UwDwKLHAfYNIPdqimuaTQescUaeW1j2ufgQAHlJ07kOf4r-tGpnqdbgT9tH1AVh6qICQ1D9WJ-h45v6NwaY4Bxj3kYIRWc8bLIKjBRj2EPQpcqkMF1X2VsSKNOhBemT0RaXs06-5fBPaYR4UXTFlVaAFVQIKwus6AvYOl7P8KMKZyrtgku1TPIItZkq0biz0D8yjFbhDf8FRatAAdivcES-bJGMYjrZmqEIKws8bkJ6nnN2ClX7-afQl9IcaCgoWZNG11dsqCM9pzLHrUuLudRyBhuybj5gNfaneFkbAZEBRLOKGWSs-YdEQNVtkvGhVVYApiO9zxVCmpp0SPpghwX3SPjb4AwO8pbBPVIswfvLUjQL2yioTorKkZhIry9rr0rk9Rf-sXPlphPIkuSKn-P3KwDB9Tn9KgsPSW38V4M3B49WQpZgL1IesXdpr-ycx59_ygL4Vm944Ybh9AlUE5K4vSyQCTwh9TO4H_Ni1wCUjYsAuh8sFX9G8z3ncw64beRuuAw9NyhLxXq7MwNcY5mZgx15koBeC9T71tqKCsPAxxi3SsKM3TsByXYRDZ8Tr0U8qURjcB8VZONFrvCtGIM9ifJ7wotsDW7eLB4tkzhDQqTMxesYZIi37r5RnJKRdetaEZ4YIITJea72NwCX2zpDYK5St_fbLZcq989irK8eJqrrTX1cPcBuahHHbO6MddlnUzz0A1wBxYc_jCqjxSENAj9rFmC1fyqzuDY8tTMDa_FXSBRVDu41OZzv9V0tVxTmbTj3A2_5uLISx0VVhDjEfkeU0vijzkNb4C3ahxTy3NWq3RpsxjNhYSNocs44y8ka1iuVRTaTRII4J6JtyzvBpNFoc_iD_N0VaBxBXZW_LN80035aHSA07TKiwP2lWqilc0NzBcrNXmjnI5Rmy6nsFih2Go1eQs3Ar6zNqvfL2GXJk4nOUL32ukRfL_o5oUUdN9YA0kGO6BFa1dLaNNIOuGxG1cSB0DBCz6EDCkzfYb5VJ6HLz9f9QQE1AZa2MVF3aekkBNMwRbTwZa8eiflT7BAhMmV_I53olUFwD9-6zgFZvz3-k4-ftVXzGl_oD0NO7eqiG_AL0Uq1dUYRMxrT-ZEREm3X4dh0HtxStjVaDhx_ISdab__2xNanW1crSBWAMUqac9JFGSdJhp0COXRzif2VtmB1mwz_SBjELZvB0GCq9OAbthkhuUBKeBy4HWBwwZ_Y_wSqK_Az45QdiogwC1hl9f1m2kaDvBPD9cMKIqpx7eK9x_JSVYNFG1Dbslza2xYA4BtuymCT0rP4JQWGugVUopy7ZH6-agsssUxVIVdsl6RiJJwiX2-mtPbp9hv6NKanzQgLDHNC_UR8Kqt0X2kNGwp5tWKltCnvOgUxuRPdl0fyXbTrl8SC4kVMjYRlZHTIG20R3eVqRFObUQ4tDbQGR3YNT0KWefaqY1MrWrzkwOUbKCkQ0L-sQO7UztmK05oZEiNzkNzKuvSraDdWkB6t-V0bkEPQiXnPZ0K6ou8eSyE0sXg-id5tN_DShEML4RSp0a8h4BWgR3wyt4o01-ce8yYHH4ZHQceWaTVCWdVd0LtUPdSnGCRXZ8MDO71XFP96TibTUzYULJqB-b65w2yldDh-7gdyzXr4CUvb7gqA22yow_jBHhYzQszjB01hC1odGaDio5UqaCiFoD5TjlDJvjD-RDg99qvAKJkxywM55zTsNC6chqzW_3xLwex95m3XP3TjFbGDv4krrombfssZGbK_TWsdJj4VDrhJY1Scns9zEmSrlJl2iCUq9XtahiOdS1p8LVvs1xtAWCmU_1ALFE-xj8i15NUjjPFzOBsiy3zcprqXAsiwJQVYm2StMIGxd366CR7JOcYDE6MrZ3ue044wEIKcDlqswEjfT3-yRHXrfNvV0-LXGLRuB3FgqISMhjhehqTTBlGNyYcayBBvDfrzVrSCosZKD3I4yRFs0ZjlF3Ra3CNmqHkHFLDaWj3w78SkpXTlPwWdZI4yFZ6kU2HlypaUWOrik3y3D4b9gCyQ9hFhLPv0VprCuPIypNcwG9Biu88PZxAgHfgXUMX4mEphzRN5JNPy3ilAkLmKnGvbEZ6KvswkU5RE9SRSkZHnve9NLRX6YMqBayyVj3eYeC44RZsoCZMNBhVWrvBLsVUJ2ZA-vSYqtgKyeZt5hTBbT5qgX2hQYuj6qaj3QlERgKgQJlSuZpkc8OB6ELGZbi5bUFmvLy8nUUQyB5kUHOkPQjMAnaTO7QXChxHa3pDKhw9qvhsau-aylypwYkQcKK4cTM3SxNzAKXb9NoGoS4gdFsbx56OPnWpqVLk2IGSVArE6C1Zk2lksfriESN6pw6kpo9OmSR9mVjcqUC5VHAsQua27q47rXYlYb-4BFLdOGmH-XH3QQ-Y5y1vmCOPXgtLt6cTvKqBEOLyR0cPzWKX6znpI8BvPYxtVwjVVl6nim-ZrBnBvJgYTwTygejKWlp___AtBt3RbHJGRrj1A8MHX-G1-vBSlLJuswq0UJDus5MlydcZMge4El81_tZ9E7tCuZ3Cr4UPyPhCdt8kEUIfzaiedkWcDT5LXc_MLwbu_Yw2l4EdQZUGv3VdK-LjWmYKewPCgqMrToZ272nbkKYZIcfeXcg_5Q8WOq8vnK3_UcwgkcsIBhlDXvCBM9ZnMDRaO3oh3UTykQXS2K_JVAo67GT5KdFVlUXVDlCUUtygK_M01VMP7sADMi8dbO98nmAFfdTd8dEOLSvrkqGIFP5l-sMcFCYj5slA3CVoPr9x-e-d5WTzmL30yGcokjcUnbSr74VR3XA-mIC5UKkgIVjcjwqjZx8zLFUZGBD7Qi3tt02FC6xrzGY2flApRxK_BznmvGO3JS-1nWUfyiHN4jPJYIYh-SzSUHv1zkFpUePRiSj8X_L5nxbXZf0PDkUQvVCNV4_dwB_iqa9GQVaQfd4P5jWhZ7cmEPHh9AaRnCLh4s7BheaC_V3CTXpSoVxWD5uOnz5J9D4Qd4viy31sgSB2ywoIop1A0iA3wNVSO85fad6_OerGlr75Iz8aQPSZUREn6XJnY7uSfGre23tdh7DM9-5wJ5FOLy7LCwz5hl0CcV3eIwfCSl5lkddMZHffnSdL5U6osjbBdUgwav9mzUeJlDn6wwl1avcYxEExmHmEFZm1WumaeSnHE-akmbP98D-OX0F-Dhy5Mvf-tAPf1xUbY7nms5UMV5VQaXngml9-YsL_RISLnr1KlBd00iYDdcMPuRDSZo15mF6WtfJRuEYk9U4RWo0Sh8ec53bf6HUuv48z0pC5pCy-AgFdVaPfbQZl8cnADJMUu9Q4g3Vl7d2WNquQEvwBNt5BqC_LXktObI2r0vxm7i1yLuVwLwANKI0zNMHNyAr0wM2f0pVutX0-vVDUHy9qyvb6duvkaGcd2vUikBnAWeQ44-w4738eWGT9gj3t2__SVgmFoVaCVyEAY08n1AvchnjaK7c43wIohO10Mq3LeR4gVAroW05kws9eD1aILuBpjWj6bbmTiYodUbZPklxtveTHFBsnGOlYLqcTC-iH1mD4TD_76p22_Z77Q9VjeaRc0faO1mOoNVzzsXdqBwfQGAT6vW_DmltFozYueteh7ucI1G1_MJW9BeP7sSH0ezCA7Y1KmHt20T54bdg63l9t_NvNTSr2PSniQYvOgrnQ7qpErbeCFClK2aAVb_LXM75FOSXo3GCR1sYpkUsvQQn9ZV0z5WFH9jTa7eNi3S2XbO_xvB4zLVP3iOZM-LvyGKlHRiZAdari1MgQE3aXUZJNLLN5m24HJrKwcls48mRKpmnwgSJX1xFAw_Zbx186Ig3-Z-cpK4maF6qjqTnw_Gg1zry6a4WgIxYaz27DDRwxhet7kJ6OKDgPjBSs2s6iiHNcf16OhUaqaQCcZmte-_FFotNk-zKlcz6XEmyH64WhBTLXLQUvDECPj7S36eqSOY1t8o2tHfpKlmwjSvmIN800L6QDjOYgwv6SyzJZIzM0Hh2fiD73Y1vx2mEZkD-ALgvKt4xtcy9Dy6ON-I0UoxiNPQQl8FDQqcvpSlYmWqoin8NQ4gF6dlhNcuim4-hKFPchrjNDvSOPCT2pTtXjlM0EacY-J0KHnpl9vMHkaDDnXO0PPlLcMt54H_IwaToOCm0Hwe5UnuCLH3Ou45lKT8jcncmcZUSPDUFA8PSWZ5NPJxz2gBERDDtwb2CoIiX2hQMWRoihwl1KvJpmFZYr2S668I4xJ4WdEIbss09E9Kr3Lkslh_uMOdMiEhX_wI6CLrUuSk_raq0Olz_ma13I62C_q84-OB2PicvTV4twuYSYk4EWd_C89LeZZMDl9HMOopliEqUVRRg7SCMalGuQ5jBg2KTcBa2uIqMQTpb3yo-06RWFjSlcILwZY-Cc_cKhil14LtvwLN_rGOMAAJJ9j_yw1U9OaPEaTxqVJ60D2X0Ftka0RPLeyO_HwJZdxlYQEvwLG7xiOUcMXCMiDsMQm0P37xvuubK44CHUlyqQ4putC3H0UkkJMdIXGG5uQNXrkwU500a4AgGeRDHVg9oiLWFemJqydN4yj0HAST7HdNmhNSEgULDLFQVtBR0eu5WezAkhSLwepNR9YGMgUDg71eFJdSicABUeiaVhKwY8JI280Iko93l0YlxCDzaH0yVHV8QQBaeS8AxynyZkGp1H5FaRgUqTCwFiio9Bu3H9pZCX_QenvtyrISkPivAbfi4GHsw_6Fx44Hh3o1-Z5Q5Lx6M5sC7MkgNPfFcO0ZE6WEUYlnHtkKgKoflL1Zocq6j2RZ23tCyIi2dBxXhxUriCkl5nJBFC-cVfZSxY3xT1DUh3RbHd139LRiVKzPpHSMcWPlc1SkuKt2kBliSYDXnfE1RBtFyNX8lWUVaRWct6dD4PC2XLFTJ7Fi-CMEMpfwRaRYmScaAkBhZMdoUgKoCwM5JfpnkRgqguDkT1kyaLKGu9L5UNiuSFMaMcLwCDe2PDWVeCRhiAFUl8orXhjzJJdp8gWj64oBFiWF1e8L1VA1JiQKXOxt2wQl32PKI-sNUylJxIpi0Xa49LjBNC1pNBTHUyPXT00KirBB-0oS26feeHb48ORVPyykKbIQMfIimLKXHtc4rgeIYlyeORvxESj5aOK7pWwnnr3EjqXwDvBgV4z9MeI2VeDPUjXZ1gdX9lDT9XyV0H8GIl6KkiVPCI70oqvaDF6K_ZWs8uxhVkvtAu6p5HO4XN6KHGQHWjQxKr1k60wrPojpmmulZNYyINGDzPDS7MCwZ5cGInVFl_5YFyzIQXGlfXOJl8G0vA4KIc3AFLu3bmSDrD0UNTu3IHHeOzrP4l0PGEKm-8DtQfVJq7a0KH6IUo-RjhLhXchIrmEADPg7T4cOymYawcp20pygqd18eA2_d2SreN7-O48AhVwofiPWokoYEGeJeR1MECYpHcCD2zsQqVbTRiGxCvAw-VfZUIc4PVTOSUb-H5rVBY-LtaQcRZAWgVbwwMwRCSGeXNl5oPU8roll3uSdD8bYpfTwQ1Yaczpqwvb5OtUDWA1qKqpUZtCs5NhR3dUDWT-2OUo06hDplF90SzD_twg2vndZw-2QZt2stxOBY7fcx60_VZyA4K4-KYljEfxQV4ViJSzWGYlGNsDiqfLceLdh-BbcDJ-bLjypSMDZZ-CXEFUFS46ejzmpH9D8JaTgW5eUdWgHFwlOFtokAVmB_x2nfgmpFllp2wvUUYcRqTaxo-oHViDifuKr-fAxH8HSZUG-JuGhGZ7K3UdS8HqxK5zF4mE8-DZOZSBqGpOZrOttNxjcI6jdI3dQvIyKpejJSMRbxyhg1XIMCJvy3bMHuqzqAcnYcrthCRMuUXQ-hgzt4uuZcU3Ad-5gOZLIdIvq6fRVbNLeQ1Gpg2RTusqvovhLEvvmUV8zQrKaXkdkBdYM3wE8saO4Ac56-hR-Buaw7an4KwEBKlQZwr4DmGAVBnzgz8EZUxy3bZN0d6yOk815-_X6Sy3yMV-dKquQBWfu2NhoF0FA44WexRbcS1XWNq5-SByA3iXHG9ANRVIiC6xvPRQHhUYAkw5BtRZMooJvalGHANR3Avvg2zYTCgG4TfaES3Wlt-Jw6tzTj5JHVJTc63-M8Ebyt-VGSlMWm31_AgR3Bwtyp7EPLhPN6OMbyDF82l5gMRq3VHvevIPIFPQ25ut3V4AAIgmSqbrYkGZSWq4Oj7H0QUd1hEfxtTsOFGPj3LcjrVr8EXLCEGsIN_46mP0kJypRCbwSpL5e9kUE-hTlANw4glpcizjp8EmXyLqEdbtbxPBMJ49XsupzaKUQ4UkGV4swBSpaZvFOuhTH1H3InDZsU_o1w4fYqgaFjYqz2VztKDhE9X7DOuU1Unf6SLmNDvx42QoFPpJti8EppyCKSbdnVkIezmzyHcNxgWUUTjx0_fhhzpsmGwBaJRTvAom3TgWy0Y7lQtUA87REatoaX6PDnviKQ2RB3q0KASmNWeGWUn8ipl8d9pXFm3LwzoG7QEtYn9OhytgRlrWbpWI-5FMIzs-OhRSt5zHtpmlYNXVlmNf9DRxW6YSxorXZ4tw9fMmephVrAedziumP4g_OWqN2EgTq3tLzGKQit86ZdTSnFm4SBCBAJ22g5loFSVVT8-te7XwwXpybOfYvmnuKeov9Q7Qt3JVU6CokmHmV8LKgwc98eAMih7A9FvzmhupKSxEaLxpih5S0sK2O_phIfGTggiujg16mx7nCQJw1flpoPE3qYvCamuAsEQo9WUgR3B30f-TCUIX6IQhb99NSUtQ3qlbBbK7lrSRCMGrVExoxKkG_ZVXaLJf0b24611Fa3H0GxsI4TWyVF_leeAZ2BUc17HMQKle9Bi_0TExZgs4RCEwn2FWscczPmOqgPPZxYiUbE6kbQLTCBPyZMGpiu12PI8RTBOyNbHllE6Uxp5I0QDrnKW3hi_-jQg2-r6CgQt_h4BxQENqaNY1YPjI4d0wqp9uhanhfJb-zJZZ-3N61qSh_oJ_kU_qtCd8v4Yd-k2wOgNL177huZQIzVOvkb519fHoV3p6S-pQAlpMdMT8nRZP858HdUcl2DOwyugGeiYem2TlKZMltKiKlXXphzRi5yowUd6P9OP316_sCB85MJBRIsOQiZmMrlkrzJzUo4TrpOTEBZQwnaDObv7gpOCPWk6_l4Xg9a5bmRnG743Q14p__9cAAW7UvgrbF5gFpW98wq8DetchEAGWQAwGGLl2s84-d3M9Zcxwec-gBeJ43ml6vywCZgKo-UgLVOGuEV0x-eQLyeqTBnThl2uKDD-HrGJvCjXNjv1mks81i4xg4gQ_1U55osWhyyHSsvaCL87HDNs2ze7HivcXNZpfX-Z_GoT8OACFWQFwE9oMEajiaQE5N1tW3cGUg9t571BvkOSsiUSFOkdPExbOKwraSLNup1fLRYb9rNYAeJeG5FSOv7Hc3G61re2Bgluf0RdLKYtSj6Kn0htzZrgy5_UQQPZyWMbuKZdhJQPDXiXYQq0KYSvCLAYZiuuLAVjgDKw6oPW6gGLcCTnFtqtw9cy3EtTXewywC0BCPIaqq8bE7Js3n7owmJJSYESGd2rzezJsoheZww3J-9JgskeDAFLJLSzWZlO2bM-4_5PzQYa_a9fK32JYISwFtU8_d3ImB1GjxW-ueQfn8Da5LENMDD91cb2l6PNHdfE8z3ysqkFNs_sPy5udn2YN7aJCpMoj9_nBj99zXKTlsodnD2AG8nVVXoFYDfVqxF1AX8mnlkpKjzNFIWYm6W_bVcAeD0VpLcYYeeRbizEKrbEhNm0_cNY6Tc7vMG6F_SAxe_ne-Uo_0zEmHs1xEbY4MeAqkzoFnyHO-rMnqLLcT66-8RJw3osC0EskbLPGhdeZ7pMX5y7EGr0nyHjmq2-QV7gakGV_CFg08EcQwTs1F4dbsQkENWnF6e8Vi3HJuNM2tomC8Mh1vxcBOs6kSMtV-65Vh7rlAxhMWaaiQkEqXKHUt0mzzRn5umbeZneNfXTBPj9bLUt_VUrvjmLBp4SguRH-5CGAJ7X6cbm1nAicsxVOZh-R93Zhc_AjpKcPil63120XsmMfd_iOIzCOwIZH1H5GHD4T_fQxSXQVV-3XpVIYVj1I0-3B2fJ_ex77JdSkCOTXhfU4hS9mJRguJmRAEH44ZHsSlGJ6evGRyiman8OA9CixclF2-EmJEPK1LJpj65GQd_FiRhDBNS66o0XP9SPwGopwS-3d5NPS0H4zufpNUFoyl6Y0z4ztuVNul0j-HPNiUN-o5VyZ4XT6kRkFvO6aZ7x83FT9d-oUf3GKloKIFJe30VvfwFHvgXPjGGAg5PR_szwK6zDJ7Vqavalbap19PzcWDSi6nh1iD1Z6gmF8S-7g1Tpc3uCpOz2HTZogzloLejKvVDF7cCBGuk89A08qcegpEiOPY_0t2ogCt2_5cPS4ModT53uPkGhibyv8bZ1zr6e8AdNilhfqN_SJeYfB9vxqMYxMaIab_d79n0b55En6v-IgSk-UryGdQfAWAw5Wi2WQAaSz1yTEh3sgcFv3klFCTRuHaikteXY_cGyZ4yb4BMAbMA7jZVWuVZdYVB3vz0TsAy2mQ4quQ7zLtljNSvkmx-tqLVf3eSsa7R1DWAA09JNEb5nNMG3rT43Vva226_AcJVChf4Ts9T9_GJnRegwqiA5BNAoEYlSci1KCrApIot8Z1-ACDC-APtzJNotuBCctvjTzeAl6QtAhKpU4zqP8qk32WQ4zqqtcD91YkM_7EDCMzDDEW5iCLnZbUWNhnQpbf43rCDKYZW2sJJ2swKQexPWGmN2t98mZTJ9thzH9nCucXPnUwkgMBmWPzwcvD3dp574RwVGLi5ucU2UZ5DgD4sLLNh2DfqyfTHMc3tIu-3NiIR3QTqanCcsYpYXciL087MXtCgdWFFrLLs9iiMlkmZcZRwdql82cIS261N2ijvaMM6FYcJa1Fvf9UojFKpheuja6C80N12qOFayore95vHL20glro035Vdg1IizJBlzjSm_kbFEzLGrb435h8jbyWwni-QYp1hvPbBZFYq8uzG-aGI-Pg6K-CJtbhhp15xFaN19i135sgB4yLbLIobA9YmCFEKgw9i13DqHteEiaa4xLzfNJ0Tlhvt9KBB0OgW2w88jFxDTOu2b6xreBbOKh1DT4dy2gyQFknmu-b0M8KwJc4UwtAZzYSx-KbNL4pqdexICQeC9-diTUgLAGVFR8dJCbPm1mg0ctl2vrB1shwzvylhZ515iV8VzEJEWJb8QuVLmnYyvOjBdwrwwQ34XnQdSEQOgxx4t_PO6KoDxv4M6XgUY-aeUKJbiezYW1pR8zv1QbX7g6gRpf_UMkScjKL5SalbbbvY1DtYH6WuplqAwBIHPx5RW-N1hjwWrQvjnyiVxoB08GgGZN3pEs7DRp3HQVBNK2D6IH6iFmArg_QKf7DIxdhJPNMvh5Jl-n_csjCoYOjAtq-lxZuzMfSAZW3d5rN1zADmNTKVW5WteVGZhXuEmPwrPCGGK1f9MsQvY0N3g9CghjrDvWGtu9LxqHuqmfl8-aerIN2g1iU76-KvJs-l5IOR7fgjuL5Et7T_STA0M3yqQ4Udo90K-MRnf6E4dqjcXW7Ux2BCG_R4Y6QibGhjaqWHICB-3OoBUowLJ_j18heIRRld5-qcVtqn7lBgFGT4XJHlSIrtpdw5b_eserzGQfw2uesMv25NlMGTZXURin0Go6sopItruZ92UnqkWjVLlpGMod4KIh1BgXH3kPsfQuzatKboS-runbmsisrrvelCY9uvcwP1A4ITvHKhtoOSNegEvobAKNXya8qgIWHl-oy4MFLEmOYpVHeMFly9ZkQWbXGszrxWqpId5NfuzylC2ZMLzpeDtZXau3e9CMWeCr8H-1mbNyPwLajyJJLOzH4I0GvubJhfFE07UoTqxooARfYIv6LZBnmTl9fmpiZn2UKrEq6-Tk32cd3ezQjknZ04IihQz1ZSiv6_7InaHuO2ltpZx1gZ1EBkyG9RfB0Tn2wR0zseCPJqoOJErE7tDnM5hhYGhm7N6ZdkVR2CpflVFURbvN33Gxmg5qk3s0wUtIZV9_Cjb3vhIUgIrwYBxGaEGPHNrEfbVbD2kd0S-z7Uu2ZTzd9LHLJy6oFqim2tOhTnOtFGRp9rIQrixvU1x4uifOwEvZYmP7xMEdKTQKFwYSrii20c4Sj54jt_UKa8wx0kZhENoE_Bp_9ECk7qbzAdksjHzvDqRZ83alwmaVLyoW4x50KCLVUQzxsZrRSxnF0FrhD2o54BNtm43_fUfL8SZRdx7koYMVZEC50xx8C3Bj8i09gtQf2CF1J71Gsi3I85k3C23JKknlDNCmMw5Sf16jy305btKBPf-hHYI_b16KAqnseue3xkel-4TaanIjG_LlbhZN-bynXUelVt9fBjgJhMn6phIUhOA0BTMrhVo6RgAVVbLmeVwJ3FdjO0ENq4omImAHwrNIbg4piGMITxVf9jJYkqjfYiI5fQ6NcItSGX402CeE7zRaIoee2NZmx-ydjvjY2d99Jlly4SLtDJyTCdlMEbXl5x4Pwt1bCPwAbz26TMcXLo8Xx34MvztNPTSoX_1urGWLRN8yAf3SgmzfFhx_qXLPIE8C0dL5orIZJIRzjIlBAFlBAx83Y7MA68CvYvwh2FJgJ7d4jGY0TwL1OSlH3knfwDZsLd0I-SNRzNHPOyHB4W-2n0apFrhEk9QjH38aI-ZU9ocJACoN-MMRT3nRgcO8DOIZJ7M24FtRgedGHVBFuw9rAmq4HlGllSiUbeeW4zJ157tv0ews5WmM4aslHTl0C2pOD6zDj6hhRjCe4euN3dQVN5Q0pvRj9yKrDnUHSewGTHw3DYV0qY_MdvTyJiwDjirsxwcKuLgA_FsaCvJH5BmJR1nz7T4LCY4iDen6BIbjJTYKEXb4w-E90aJtbtPcWW7w6H7j7dFzh0Q4OJaUelwrW3ks4M2tHw3-e8K_qv3wQ344A_Y09hPJ_BVFyQzvAfvh6fNg8jKCaKGeALiFXm5rm43SVR8cKGv3GKZMksENrtrl4sN20ZjaIVK1kLxV-2V9k1mJDxGOM1pVOMLlmGtzAISqGWHJ6e_AokkpbJx0099IaiCUoCTaKZoKqFBq-oLgpOGOAIa3zuom_ZbrQhj2NqInHtKghFm_UAZitkk7cCMiTdpDX9Thp2VbL348bDUR5ubTlQkaHqI1MF2bBcbInzMH90DyiKhTUV4QrOEuI9e68bhaPYMXJufZ0_ZmVofyiIioT5SI-OHOC2jU6mlZVVcbwIUMX6ivboScf4n_4X95My0rNhNxEW_I3nAe3RPl8qpLpkK5777_tsPKYa5Z0Pb6CdabZjihgBQf9gJpapLqf1ki5FsTlzQRg9E6nuBTE5UT65hORLbOdeSphJ-LNskhUfqjVo2ndnhZmVuIfh6rfg2Eh2pEJxexlro-xgaARD_InPlcj5pYXOm5Do33TXVJ08f9uF1K2_Fj87CjiI4WpQ7brAL5vWsfy6PHq6cprs2ewrS0Qw3SGiy82IyngP9hdXisKCHr_291kPAlathN5i9cMJ4HdM4JauiwjA7f3dsrn1Njfd1zyMNPPKyulShqPNWTnQ4eNP9e_niKZLJnx0RcPfowMzrozWBUFF2qD6LuQQDJdzYcq83eq75lt_fDWoVgOZdQ7axhjDECqHLvarlwvoCW5xhJLOsEOfnnjKgtxTjekQsF57bH6IDOZj_ycTrqxY9TG9WeaefToqwvqtoXmJClrWGdTnd8KiWB27IyYnzMqMHDTk_719nTdIH3moOen0OukF36gqFpUBtNNzadGj_WnWe0yBgZM2pQk-6NdYyvglNyiwcP_dh4SR3-VBvmG1bkfA01XDFwBI15zM6Frb2WCSKOG_3D6XBI3LcOH2TcFtXuFkIArxkl6XOs52jfzDCpytPTrbzx6GMEIQJ8NaYu8Q6ipuK9dwkQmakmucLv8ip99WE4BXIaPPrAMvdTJGCgaU05rid6USkeqPJ5Do7TYLwAp6uU55k_RBJFdAIeuhq1ktzGg4gCJYAst-tM4e-m4CogsVKLz8TXdgRzjnjonJ-Ytw6sFCFXfhQtU4LpYG-l3ZhpUTc7hnqFK30PKT-M8NYdv5xgw48sK4NvOWXpB9BW4y--WxBq_lYsnclxmFHgThUxGNwL23nl4XWAipp8Q93s1zUVcGn5w0udh4xLJbsFpBqOdHrBCdm2c_lsUciHuk2YYv0WIEJp8HsmNz4LMayPhkWMCzWQbMpVYtEhb-bAgi1i9lHKMq8H5FnGcH1UWMRcKWUQhuOAnVDmuTV2c6Z9kBfPAApb_2XzSTbS0p_7s2mDmgRwEofBkvpltu7Kae5q1pciBKlCYFNpFjCPhsi-NgI7G-KBTWCGNWUjeXGm42B2vwxXXySofcNroAILuwxeNymX_Cmn53ZwIakIzWPUlwXmMAiPZcNravdqO8I8C0wJFKouiwVATurn7O6elSFturrMSwtfdsK0I0VCTtE-aMJJr49dxRkAJ6YXML-O7PFGCZYMpkekFLiLVTwyJ5etV2WThun1jmbd8dMcfsLiUK5WJ7AeCYrmaS039Y-qFB0chA9aZtfkNb2MCzcpLDncQ-wMmcJu5SwGj76lNUbcTMl4ajKwcxov5t3fTijrD_f_XNQRCWO4ubHM6bLCs1PicdCC8L4CPWztkbEFRDySYaJ8mfxExSiX8XaaKqXTlZoXRMaptIjFHUoxcIa39qtHg7FL1z0jRGscG71nNzDo_vtijijV2hS8mEt4Y1YCCQoH4TL5MfN4vcdKQe0Ll9cdd3acjETGDRNXmVzg84zsA1mj7sqEAIal_eBg1P5aTfmeM-Tfz-lsYEYrrpNODvvsVabkzYAYYK27TlO_UaQzLYJMHVsTc8qxYiPouoBFV8LVGdF4VX-VwMPiossSMjEyVVGeRgp0V7esh5luNj-h3x2xJGG5Y81uS6w2WABuBzSg5rQjMRL3mivi3457AJkxPCmAWDXTr9Nmzm6rgOxsvTDMQf9cvweI5XKzz7cqCGpVfcJAwjIO1PWGnN4Y0sz-UmNuTMEgdZ5z0nj_Ii2f1KNlgVOJpFeTZ1Q2B2pFgai1VqR4rHDFl-De_hev4_g9j46rRle5Uq52IPryop_c2oLyzR5jDGv46jiR2gChqoJAlyP3AgE0KjB6PS_YFdpFEPy8xmrcmB8gIF4U7Bjmvrz1aNrA7vE9pB4zozUIvDwi_TjqxIHOMR_E_NNU9H54gKsGYlerrQk1NhoPhpyv7QQro8Vp84E2gvrEk8ulbur30r1xBy3LIzNRi5t1VVm_u-i9hmbF9pSYqm2npdEFIXUJVtIQImAIUb2kMaGSNSxxBZUqBnljm7KzQGPlHQL2IZuD2cFYam6LkXQgZzdcdy3i8mxfHWjNW9Y8KAjriY3NSfN4WmeMQqpagIg4Y9zAoBP4zigsWyenlV3siGNbyEdIpjCrhJcw1qgLUaWvYqIlyE_0qT0bPO03CAjoUH4MZA0RT37aSIun47bxieqtJvOKD4a-rXji5Tvphp8ZyqoUUUrRl6kt9WGqGITicCrGj3XuMpb9Nlx9_tPrkPAauHyK6_lI3ZAj-cDoCKDSsAxLdwFhoLXhFBaJMLyWUDkteyMtftCj-JtSxGPnGaAPItdJiNuAL-eEgx-wOxzjcMzN1QFTC0wt8LECVDWeUlfD01ONvl52gT8M8HU9GbMYONdzWz-CoaTBHXlQO7mTQ5CrRJYJTSmsFOAfX3sqx2Z-6IRqdwTvFbSIuSOCXEU2BF_h4bP3h3ASHNtZ5UI5ERtO8pIojp0DPW6TlJgGSSL1VG5hpdCu9oYTiovqOT7vpWPd8KULuQ-sSABxDbYuTf90zzB7huPg36maPs7c8mhn8_ywVd26yRam7vnxpB-4DmolSOkhRl-FpjO39CDc7fnAi_bjXQwuITjFOp-iBilfhv2jXJMtmJ05sxKJeeILqb_XOIEcq2Jnvt3bbFsx9U7JTc4Kkd5d-EjX35I6BIdY25UC5beVRITP7YXBVJkT0tWxl85urpKIkqis6pu_MAXpmTFkUVe9LWM7kQgRpZw4AQXK9EgluEbR2DgXB1bCP3C6E_e5gE4gdeI928zNZe03MBzCvL6q6Sc34EmNS8rJnXDxpn_7EDBfhRQ-xAcHihEjQfoy0spueMOk_QMdPrHa9IxQSeg4kaGoLb9-UX-KQwW8wGKjxZ-slz_4dRuILEB2ux8oJybIBYI3F0CaBKnoPdDLJXdM7XQcUt8CWUNCZqnCQlEyo_P29Z4c6Y4sC8ND4n_YBNZ56wdjEFDclXZ8SZ3BcGZf5_C7sxQ9FLvUDe97jhAxBu4Gvnq-DD3U-HGcuPUos0nPBXK4PLF6k_dDcUtb_B43fyxePEJo5I7JSc5fB5H98Xun_uhRyor_BnG2HF3v7YJO3AaZBSaBvz2xPXK_M56YBwkBbZ41iK1nHlQLzH5eDj-1eErcvut-SnaUd7R-Pph9dwiwSMq9IKsG2wLOn4hA4apUaijBQBzmN5oNNOQyMNw_hZcLwphFKxqdgvxwJogLk0O2MawdZPKUxdSHVEVkzHBWO6UrXNJ-ONs3g4fw2bgeMmDiCbXtzCu_obJOO1nRmV9SEwwIE91amOnSQ5OXmWONnbrGyJ3wogLep_tD6tZmkSlQ5kuXfdTHo6vFR3ysjv6cOlgJZ4t9WtrNLlWZZpSELpl3wgwkRkdEANis4zpbQyyny9g08fInygvQTS_Kv_WAsy_i3_iSuFwuJDTcByqiqmZK8l0nyeOwPnW0U638lKRracxYob8I-8gTXh04-rzVyw-Zz9O_hrnIe432eSTY9gTKeSeLCMVuftULDBmSBt1ez2xTVlgBTZqyOKNYaVpjcfNeCWT5q1Bf6sjjHIBnxymlyDE0v2E4fhURynBA5cI8lIwcpJ8avvZkzzNVn7VnOC-II_J54Kf8ja5qP_NTT_JXdWhsrq4jzz7wA4gCeX_sBRMHV05mn1sR3pATiXWDknV4Tq3edMP9z2P2KM5NSziqzMTVRj0PAAHQ54dzRGNWJJ5Otvfej4050uUZOrl77gDmfETSltcLmXoNYHIaMIBfUVkT8vL-ysR2cbxmLwlgJQ0RUL5vnd_oNErqWI7gUVMCSOUwwv4lsOV0JONyZuVNpJoTYm2SvAPisqlw7ClrUAllotMzvhpopEckUpWg3Iexkv0x_9IhbIClYbAqhkG9QOiOJ3anueKP0aM9sLFQNIi15M0ViHUpzEL2TTNDtoMiBjzUjcjiECuI9PIdvONK1q0D26LWA8x2LukqTCKJlEY66LHnEb-LwNlgVlbJj-HMRKTXbvJWGSfcmigDzLwucX8fRfkGgOpeJEtJNdg9QpUASFhnDEVQH43Ncv4ZqiBxNPGklrNTywm_x61nEjk-VWNaPLsYExNdEA1AaFgF0NWwbBeMnWYRWydIYvEhA5ys3sqkfMOAksmZnv1JNylgZPk-icUxuQcL0zGeAuAuxauIHdrxLadhoYZe63KIXFG-8ZfsJgtycKkVJGN8_iBVs4HzlWlHlcgRcp3ijgz4kyA80DL_6DgQGaEXa4HkAIAwaN8uuuxdr7k74kIvC2tiWz46iXBJp-2CoAVsI07dmHc7FTPYmbq-gCLgJtTKrjf9kFw35C6rm9BMUkZ7BfAWL4lF05Be4GNt4X1rxScjYbVZy7cGy0twrqTyGAy_Oq1fYclUmDRGMhKj4eVQ7cqpsCwhzU1vVu5eQOKS8co5XW_8QjKbZgKCHyBaN91PO2XnMsFi3pC_LmfDHJMZRriMX1SZ-gFZD9oVrUwKBUwT8pKj5qloGdrzn_ijf-L01OJ6zaAuKp2aNy9LARrwMkvcKtBLGH4JhoQtphBz5FiklUeOvXym5L9jegLK1Z1oMXQYf8BkfP0f2lZkqqX7kBSYVvxwEd0lUCyxy9b8Sxw6LDr5hDG5xQfsJLx8SdfizglD-T3RENlEwzbd0pm46htO14AZqUEtDC0VdCBo0ZP9TCZII5rmXmyoYPYspcXiBl9SBL4km1ic7fujIUqgNb2oWCi0cA-C9Iqmi4FEKwqss2xN9Ee7E68s1K74rpb8shFIT0-CMtmEjvEsnSG3TZpfTKRdk6pJeu24GsV8sx6ZlUKnXq4J7qIzsg4UIHwlnFySd8Q9XvzY9Gx7xBzjaoyhBlDdUSBNqBUoQq2-5Vusmix2wPiRMljEx-mx0K2kApAohUbt-WyZbzShJGok8Tb3vLiGfD2rU1dvGiFVGjd6jQ-iKouNFLzcuUH2cEYDwhT8iP0LSw0Rizz9smqQyZRwIGdCqXIPN5bamqJ65bmg5OdiHd1D0D4AFGOCWKPvTEW8YmghvkFVpM0AINCjwJiy01wVclWaZle64huSSkMq0HgAqo2g49KtFnbzdKeaHmrEr3lJaaEbBR_ks7VPsjNsf79PXfQq5N96yX4-vNfnL2743pkozVBopd2z2PBuno7VrwZDilp8_IOWNslCd5QG2eU-O8IA1kYTeIT8cNlKfey-aAVLTmZRD0D3Lg6rrJh_Jfv-fPaGJh569uSC01zSaHNxGLjhUxYRFR8s0WmMIKt9MK4AQ9Vs850GhHXw9xziM59B45yOklDPqkJMT_LmdDQqfHCX7_iMew2yxRs_WAUzYX_YVDFdScjv3S-QwOheLAiyjrtFOoZZd-Vkdg3w9xEqfLup3v66JVKO2QwyvGLypwSdZT23Lsu6yYWEFaRvedUsht_4622rHLMP2KGGCeqvAuvNXgnXNVSYN6lWmb84srPDuhTxhocsoQTqGzasekXyi8Z10I-xwAJdKq_Y3SLFlyLXpd0w4GRd-XUd-Dxy-PXAHv88UcHozNNmC8yJooCgc6AJmgbQ6AUYLpM4XK4LdsJRTup-kxpbV9MT0IOS3TBHBMu3B5ZUHjxroWp9ufR8AK27gYckvJiWB4U8xJQcgHdcHJumasO9ytRhdpvo9zQQKvx9cxhcdK4LBNjYSni-Q9SnKVDC0LYjJo1euaWlymriyNaJJnINTtTG3iGj3so55DBR-ZW_q3u4ZAxvLmZ7DmgxQGNplYzaddIgLf-dPDmVtFZOBUAkRXdJD6jlQT5Iv2c79WSA_WNmhznvl9zRRS8xG9DC8aqQPNsxZE_f90Y4346G5dvyk6v8EtKBjmqUBaX8aeu9Qff1kUcIjSHoh92oR7tJiNxFwATobxi8ICzfU_478Xj2IpQ_AQP7UbDyK_1wbSttCctqBT4a68ytXAwAeVKwyF-IaWJdjJOwKs-TXp3LHaaIclt_mcbUo_HaQd_0colDuMzFLhLvgxdEXtJEHXnU3Omde7ikvdVd54d0DTovI0MP1P1fh5_wyowcdazBRv9WrcL0TeDQ_OJtLhFF5ktH4fJ3XqSlDOhKSJjXL4N6B38cHducZWlG_FAPE79Pkq3TNp6Pz_yg7kXxzv18CR7CHozecgHfNDpecU3jE2K9ALZ8Ta49S7I9wvNV76OLz_dTx93NybaDLBK0t0_ar19_qSP6xdF2ouYMzcG4GBCg4Z2Ab_vt8nI5Bsm_tE8O5auFEmoUQFuTaFXQmBz-nF8d3atqp6JKDwyIH6XraHSK4EAAcdFJiK5AyRo6ULKUVnEKg1syuaTivgX8TeAK682F8YO6bxndSG1BKu2nv_KPWEEoogkoof28hE3tFotGuPp0Q4-3K6VpzU3G7wqMD-31gTWdcED742FWD4I3jbaHN11J_-2uq6T3XrvxW761WKSp5nyldZKydyYZskDAXMy5FpuWYhtBoZCpaMGWjEayj-nLe6Bhu13vo_BDAxxFvf8kJq_-4MUeDQv5jixsXePGY5ifb8UU59a28HokvvFH54T076FDEYrwLsTjrmQVpU50vxZnqTFD7cRwcsZv4zNPIOTXD2fyMOapzgWSBAqUsNazsFJfXlhUk8KYxAMGjMrIEK09P6T1sTnM1WASy4GVX9a45ZOu7i9Prw-S3Tw1nfVwnp6cwXzMmhnwIr2I2ydfNfXw-ykG4dfRbx95oR5T3F1tKeDiVmZ4VGla2Li8iKe87D6lb-YE3LVAP53jNC5kP5UkRAaarvUbmJA-aMH6Ig50sDuPCuPoqi1vBPz2BjKihk3MkxUu6eGHAL8V93anrUY3ORYCtRIepIaWBRJS95LEXS7KrOzE--WI7uakO8fwsOFjUne4HBVbYJhxmLzVb3zMPCEBmdvm4hW1sU0ydW4B2kVhXS0lnuiAfn3c0zTKcMp2UlNHOpFhtyAJ0WjX0RRNE_kV5CDa48nBNmHNjxEORtfAjnFfArb1naeIG-1CEb9rw5UYSM-UaMUxzg_6QfxgCx-H2yn8s6JQI3LU0P3hxo9mSyeoqKLtYQu1Yg4gj9KnLNdfdCJbacfNRJLCC-A8upFOhV9NEHQ7mvzeWMF0KzW0xVt5r1LSMUVQTPNPkFihaVact-vu5Xf5jFejZkA5NKt-wg3aSA9SepO7CWb8NA4AutivB8ZGSVYk3AnoOjlQcWnRYyQZ1XOJOBhKOMLUAm_1voupb9HUzaWnSVf5WPkQIWdIL08_iiTFEWs90LxguA__ae0vGBdTXObxNCYI8cSrcxOYAcaHlKW3ZhBxFE9VOsqTFYp97dJOm-yk2tRohd1mdNKwWDcMg1RcRkc5m8NV5s1JsaNojHDG4yI4MeLdwiYS3evHVCtoGn5V7lRXlA5KYSW5U6aYj6A-9AoEVLd9wZ976UCMumTHt1qDkZiXL6qgXMaLnDQJEBFEKiIYDV9-B7DeYEPESV6STZ6Dh0R9QgwmuvYeAkRcKMG5VMumDEcTocrwMvulZLYEgqSXMKCgfMynkkTaJwUNvnrqSLgfSyBfbWKBH7dd4Mpu1W6vQlz5Y4LEXTwnXooGFsYVS7YFQWW7zyy37CTz4cufcAZ5GceymcgS2kBFVa3AcNaRgb49KGE6Irs3DWEzWMRwrqPavsygp0Y0VbUdSvO2sN6aAgN__bgomAcqitKK4VYz_8oC-WCrANKLHyCYAfYOX7sDyYrX8I0vLEIWnixIEzujaS1XIRKR-oEY0g_6eFF0ZvAx8-EhcZXNOCDBgZzuwdJU0hcHrQLgc9kJlKzkQYvIjw3p_Tz7cw3LUh0gyR8ILAKx3hoGe7mhN4o19U27EuQbFbup00dHtqT7GBAtT6WLl4eyYZ2KTYulPE7IO-iOnm_4mJGn5qpAwrZFq41fo0ktOgPIOtWtSU1dCa_TunOqFn3TN2Zjs9h6LvkZIGp7bW6jou6GV3KG0b3_3YHtwQuZXEJMKtw4E58LABiOeh_FoddEfPd5eQ2EinUld7mY317k8AR9jjiGrifFGUeeIR-U1EaQ1BU-PP5EDFbf8WRmOUQuOKdVuY14ztpsBa_TE9owoQ6UfOpQW4ZDQrC3dVijdrpPKO2z5c9ffls7L4RS2Wii3nfEr1wHpTDGhuaTb65PUsYi6MAydsqrOp5fCKlClvlO4oc_lr8j7WTu-j1TqAkkcP2M8pr03QN40FTMaYtO1lS_8jDclbKVUPi8zNVP_BFGZWy1iZQ6mKxQgpLVnOyBlNJcvc9OHm5uewJyZNHny_ylBcW_A_fTRqCd3SZU68eDEgP38lFFCJAOcH7a4RF1YUy4LLVEvMAG0w3N0nkBEEndwqxl4GOL8Sz2kyTN2OgXC8yucd89C0m1ZJvO7TGkgVM7thSBGhO1U839a7amzKPyh91c-G7HT9sv4Ad5WXuUWFV-8LRtKiuQGPtOxbMstqbonfoG_simzF3g89EDjv5QNjAA8dXmsmad9K4P59V_9rm4wVObWPc1H--CMuroTovRizLp1k-3eTMPpewgNakCFMP07TLdDFmbcLsmujj1S10_4OGMZGoB9Ev4Xm_Suw200iF7pNkx_Ctc--y5bHKBKx2Xk_emBITZIzgYQPVfXd23Dq1gYgTgfp_iNltYyCKnXbngkHP-CR3xkDMcQPK7W9fuPO30U34j8lNeWKtsDzJVHyOtfZGEWbufYAWvP8bOLZHpSIMH6RODFJfS_1rgxJOTmFYBrU0Sn3cutqJANdO4vAeBoGrX6q3bcKDfeoeSdls2NGioiH7gT1KKJ2tFaYdYjnoscMBAi_2NERVjwqczIlrEJ1YRUv_E79IL9r9r-Q1Mka34RCb1DdsTZLogk1Wq_fs51r2BtmKAZM0dfWtGnhfdd2mLvsKQtNRwq3tOBzHr5BgdoqaqoOOCbDEOKKEEEjsE_i4wNmgWDYOKzMrC71YZVXbQK_NY1CZR5KAt7o-Kdsc8gtab7M61JexQXnWmeQS3ESJDiyr9-9_1auKgW7smVPA7UEkb6rUKfiBexeywB0oI2AgCEO4mxwtw2IZ9abU7Rxgktfp6mbZL2K3pOv6qEVgNv-FsZA5w96Mh-elmfRj2DpNslXmBLEPLpO10ck-V-PyrkPPJir9rkCfGDILK39jQyDyDVWhT6fyP3rhtstGDshgxhOlMLA5kF_jPFUhZxmO0neOHNBbCMwLD1WR5n-efSFzRCIj8_5wOSc4CdEXsdws3wT8X9Aj4F-SxaSgnSP0sHtPwNHHdrlLktwUB9hacEh0qfhyGKaTUFSTniaS_3u8P8NJIT2JsenzcWELVE7A6GwTkxScjOXE9nx4mJKMH2Ib0yFcW9b0ml2EHmN-0J4nNyBgIWKbWnKqeyih5sSYxZiP8TZr9Ps9yjhgnVpkCtz8rWYCdDRRZ_xwepqw6YGGvZ5ITjDVURmTAR5nWghQU-lNMfLrSAQY6HGGzX5HsStSyr61A5WtrgqVrdR92zG45LIPtTCXaSzfGClqIOwQEH4jDiT--_4s5aaQ9IdMCIF_drCOhJp8_JUHIC57cnpEssvQRsoeF59KqdtYwAs24yHsiuwMyfnn-OEjIYEspCj-usZGiBe2WA6h-atmsb-C5-WlU1b2_z5d0l-Qc_e0r7JzrRS6j24Nh4c2TeR8LvISPPIODv5PEjz1R0hO08wZfj7ylG-5hkr935nOLOJmvxl7eQ9tHWdTigUj2-eBSSjclg07fy7A8s3mnCpvrakAOZBC88LH6zy4gtL6o0vbWHn15V3-fEWFV2xEXkGB3Xa2Q3Nvk8hMwJUSBli9Im5ITOsMwp-zdq8KIV1h6_CrMi8RYqKqt_E1rHm6AY_OD1WVMaSrVpHFotsapX3Iv0QCdQER-Sdek4Iw9wgvN2RTBZEUZN4qLnBd55TmO2JyjTOK8yE3s_GHTL-9diD5q6DUuJFokf7dCA9pu6hbu5wr6-FsK0n315nUmeJrEej6igV-KdEYHUTTsjeoV-AeKTPmwkjoPiYGrqMcf9rv1GKPPHFLvPlMEkXjQftngqa-G4Ss7PpKFGUkGffiHF6sqPxUEv0-RaD-t9o7EUwYsQ5OeX-z40qK2GDXuVZpuvfYVNF1lVovLYWnzz41rlkXbSvkNj6v1E8ouv-GcO0b8gEKlYVPaBVTI3OhaXHJ5KjuhPE_nMerG1taQZ3ykC4lj0JyOtWNKmKW8l6dzM25vatVDglN5U6wvBTF4AfOI4mRtGcDMqBvq0LZDKorL1rob7Poe9akNmzRSCXrXIdKdLioxWkrvcqtg5vLdYkfbEBxbG8Cx82NBUNFhw3qQeBin5s5Olgw1RcSqoTdRbjOFLJHvgGOaHfUhGavzy01_vnkEBgHh6wS9KwjDzuK9NwYKmtp3NcvZQCbHFLXc1CB0Y9_7sBYtgwk-0jfUcvrQhrrbw2DeHqXLmVSByJKYwyo6M37o5vbe7q7jlKoabxI8RA-9pHjyQcpYPL7lA2845GvvbDtk1JB_Pe7UDWdhB7In3B8yrDroFTL42uprPyPv3wtnCTIuaztBbYA_yn3Gy2FCm1E-7LgwznbOTXVAtwB6-vjDaDqLw90A8Cefq2QpG6cZh3PrlcY_aE3f6I_O2Jq7uMisv96w6-tqabr40egTtOfiX8bLQJI4m-8Jpfu50TaVCB3FQ7bl5tzPKm2YtjGEbacxQmyzlEdgz-JhFYt4y1Si0cy-C7tBCJIulcxZU1_sBYBWduhUc2uRxsjCz-m1FJPKK7dkgyDPbo6pSN2Z8IwOz5tIpwxbH2POpDfNY5WxOhZkCUbVojn9IK7wrHLw7wEyYzEfnBGsxZUIQF0w7iRpNQ-1RsNjzDDvTzdzS9AJ17HHWpfjTGvZw-XLmAYf4g_lOghhrs0VidKDxl6DoiP3S68X5KMO48avP8p21eQgpNHSOjvuHdlkbJb5pFu9G2W3FVV_Z_RY0IjjaUhofBJ_-FVYCY1cHPteyK6eydUcW8VEGvojvTNfqwzOtYKPh5SIqKVs0NMKbMPgvNkBlc4MMimOAVCIYrYif7T98B18etrQaU8RQPEK6d80Te3TMe90T_9KTt_3pUS6dBC3UFh-Re8qEk676JbqOzUS_rDrLyvcmGi99QAYmamAVOpvfB8mjQ4wvXrnAgXmcYzV8YMTaIzPz5ejhlrN-96IK_5lxQ-HiVsZw9oxTmj3LU88cSioiRFuF70bgzbz-5bITOa_pZJVb2P1zUfsr2koInUtSq0cZb1LcQTODJyCeBEfC4IPwXnyKuILmKIeqmUgIxg6B6_B40xy8KjXLY5HOT_nV2FbWV2ewkqz7Fe_hMOwBVzSZQMNd0UUfTguCupBsMZCysWt1oOpyyIe2MQ2EDn9NWYRNcF_SinvMPlX5acxVE-kJuhEpCbpuhWe4JNSRZ5unfVxVrDBEj6MwXxkSJrD6gUFfVVZH4CTDfIuMA2psLlpJd_BTYVM6guJZThtMGVgOylNH_QksRrynwZyHK7kiJwN4JYVp3Yk-ZrUqfJa7Q5mQ25uYN7iDZhRxIT_WfHqLwr3v_FDYHs6ySeq-l__8e9__PmTZ0X_3eZzKv9zb9_qX3-K-aq2_9cs894e7Tz96w9F__MPSf_z3__47_8Bv7tnKwSYAAA';\nexport var placeholderContainer = 'styles_placeholderContainer__dodte50';","import { Collapsible } from \"@base-ui/react/collapsible\";\nimport { NavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport type React from \"react\";\nimport { useRef } from \"react\";\nimport { IconChevronDown } from \"../../icons\";\nimport { ScrollArea } from \"../../ScrollArea\";\nimport { MenuSubitem } from \"../MenuSubitem\";\nimport { useMenu } from \"../menuContext\";\nimport {\n itemContainerClass,\n itemContainerOpenClass,\n itemsListClass,\n menuItemWrapperClass,\n menuModalStyleClass,\n modalHeaderClass,\n styledCollapsiblePanelClass,\n subitesInnerClass,\n} from \"../styles.css\";\nimport type { MenuItemProps } from \"../types\";\n\nconst SubitemsKeyboardList: React.FC<{ children: React.ReactNode }> = ({\n children,\n}) => {\n const ref = useRef<HTMLDivElement>(null);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n const navKeys = [\"ArrowDown\", \"ArrowUp\", \"Home\", \"End\"];\n if (!navKeys.includes(e.key)) return;\n\n const items = Array.from(\n ref.current?.querySelectorAll<HTMLElement>('[role=\"menuitem\"]') ?? [],\n );\n if (items.length === 0) return;\n\n const active = document.activeElement as HTMLElement | null;\n const idx = active ? items.indexOf(active) : -1;\n let next = idx;\n if (e.key === \"ArrowDown\") next = idx < 0 ? 0 : (idx + 1) % items.length;\n if (e.key === \"ArrowUp\")\n next =\n idx < 0 ? items.length - 1 : (idx - 1 + items.length) % items.length;\n if (e.key === \"Home\") next = 0;\n if (e.key === \"End\") next = items.length - 1;\n\n items[next]?.focus();\n e.preventDefault();\n e.stopPropagation();\n };\n\n return (\n <div\n ref={ref}\n role=\"menu\"\n className={itemsListClass}\n onKeyDown={handleKeyDown}\n >\n {children}\n </div>\n );\n};\n\ninterface MenuItemComponentProps {\n item: MenuItemProps;\n sideBarOpen: boolean;\n categoryOpen: string | null;\n toggleCategoryOpen: (category: string) => void;\n}\n\nexport const MenuItem: React.FC<MenuItemComponentProps> = ({\n item,\n sideBarOpen,\n categoryOpen,\n toggleCategoryOpen,\n}) => {\n const LinkComponent = useMenu();\n const location = window.location.pathname.split(\"/\")[1];\n\n const hasSubitems = item.subitems && item.subitems.length > 0;\n const pathToGo = item.function || hasSubitems || !item.path ? \"#\" : item.path;\n\n const handleItemClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n if (item.function) item.function();\n };\n\n const linkProps = {\n id: `menu-item${item.path}`,\n className: `${itemContainerClass} ${\n sideBarOpen ? itemContainerOpenClass : \"\"\n }`,\n to: pathToGo,\n href: pathToGo,\n \"aria-selected\": location === item.path?.split(\"/\")[1],\n onClick: handleItemClick,\n };\n\n if (sideBarOpen) {\n if (hasSubitems) {\n return (\n <div className={menuItemWrapperClass}>\n <Collapsible.Root\n open={categoryOpen === item.text}\n onOpenChange={() => toggleCategoryOpen(item.text)}\n >\n <Collapsible.Trigger\n nativeButton={false}\n render={<LinkComponent {...linkProps} />}\n >\n {item.icon}\n <span>{item.text}</span>\n <IconChevronDown className=\"chevron\" />\n </Collapsible.Trigger>\n\n <Collapsible.Panel\n className={styledCollapsiblePanelClass}\n keepMounted\n >\n <div className={subitesInnerClass}>\n {item.subitems?.map((subitem) => (\n <MenuSubitem\n key={`menu-subitem-${item.text}-${subitem.text}`}\n subitem={subitem}\n style={{ marginLeft: 32 }}\n parentPath={item.path}\n />\n ))}\n </div>\n </Collapsible.Panel>\n </Collapsible.Root>\n </div>\n );\n }\n\n return (\n <div className={menuItemWrapperClass}>\n <LinkComponent {...linkProps}>\n {item.icon}\n <span>{item.text}</span>\n </LinkComponent>\n </div>\n );\n }\n\n // Collapsed state — NavigationMenu handles hover intent\n return (\n <NavigationMenu.Item className={menuItemWrapperClass}>\n {hasSubitems ? (\n <>\n <NavigationMenu.Trigger\n nativeButton={false}\n render={<LinkComponent {...linkProps} />}\n >\n {item.icon}\n <span>{item.text}</span>\n </NavigationMenu.Trigger>\n <NavigationMenu.Content className={menuModalStyleClass}>\n <span className={modalHeaderClass}>{item.text}</span>\n <ScrollArea maxHeight=\"calc(100vh - 48px)\">\n <SubitemsKeyboardList>\n {item.subitems?.map((subitem) => (\n <MenuSubitem\n key={`menu-subitem-${item.text}-${subitem.text}`}\n subitem={subitem}\n parentPath={item.path}\n role=\"menuitem\"\n />\n ))}\n </SubitemsKeyboardList>\n </ScrollArea>\n </NavigationMenu.Content>\n </>\n ) : (\n <NavigationMenu.Link render={<LinkComponent {...linkProps} />}>\n {item.icon}\n <span>{item.text}</span>\n </NavigationMenu.Link>\n )}\n </NavigationMenu.Item>\n );\n};\n","import { NavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport { useRef, useState } from \"react\";\nimport { Input } from \"../../Input\";\nimport { IconClose, IconSearch } from \"../../icons\";\nimport { ScrollArea } from \"../../ScrollArea\";\nimport { MenuSubitem } from \"../MenuSubitem\";\nimport {\n itemsListClass,\n menuItemWrapperClass,\n menuModalStyleClass,\n modalHeaderClass,\n nothingFoundSpanClass,\n searchContainerClass,\n searchContainerOpenClass,\n} from \"../styles.css\";\nimport type { MenuItemProps } from \"../types\";\n\ninterface MenuSearchProps {\n sideBarOpen: boolean;\n searchInput: string;\n onSearchChange: (value: string) => void;\n onActiveSearchChange: (value: string) => void;\n searchItems: MenuItemProps[];\n searchPlaceholder?: string;\n searchEmptyMessage?: string;\n onInputFocus?: () => void;\n onInputBlur?: (popupHovered: boolean) => void;\n}\n\nexport const SEARCH_NAV_VALUE = \"search\";\n\nexport const MenuSearch = ({\n sideBarOpen,\n searchInput,\n onSearchChange,\n onActiveSearchChange,\n searchItems,\n searchPlaceholder = \"Buscar\",\n searchEmptyMessage = \"Nenhum resultado encontrado\",\n onInputFocus,\n onInputBlur,\n}: MenuSearchProps) => {\n const [innerSearch, setInnerSearch] = useState(\"\");\n const popupHoveredRef = useRef(false);\n\n const filtered = searchItems.filter((item) =>\n item.searchText?.toLowerCase().includes(innerSearch.toLowerCase()),\n );\n\n if (sideBarOpen) {\n return (\n <div\n id=\"menu-item/search\"\n className={`${searchContainerClass} ${searchContainerOpenClass}`}\n >\n <Input\n placeholder={searchPlaceholder}\n iconLeft={<IconSearch />}\n iconRight={\n searchInput.length > 0 && (\n <IconClose onClick={() => onSearchChange(\"\")} />\n )\n }\n value={searchInput}\n onChange={(e) => onSearchChange(e.target.value)}\n onFocus={() => onActiveSearchChange(searchInput)}\n />\n </div>\n );\n }\n\n return (\n <NavigationMenu.Item\n value={SEARCH_NAV_VALUE}\n className={menuItemWrapperClass}\n >\n <NavigationMenu.Trigger\n nativeButton={false}\n render={<div className={searchContainerClass} id=\"menu-item/search\" />}\n >\n <IconSearch />\n </NavigationMenu.Trigger>\n <NavigationMenu.Content\n className={menuModalStyleClass}\n onMouseEnter={() => {\n popupHoveredRef.current = true;\n }}\n onMouseLeave={() => {\n popupHoveredRef.current = false;\n }}\n >\n <span className={modalHeaderClass}>{searchPlaceholder}</span>\n <div className={itemsListClass}>\n <Input\n placeholder={searchPlaceholder}\n iconLeft={<IconSearch />}\n iconRight={\n innerSearch.length > 0 && (\n <IconClose\n style={{ cursor: \"pointer\" }}\n onClick={() => setInnerSearch(\"\")}\n />\n )\n }\n value={innerSearch}\n onChange={(e) => setInnerSearch(e.target.value)}\n onFocus={() => onInputFocus?.()}\n onBlur={() => onInputBlur?.(popupHoveredRef.current)}\n />\n {innerSearch && (\n <ScrollArea maxHeight=\"calc(100vh - 120px)\">\n {filtered.length > 0 ? (\n filtered.map((subitem) => (\n <MenuSubitem key={subitem.key} subitem={subitem} />\n ))\n ) : (\n <span\n className={nothingFoundSpanClass}\n style={{ textAlign: \"center\" }}\n >\n {searchEmptyMessage}\n </span>\n )}\n </ScrollArea>\n )}\n </div>\n </NavigationMenu.Content>\n </NavigationMenu.Item>\n );\n};\n","import { Field } from \"@base-ui/react/field\";\nimport type { InputProps as BaseInputProps } from \"@base-ui/react/input\";\nimport { Input as BaseInput } from \"@base-ui/react/input\";\nimport type React from \"react\";\nimport { type ForwardedRef, forwardRef, useRef, useState } from \"react\";\nimport { NumberFormatBase } from \"react-number-format\";\nimport { vars } from \"../../theme/theme.css\";\nimport { currencyFormatter } from \"../../utils/functions\";\nimport { FieldMessage } from \"../FieldInfo/FieldMessage\";\nimport { IconExclamation, IconEye, IconEyeSlash } from \"../icons\";\nimport { Spinner } from \"../Spinner\";\nimport {\n iconSizeVariants,\n inputClass,\n inputContainerClass,\n inputContainerSizeVariants,\n inputWrapperClass,\n} from \"./styles.css\";\n\nexport type InputSize = \"small\" | \"medium\" | \"large\";\n\ninterface InputProps\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, \"size\"> {\n label?: React.ReactNode;\n info?: React.ReactNode;\n error?: string;\n size?: InputSize;\n isLoading?: boolean;\n mask?: string;\n containerStyles?: React.CSSProperties;\n isCurrency?: boolean;\n hasPrefix?: boolean;\n minimumFractionDigits?: number;\n onChange?: (e: any) => void;\n /** Callback fired when the value changes. Provided by BaseUI Input — works when wrapped in a BaseUI Field.Root. */\n onValueChange?: BaseInputProps[\"onValueChange\"];\n iconLeft?: React.ReactNode;\n iconRight?: React.ReactNode;\n inputBackground?: string;\n inputClassName?: string;\n}\n\nconst maskValue = (value: string, mask: string) => {\n if (!value || value.length === 0) return \"\";\n\n let maskedValue = \"\";\n let valueIndex = 0;\n\n const letterRegex = /^[a-zA-ZÀ-ÿ~^´`]+$/;\n\n for (let i = 0; i < mask.length; i++) {\n const maskChar = mask[i];\n const inputChar = value[valueIndex];\n\n if (!inputChar) break;\n\n if (maskChar === \"9\") {\n if (/\\d/.test(inputChar)) {\n maskedValue += inputChar;\n valueIndex++;\n } else {\n break;\n }\n } else if (maskChar === \"a\") {\n if (letterRegex.test(inputChar)) {\n maskedValue += inputChar;\n valueIndex++;\n } else {\n break;\n }\n } else if (maskChar === \"*\") {\n maskedValue += inputChar;\n valueIndex++;\n } else {\n maskedValue += maskChar;\n if (inputChar === maskChar) {\n valueIndex++;\n }\n }\n }\n\n return maskedValue;\n};\n\nexport const Input = forwardRef(\n (\n {\n label,\n info,\n error,\n size = \"large\",\n isLoading,\n mask,\n containerStyles,\n isCurrency,\n hasPrefix,\n minimumFractionDigits,\n iconLeft,\n iconRight,\n inputBackground,\n inputClassName,\n ...props\n }: InputProps,\n ref: ForwardedRef<HTMLInputElement>,\n ) => {\n const spinnerSize = size === \"large\" ? 18 : 16;\n const [passwordShowing, setPasswordShowing] = useState(false);\n const innerInputRef = useRef<HTMLInputElement | null>(null);\n\n const togglePasswordVisibility = () => {\n setPasswordShowing((prev) => !prev);\n };\n\n const isPasswordField = props.type === \"password\";\n const inputType = isPasswordField && passwordShowing ? \"text\" : props.type;\n\n const passwordIcon = isPasswordField ? (\n <button\n type=\"button\"\n aria-label=\"Toggle password visibility\"\n onClick={togglePasswordVisibility}\n style={{\n background: \"none\",\n border: \"none\",\n padding: 0,\n cursor: \"pointer\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n {passwordShowing ? <IconEyeSlash /> : <IconEye />}\n </button>\n ) : (\n iconRight\n );\n\n const valueFormatted =\n props.value !== undefined\n ? mask\n ? maskValue(props.value.toString(), mask)\n : props.value\n : undefined;\n\n const assignInputRef = (el: HTMLInputElement | null) => {\n innerInputRef.current = el;\n if (typeof ref === \"function\") {\n ref(el);\n } else if (ref) {\n (ref as React.MutableRefObject<HTMLInputElement | null>).current = el;\n }\n };\n\n const handleContainerMouseDown = (e: React.MouseEvent<HTMLDivElement>) => {\n if (e.target === e.currentTarget && innerInputRef.current) {\n e.preventDefault();\n innerInputRef.current.focus();\n }\n };\n\n return (\n <Field.Root\n className={`${inputWrapperClass} ${props.className || \"\"}`}\n style={{ width: props.style?.width, ...containerStyles }}\n invalid={!!error}\n data-slot=\"input-root\"\n >\n {label && (\n <Field.Label data-size={size} data-slot=\"input-label\">\n {label}\n </Field.Label>\n )}\n <div\n className={`${inputContainerClass} ${inputContainerSizeVariants[size]} ${inputClassName || \"\"}`}\n style={{ backgroundColor: inputBackground }}\n data-slot=\"input-container\"\n data-invalid={error ? \"true\" : undefined}\n onMouseDown={handleContainerMouseDown}\n >\n {iconLeft && (\n <span className={`icon-left ${iconSizeVariants[size]}`}>\n {iconLeft}\n </span>\n )}\n {isCurrency ? (\n <CurrencyInput\n hasPrefix={hasPrefix}\n minimumFractionDigits={minimumFractionDigits}\n {...props}\n style={props.style}\n type={inputType}\n ref={assignInputRef}\n />\n ) : (\n <NormalInput\n isLoading={isLoading}\n {...props}\n value={valueFormatted}\n type={inputType}\n ref={assignInputRef}\n mask={mask}\n onChange={(e) => {\n if (mask) {\n const maskedValue = maskValue(e.target.value, mask);\n e.target.value = maskedValue;\n }\n props.onChange?.(e);\n }}\n />\n )}\n {isLoading ? (\n <Spinner size={spinnerSize} color={vars.colors.neutral.light} />\n ) : error ? (\n <IconExclamation\n className={`error-icon ${iconSizeVariants[size]}`}\n />\n ) : (\n passwordIcon && (\n <span className={`icon-right ${iconSizeVariants[size]}`}>\n {passwordIcon}\n </span>\n )\n )}\n </div>\n\n <FieldMessage\n error={error}\n info={info}\n isDisabled={props.disabled || isLoading}\n />\n </Field.Root>\n );\n },\n);\n\nInput.displayName = \"Input\";\n\ninterface NormalInputProps extends React.InputHTMLAttributes<HTMLInputElement> {\n mask?: string;\n isLoading?: boolean;\n onValueChange?: BaseInputProps[\"onValueChange\"];\n}\n\nconst NormalInput = forwardRef(\n (\n { isLoading, mask, ...props }: NormalInputProps,\n ref: ForwardedRef<HTMLInputElement>,\n ) => {\n return (\n <BaseInput\n {...props}\n disabled={isLoading || props.disabled}\n className={inputClass}\n ref={ref}\n />\n );\n },\n);\n\nNormalInput.displayName = \"NormalInput\";\n\ninterface CurrencyInputProps\n extends React.InputHTMLAttributes<HTMLInputElement> {\n hasPrefix?: boolean;\n minimumFractionDigits?: number;\n isLoading?: boolean;\n}\n\nconst CurrencyInput = forwardRef(\n (\n {\n hasPrefix,\n minimumFractionDigits = 2,\n value,\n isLoading,\n ...props\n }: CurrencyInputProps,\n ref: ForwardedRef<HTMLInputElement>,\n ) => {\n const multiplicator = 10 ** minimumFractionDigits;\n const inputElementRef = useRef<HTMLInputElement | null>(null);\n\n const assignInputRef = (el: HTMLInputElement | null) => {\n inputElementRef.current = el;\n if (typeof ref === \"function\") {\n ref(el);\n } else if (ref) {\n (ref as React.MutableRefObject<HTMLInputElement | null>).current = el;\n }\n };\n\n const handleKeyDownCommon = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === \"0\" && e.currentTarget.value.length === 0) {\n setTimeout(() => {\n const el = inputElementRef.current;\n if (el) {\n const end = el.value.length;\n try {\n el.setSelectionRange(end, end);\n } catch {}\n }\n }, 1);\n }\n };\n\n return (\n <NumberFormatBase\n format={(e) =>\n currencyFormatter(\n parseFloat(e),\n hasPrefix,\n minimumFractionDigits,\n Number(props.max),\n Number(props.min),\n )\n }\n {...props}\n value={Number(value) * multiplicator}\n className={inputClass}\n defaultValue={props.defaultValue as string | number | undefined | null}\n disabled={isLoading || props.disabled}\n onKeyDown={(e) => {\n handleKeyDownCommon(e);\n if (e.key === \"Backspace\") {\n const el = inputElementRef.current;\n const digits = (el?.value || \"\").replace(/\\D/g, \"\");\n const numeric = digits.length ? parseInt(digits, 10) : 0;\n\n if (numeric === 0) {\n e.preventDefault();\n const event = new Event(\"change\", { bubbles: true }) as any;\n Object.defineProperty(event, \"target\", {\n value: {\n value: \"\",\n name: props.name ?? \"\",\n type: \"text\",\n },\n enumerable: true,\n });\n Object.defineProperty(event, \"currentTarget\", {\n value: {\n value: \"\",\n name: props.name ?? \"\",\n type: \"text\",\n },\n enumerable: true,\n });\n props.onChange?.(event as React.ChangeEvent<HTMLInputElement>);\n if (el) {\n el.value = \"\";\n try {\n el.setSelectionRange(0, 0);\n } catch {}\n }\n }\n }\n }}\n onChange={undefined}\n onValueChange={(e) => {\n if (e.floatValue === 0) {\n setTimeout(() => {\n const el = inputElementRef.current;\n if (el) {\n el.setSelectionRange(el.value.length, el.value.length);\n }\n }, 1);\n }\n const numericValue =\n e.floatValue || e.floatValue === 0\n ? e.floatValue / multiplicator\n : undefined;\n const valueStr =\n numericValue !== undefined ? numericValue.toString() : \"\";\n const event = new Event(\"change\", { bubbles: true }) as any;\n Object.defineProperty(event, \"target\", {\n value: {\n value: valueStr,\n name: props.name ?? \"\",\n type: \"text\",\n },\n enumerable: true,\n });\n Object.defineProperty(event, \"currentTarget\", {\n value: {\n value: valueStr,\n name: props.name ?? \"\",\n type: \"text\",\n },\n enumerable: true,\n });\n props.onChange?.(event as React.ChangeEvent<HTMLInputElement>);\n }}\n type=\"text\"\n getInputRef={assignInputRef}\n />\n );\n },\n);\n\nCurrencyInput.displayName = \"CurrencyInput\";\n","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nexport var betaTheme = 'theme_betaTheme__14bhs4v65';\nexport var darkTheme = 'theme_darkTheme__14bhs4v64';\nexport var defaultTheme = 'theme_defaultTheme__14bhs4v63';\nexport var vars = {colors:{primary:{lightest:'var(--colors-primary-lightest__14bhs4v0)',lighter:'var(--colors-primary-lighter__14bhs4v1)',light:'var(--colors-primary-light__14bhs4v2)','default':'var(--colors-primary-default__14bhs4v3)',dark:'var(--colors-primary-dark__14bhs4v4)',darker:'var(--colors-primary-darker__14bhs4v5)'},red:{lightest:'var(--colors-red-lightest__14bhs4v6)',lighter:'var(--colors-red-lighter__14bhs4v7)',light:'var(--colors-red-light__14bhs4v8)','default':'var(--colors-red-default__14bhs4v9)',dark:'var(--colors-red-dark__14bhs4va)',darker:'var(--colors-red-darker__14bhs4vb)'},yellow:{lightest:'var(--colors-yellow-lightest__14bhs4vc)',lighter:'var(--colors-yellow-lighter__14bhs4vd)',light:'var(--colors-yellow-light__14bhs4ve)','default':'var(--colors-yellow-default__14bhs4vf)',dark:'var(--colors-yellow-dark__14bhs4vg)',darker:'var(--colors-yellow-darker__14bhs4vh)'},green:{lightest:'var(--colors-green-lightest__14bhs4vi)',lighter:'var(--colors-green-lighter__14bhs4vj)',light:'var(--colors-green-light__14bhs4vk)','default':'var(--colors-green-default__14bhs4vl)',dark:'var(--colors-green-dark__14bhs4vm)',darker:'var(--colors-green-darker__14bhs4vn)'},blue:{lightest:'var(--colors-blue-lightest__14bhs4vo)',lighter:'var(--colors-blue-lighter__14bhs4vp)',light:'var(--colors-blue-light__14bhs4vq)','default':'var(--colors-blue-default__14bhs4vr)',dark:'var(--colors-blue-dark__14bhs4vs)',darker:'var(--colors-blue-darker__14bhs4vt)'},orange:{lightest:'var(--colors-orange-lightest__14bhs4vu)',lighter:'var(--colors-orange-lighter__14bhs4vv)',light:'var(--colors-orange-light__14bhs4vw)','default':'var(--colors-orange-default__14bhs4vx)',dark:'var(--colors-orange-dark__14bhs4vy)',darker:'var(--colors-orange-darker__14bhs4vz)'},second_green:{lightest:'var(--colors-second_green-lightest__14bhs4v10)',lighter:'var(--colors-second_green-lighter__14bhs4v11)',light:'var(--colors-second_green-light__14bhs4v12)','default':'var(--colors-second_green-default__14bhs4v13)',dark:'var(--colors-second_green-dark__14bhs4v14)',darker:'var(--colors-second_green-darker__14bhs4v15)'},neutral:{white:'var(--colors-neutral-white__14bhs4v16)',lightest:'var(--colors-neutral-lightest__14bhs4v17)',lighter:'var(--colors-neutral-lighter__14bhs4v18)',light:'var(--colors-neutral-light__14bhs4v19)','default':'var(--colors-neutral-default__14bhs4v1a)',dark:'var(--colors-neutral-dark__14bhs4v1b)',darker:'var(--colors-neutral-darker__14bhs4v1c)',black:'var(--colors-neutral-black__14bhs4v1d)'},fixed:{white:'var(--colors-fixed-white__14bhs4v1e)',black:'var(--colors-fixed-black__14bhs4v1f)'}},shadows:{lighter:'var(--shadows-lighter__14bhs4v1g)',light:'var(--shadows-light__14bhs4v1h)','default':'var(--shadows-default__14bhs4v1i)',dark:'var(--shadows-dark__14bhs4v1j)',darker:'var(--shadows-darker__14bhs4v1k)'},typography:{family:{'default':'var(--typography-family-default__14bhs4v1l)'},weights:{regular:'var(--typography-weights-regular__14bhs4v1m)',medium:'var(--typography-weights-medium__14bhs4v1n)',semibold:'var(--typography-weights-semibold__14bhs4v1o)',bold:'var(--typography-weights-bold__14bhs4v1p)'},scale:{display:{fontSize:'var(--typography-scale-display-fontSize__14bhs4v1q)',lineHeight:'var(--typography-scale-display-lineHeight__14bhs4v1r)',fontWeight:'var(--typography-scale-display-fontWeight__14bhs4v1s)'},heading:{fontSize:'var(--typography-scale-heading-fontSize__14bhs4v1t)',lineHeight:'var(--typography-scale-heading-lineHeight__14bhs4v1u)',fontWeight:'var(--typography-scale-heading-fontWeight__14bhs4v1v)'},body:{fontSize:'var(--typography-scale-body-fontSize__14bhs4v1w)',lineHeight:'var(--typography-scale-body-lineHeight__14bhs4v1x)',fontWeight:'var(--typography-scale-body-fontWeight__14bhs4v1y)'},caption:{fontSize:'var(--typography-scale-caption-fontSize__14bhs4v1z)',lineHeight:'var(--typography-scale-caption-lineHeight__14bhs4v20)',fontWeight:'var(--typography-scale-caption-fontWeight__14bhs4v21)'},small:{fontSize:'var(--typography-scale-small-fontSize__14bhs4v22)',lineHeight:'var(--typography-scale-small-lineHeight__14bhs4v23)',fontWeight:'var(--typography-scale-small-fontWeight__14bhs4v24)'}}},spacing:{xxs:'var(--spacing-xxs__14bhs4v25)',xs:'var(--spacing-xs__14bhs4v26)',s:'var(--spacing-s__14bhs4v27)',m:'var(--spacing-m__14bhs4v28)',l:'var(--spacing-l__14bhs4v29)',xl:'var(--spacing-xl__14bhs4v2a)',xxl:'var(--spacing-xxl__14bhs4v2b)'},radius:{s:'var(--radius-s__14bhs4v2c)',m:'var(--radius-m__14bhs4v2d)',l:'var(--radius-l__14bhs4v2e)',xl:'var(--radius-xl__14bhs4v2f)',xxl:'var(--radius-xxl__14bhs4v2g)'},semantic:{error:'var(--semantic-error__14bhs4v2h)',success:'var(--semantic-success__14bhs4v2i)',info:'var(--semantic-info__14bhs4v2j)',warning:'var(--semantic-warning__14bhs4v2k)'},zIndex:{dropdown:'var(--zIndex-dropdown__14bhs4v2l)',modal:'var(--zIndex-modal__14bhs4v2m)',tooltip:'var(--zIndex-tooltip__14bhs4v2n)',toast:'var(--zIndex-toast__14bhs4v2o)'},motion:{fast:'var(--motion-fast__14bhs4v2p)',normal:'var(--motion-normal__14bhs4v2q)',slow:'var(--motion-slow__14bhs4v2r)'},components:{fieldInfo:{fontSize:{desktop:'var(--components-fieldInfo-fontSize-desktop__14bhs4v2s)',tablet:'var(--components-fieldInfo-fontSize-tablet__14bhs4v2t)',totem:'var(--components-fieldInfo-fontSize-totem__14bhs4v2u)'}},input:{label:{fontSize:{desktop:'var(--components-input-label-fontSize-desktop__14bhs4v2v)',large:'var(--components-input-label-fontSize-large__14bhs4v2w)',medium:'var(--components-input-label-fontSize-medium__14bhs4v2x)',small:'var(--components-input-label-fontSize-small__14bhs4v2y)',tablet:'var(--components-input-label-fontSize-tablet__14bhs4v2z)','tablet-medium':'var(--components-input-label-fontSize-tablet-medium__14bhs4v30)','tablet-small':'var(--components-input-label-fontSize-tablet-small__14bhs4v31)',totem:'var(--components-input-label-fontSize-totem__14bhs4v32)','totem-medium':'var(--components-input-label-fontSize-totem-medium__14bhs4v33)','totem-small':'var(--components-input-label-fontSize-totem-small__14bhs4v34)'}},input:{fontSize:{desktop:'var(--components-input-input-fontSize-desktop__14bhs4v35)',large:'var(--components-input-input-fontSize-large__14bhs4v36)',medium:'var(--components-input-input-fontSize-medium__14bhs4v37)',small:'var(--components-input-input-fontSize-small__14bhs4v38)',tablet:'var(--components-input-input-fontSize-tablet__14bhs4v39)','tablet-medium':'var(--components-input-input-fontSize-tablet-medium__14bhs4v3a)','tablet-small':'var(--components-input-input-fontSize-tablet-small__14bhs4v3b)',totem:'var(--components-input-input-fontSize-totem__14bhs4v3c)','totem-medium':'var(--components-input-input-fontSize-totem-medium__14bhs4v3d)','totem-small':'var(--components-input-input-fontSize-totem-small__14bhs4v3e)'},height:{desktop:'var(--components-input-input-height-desktop__14bhs4v3f)',large:'var(--components-input-input-height-large__14bhs4v3g)',medium:'var(--components-input-input-height-medium__14bhs4v3h)',small:'var(--components-input-input-height-small__14bhs4v3i)',tablet:'var(--components-input-input-height-tablet__14bhs4v3j)','tablet-medium':'var(--components-input-input-height-tablet-medium__14bhs4v3k)','tablet-small':'var(--components-input-input-height-tablet-small__14bhs4v3l)',totem:'var(--components-input-input-height-totem__14bhs4v3m)','totem-medium':'var(--components-input-input-height-totem-medium__14bhs4v3n)','totem-small':'var(--components-input-input-height-totem-small__14bhs4v3o)'},borderRadius:{desktop:'var(--components-input-input-borderRadius-desktop__14bhs4v3p)',large:'var(--components-input-input-borderRadius-large__14bhs4v3q)',medium:'var(--components-input-input-borderRadius-medium__14bhs4v3r)',small:'var(--components-input-input-borderRadius-small__14bhs4v3s)',tablet:'var(--components-input-input-borderRadius-tablet__14bhs4v3t)','tablet-medium':'var(--components-input-input-borderRadius-tablet-medium__14bhs4v3u)','tablet-small':'var(--components-input-input-borderRadius-tablet-small__14bhs4v3v)',totem:'var(--components-input-input-borderRadius-totem__14bhs4v3w)','totem-medium':'var(--components-input-input-borderRadius-totem-medium__14bhs4v3x)','totem-small':'var(--components-input-input-borderRadius-totem-small__14bhs4v3y)'},padding:{desktop:'var(--components-input-input-padding-desktop__14bhs4v3z)',large:'var(--components-input-input-padding-large__14bhs4v40)',medium:'var(--components-input-input-padding-medium__14bhs4v41)',small:'var(--components-input-input-padding-small__14bhs4v42)',tablet:'var(--components-input-input-padding-tablet__14bhs4v43)','tablet-medium':'var(--components-input-input-padding-tablet-medium__14bhs4v44)','tablet-small':'var(--components-input-input-padding-tablet-small__14bhs4v45)',totem:'var(--components-input-input-padding-totem__14bhs4v46)','totem-medium':'var(--components-input-input-padding-totem-medium__14bhs4v47)','totem-small':'var(--components-input-input-padding-totem-small__14bhs4v48)'}}},select:{padding:{desktop:'var(--components-select-padding-desktop__14bhs4v49)',tablet:'var(--components-select-padding-tablet__14bhs4v4a)',totem:'var(--components-select-padding-totem__14bhs4v4b)'}},button:{fontSize:{medium:'var(--components-button-fontSize-medium__14bhs4v4c)',small:'var(--components-button-fontSize-small__14bhs4v4d)',large:'var(--components-button-fontSize-large__14bhs4v4e)',tablet:'var(--components-button-fontSize-tablet__14bhs4v4f)','tablet-medium':'var(--components-button-fontSize-tablet-medium__14bhs4v4g)','tablet-small':'var(--components-button-fontSize-tablet-small__14bhs4v4h)',totem:'var(--components-button-fontSize-totem__14bhs4v4i)','totem-medium':'var(--components-button-fontSize-totem-medium__14bhs4v4j)','totem-small':'var(--components-button-fontSize-totem-small__14bhs4v4k)'},height:{large:'var(--components-button-height-large__14bhs4v4l)',medium:'var(--components-button-height-medium__14bhs4v4m)',small:'var(--components-button-height-small__14bhs4v4n)',tablet:'var(--components-button-height-tablet__14bhs4v4o)','tablet-medium':'var(--components-button-height-tablet-medium__14bhs4v4p)','tablet-small':'var(--components-button-height-tablet-small__14bhs4v4q)',totem:'var(--components-button-height-totem__14bhs4v4r)','totem-medium':'var(--components-button-height-totem-medium__14bhs4v4s)','totem-small':'var(--components-button-height-totem-small__14bhs4v4t)'},padding:{large:{text:'var(--components-button-padding-large-text__14bhs4v4u)',icon:'var(--components-button-padding-large-icon__14bhs4v4v)',textAndIcon:'var(--components-button-padding-large-textAndIcon__14bhs4v4w)'},medium:{text:'var(--components-button-padding-medium-text__14bhs4v4x)',icon:'var(--components-button-padding-medium-icon__14bhs4v4y)',textAndIcon:'var(--components-button-padding-medium-textAndIcon__14bhs4v4z)'},small:{text:'var(--components-button-padding-small-text__14bhs4v50)',icon:'var(--components-button-padding-small-icon__14bhs4v51)',textAndIcon:'var(--components-button-padding-small-textAndIcon__14bhs4v52)'},tablet:{text:'var(--components-button-padding-tablet-text__14bhs4v53)',icon:'var(--components-button-padding-tablet-icon__14bhs4v54)',textAndIcon:'var(--components-button-padding-tablet-textAndIcon__14bhs4v55)'},'tablet-medium':{text:'var(--components-button-padding-tablet-medium-text__14bhs4v56)',icon:'var(--components-button-padding-tablet-medium-icon__14bhs4v57)',textAndIcon:'var(--components-button-padding-tablet-medium-textAndIcon__14bhs4v58)'},'tablet-small':{text:'var(--components-button-padding-tablet-small-text__14bhs4v59)',icon:'var(--components-button-padding-tablet-small-icon__14bhs4v5a)',textAndIcon:'var(--components-button-padding-tablet-small-textAndIcon__14bhs4v5b)'},totem:{text:'var(--components-button-padding-totem-text__14bhs4v5c)',icon:'var(--components-button-padding-totem-icon__14bhs4v5d)',textAndIcon:'var(--components-button-padding-totem-textAndIcon__14bhs4v5e)'},'totem-medium':{text:'var(--components-button-padding-totem-medium-text__14bhs4v5f)',icon:'var(--components-button-padding-totem-medium-icon__14bhs4v5g)',textAndIcon:'var(--components-button-padding-totem-medium-textAndIcon__14bhs4v5h)'},'totem-small':{text:'var(--components-button-padding-totem-small-text__14bhs4v5i)',icon:'var(--components-button-padding-totem-small-icon__14bhs4v5j)',textAndIcon:'var(--components-button-padding-totem-small-textAndIcon__14bhs4v5k)'}},borderRadius:{large:'var(--components-button-borderRadius-large__14bhs4v5l)',medium:'var(--components-button-borderRadius-medium__14bhs4v5m)',small:'var(--components-button-borderRadius-small__14bhs4v5n)',tablet:'var(--components-button-borderRadius-tablet__14bhs4v5o)','tablet-medium':'var(--components-button-borderRadius-tablet-medium__14bhs4v5p)','tablet-small':'var(--components-button-borderRadius-tablet-small__14bhs4v5q)',totem:'var(--components-button-borderRadius-totem__14bhs4v5r)','totem-medium':'var(--components-button-borderRadius-totem-medium__14bhs4v5s)','totem-small':'var(--components-button-borderRadius-totem-small__14bhs4v5t)'},iconSize:{large:'var(--components-button-iconSize-large__14bhs4v5u)',medium:'var(--components-button-iconSize-medium__14bhs4v5v)',small:'var(--components-button-iconSize-small__14bhs4v5w)',tablet:'var(--components-button-iconSize-tablet__14bhs4v5x)','tablet-medium':'var(--components-button-iconSize-tablet-medium__14bhs4v5y)','tablet-small':'var(--components-button-iconSize-tablet-small__14bhs4v5z)',totem:'var(--components-button-iconSize-totem__14bhs4v60)','totem-medium':'var(--components-button-iconSize-totem-medium__14bhs4v61)','totem-small':'var(--components-button-iconSize-totem-small__14bhs4v62)'}}}};","import type React from \"react\";\nimport { useEffect, useState } from \"react\";\nimport { vars } from \"../../theme/theme.css\";\nimport { fieldInfoContainerClass } from \"./styles.css\";\n\ninterface FieldMessageProps {\n error?: React.ReactNode;\n info?: React.ReactNode;\n isDisabled?: boolean;\n}\n\nfunction useDelayedUnmount(visible: boolean, delay: number) {\n const [mounted, setMounted] = useState(visible);\n useEffect(() => {\n if (visible) {\n setMounted(true);\n return;\n }\n const t = setTimeout(() => setMounted(false), delay);\n return () => clearTimeout(t);\n }, [visible, delay]);\n return mounted;\n}\n\nexport function FieldMessage({ error, info, isDisabled }: FieldMessageProps) {\n const content = error ?? info;\n const visible = !!content;\n const mounted = useDelayedUnmount(visible, 200);\n\n if (!mounted) return null;\n\n const color = error\n ? vars.colors.red.default\n : isDisabled\n ? vars.colors.neutral.light\n : vars.colors.neutral.dark;\n\n return (\n <p\n className={fieldInfoContainerClass}\n data-visible={visible ? \"true\" : \"false\"}\n style={{ color }}\n >\n {content}\n </p>\n );\n}\n","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nimport 'src/theme/sprinkles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA72dTW_6WJaH9_0psuxeUArvoWYz0z2azki9qm6pNi1FNhgwGJsYEyCj_u4jv-Hr834JM6vSX7GfB-79cck5cCq_nI55nO6T6PSxik_HJLh9pFkafayi077Ijh8fw-35bbg4j17-5w8vL80lv76U1_zbH_71h1_w7eskuqLbp_3by2uY2-M0idNoQFLe-hTnUgYWJtlyjzBhH1NdxAA2ebxC90f9-8trwO3HYLWK083H9XpCd2-ru5srfn35CvI_DganY7CM082gvOFjOAm3p8nXaPonDoupe5HqQGccFDNTiekg5xzygJCfEvLQId84ZIKQhYRMOuSCXU3MvIir6UADFkpQv-Wdd7Ahg_1HdiQzNRy56EGRHR8KVoUn6FOVbghYCSfYbxrbELQSjbM2DDW0IXAlGu_kMNLQhuBVq02wt-pqGwJYJ4Wg7_WkGIL456wosgOdxd6xMQirKx-KYyshHJ8WhyGUjYIwFAaDIZqNgEjnxSAwBLQREDv9bRAYYtruAjaMRpZdMIT1nibCMTWlyRDZv0XrggzsqH8EJdG6eCiutYDghzrfENUKT9AjlW6IaQXHIR1tVbghohWc2Nq9CjfEs151gp7qq26IZpMagv9pSI0hlr_Fmy2Ty_4RlJcXPhTMRkEYLgaDIZq1gOB_63xDOGs8Tud4pOMN8azxeIfHUx1vCGiz-gT_zbD6hoi2CSIMoSVBUkgPQb6JUzKe4_rgqa_wy2VLJaBbCSpFsWESyL2AlNLXEIncpQJRClxDJDbqUyBKGWtXkkAW0kpKsbrvOQG9iHuuJ4krYMbfDti_fnHgmD0ZaWw9V3TxMpkqZD1edOkyeVPAesrowmUSKmA9bEzZMom0VdYzxxUtk62aDj16QskycY-IhyqWvoIwpAaDHkO2XJl86nw9jGyxMil0vB5JtlSZXHS8Hky-UJl8G1Zfj6dQpkxHlgTpIWWLlGnvqPGvUVw8QX9T6Xo4mQJlGmpsPZhMeTKNNLQeSqY4mW41tB5IrjSZ7tXV1sPIFibTVE-KHkS-LJn2jpoHqpKegOAXOl8PI1eSTC8qXY8jV5BMv1W4HkiuHJmNVLgeSbYYmU31VddDyZciszdDaqRYbgL6N8dZfbxsAs9fGSsegYtYnBS6kkbAthxMyljJwtma7TmWFKmSRWxGyrGkBFUrRsA-2RWTAlPvJ4Er-P2U8pFnl79yEalf83l2GXjHpMUS1G-RKqWlgWLmfCQxpdA0SJyb-VRCStlpkHiL5m8SUopQu5oEMxRXU0rSfecJaiTvvBSoZZacDymXqXn90q4v8o-VAyfYe40thatDE-RUIUsR68BEyj4VsBS0DkzsYKGApbg5q0yQL9oqS6Fz00Gwv9V0SNFbZ2nx9_g7un8NAX0Roj4nyusGp_g7avHF7Zht8uC4vQ1OyyCJBg1gcCe20uEnK91GQfURNpJOjdIGQEgLVhpmK-JpvhmN5d2E7sLqlsGxiLMUG0OjsQEQ0m9WejoECc7KW2RUVrdj4WgEheW3Yt6j6lcxNkD18VV9f2Ybub-NsRFyqPfnmgtqNkZ7s7oNEqU-C2o6TKnZW8WJkl4FKRupT7O3DRWhHr0KaiZYhVlcR4vSjqH2Eq-KLfmW-FYfqNUFfu-GDZNAfgtI6U2wJmLgYsQDpfe-moff9xZTnie95dU8vGeLN54nvdM1K0gAQ2EFpTe4dp8JZCTts_S-VqeQDM-iPpD6ObWlp6US0L0ElfLTMAlkKiClBDVEIkKfAlHKUEMkNqgQiFKK2pUkkBdpJaUc3fecgH6Ley42qeL0d_YgCppOSZwOHjiMOjRBnipksTHVggnum8wVW1ItFkcrCGWs2IxqsXjfgkjGim2o--oS3K2yumIDqksEQd5riVDC9s6fXEF6Zz9yejlwgv2psZXAvXPnWFAoZCVy79xxFlwUsBK6d-5UC74VsBK7d_ZwC0faKivBe-fPuHCqpkNuxl_5cy5se6rXh865O5oghwpZbsBfuXMujGSu3Hq_cudcuJWxctP9yp1z4V7Gyu32K3vOhamyunKj_cqfc-GnlgglbMI5FxZ39kPnXAcn2BeNrQSOPefCb4WsRI4955YjBayEjj3nllMFrMSOP-eWb9oqK8ETzrllqKZDil6Y5aso_y1YxecTsYvL-tyorxrk1WWtoP6Xu49LkU5s5ValO5u5EunEyuxVurMykUinFj5V8e7Kr2U-JfjUBa5hg_pfSXT9zziPllV7JM8uHTqvW19JdB2s2it-Ldv1GmKQR19Rfoo61IlDtZeKyLpT29EKklZfZQDhh3cWgMwjDJJ4k_53ER1OH6cij4rltsN9VbjqikFcXvLrS3MND6nkpyLIi45zwZzuMh61jNIiyjvMFWPqS5RHE6WrDnJjHkuUwvE6BxMGp6jsW3WYb4xpLwKY3flUxOvbX7K0iNKCWp_VawVrLhws6yuFNQJIsE6rIY0j14p6dO56rUbCY8NrBnDlsRwNwqi4RFGX-9WYZvautoCDPDu7j3UiceuLLdjoK0qTW4edStj6YuLV-nseHD_S7FL-546adS_Q8gfliGv5X-72_s1zeLN2KzogVm8UQji7_r4t__Xx2hEWHeFU_fDXl1f-xmF3Y4BvHBI3_rU8uh1f2N22ybMLbatuclxLeBM0HbNTXJ2kpyIo4mV356q6s_1xed6VP-fuzqMkKOIvZ4EjcH97BUcIwlOWnAuHsAaE9gqOsI6vkfMa2IDbqx_zzz5e7p2kb9GzL38O7s6-onydZJePr_gUh4nz0OPq9vbnv740F3D3b-PVyj0WduD2-ufc3adlniVJd_ce3F3_nLs7OBdZd28C7i1_Cu4somvxH-Vx_1F-2a279VDdWv50UL0b_PpS_py9GZ7VKbqdPKY7QN58ctLcn6H7qwvY25tTrAMcEaC5BH4Ufc5PWQ7Wrfk8vvoRuWrNXatoHZwT52HnvRubH9P3HrO4v2Sn3r3Nj-l706x8Vkl2cV8hRe9-5xKacQli54GfezeXPyM-h_29rmDyaHNOAueRf3WfwV64j8rqH5wG3c3Np4IH6hPfxnSIVvH50IkuHqL7vY0nFTyn6BCHWeIs5tXD5NzduDLB1ffcPDx9x5Fy_FdwiJMbzuV3p1lXlxCa-geD7t5GlBDf3ijzm8eHIL_985ekfHTRqbNFr-33N8os1Z7qH6dBc9PAuae2oA9oSUmXuWhodDhJsyg6wcgm6Eo3BQ_3JBqrArgV6ONkqAjyfcef6Pz6-ho-McDdDZia8M76U1_jyvKPPFpRGZqx-Dxa4fxQX-Tqw52HPjewu8dNfZWrh-7Abzr4jqW-yNViUVYWIhjmhPoq1x3dy0ggc918UF_icqHuAocq1llf6ruDWf5xi8p3LyoaS5Ze34PTgXpalMJ5_CuboXsOqK1FCDp8ZMLf4air1YejsKw1PMwLamsBQS8yG5Xupgb1szDaXfitBe6s-5bGb_IoSqnoxCy_ugUnJzYInMe_M_G7x7_T8R18b4Hf0XsRjUKTKHCYGea3ghbfi8xBY7uJQb8PIrC74KkB7aw3-iWwhofJOaLikrH08g6cFvR7H8Y7j_1ooXePHf3Ch-Ad-tOAvoPRl1ldMApKLqNhTtCXHHvwXkxOCtlNyUnDugtd6GBnndHXbGt0lgfphkzJmcXX9-CcoK9fUgrnCXzZDN1z-DIIOvzFhL_D0ReD-3CUmKuGh5lBXxQFgl5qbirdzc1NR7sL_22BO-uOvr5c40_RMktX7NvSmi-Y3DtxjoZM2UT5ume15msnQucUUEwFRdg6F19GYVdnYoqpvgkGbc1XVD0XqnCZugrY3NSt-eKqr3KzN2RKLOxxN4uvs5DJ3Sum2kqjc5EHyT9_uWxjpzu75sut5o5Be0PDZwquOx-HnK-6WgXON1N7AYuzWnwF1pc4K8UUYn1HZ-BLsZ6h4zPV2J2PYswXZa0BJZgpzjpHL7x8eXYX9HLLVGg9ursJfIHm8t09YAq0uyFMgqXzBPj6rBW0NzR8pj6rPkRArwW-PKuuh68Epjxr2OCR87VZzQaPG3_hIFjuN9Unfn_J5C7cui7UuhsGlNXekFPMzvZv_cVCl072dtbY28q37lgneq3ufKxqP4_39l6_ey-p2OQTje6mJr5OqfMHrXQPcH2wOG3tQMHoPMnUTyj0CHlfZ8u8bHzjkHShpB6tNrWbSPt6Cf00y8QWI2tyNy33cUl9R2hjO5Drk0VpbkbKXueZFt5aoUMpWjvn2dfJty05I4rql4dT7WWy1l5gLz5KscEp-dzNvHoapa4ndLKF5s0itbZCRavzTL99pUJ_VHLejZtXTyPfNGV8MLKbod2odlI5pxvYzchDKLZXBZuziZuxn0_quUIj033dTCxKYyNWcjrPcuqpFLqzgrHzzfx8fMuWtqGYzs0-tY_LGHshfbPrxOYu73I3b-Flkzq-0Mf2fjeBxWluA8te56mG3lqhNyxaO-fS18k3jDkjyuvKw6l2kVlrL7ORj1JsLUs-dzPXnkap3wydSud5Y2oS-DahLQ_Cef6mfoFnZ9rwELoHYGodeLWrZT2KuamL4NnDVh5CL_OmhoJPY1uXuwEw9Rb8ut3wATB9742pxWBtgbNS_LozdRo8-uKK2llsU9fB3iyXxZ3W1H6wdtBZKXplmRoR9rY6L-69nkwtCWOvXVS6G2tqSpgb8Ky239DemHoS1q48lJL9-Y2pJWFr1TNC8BxN_Qhj_74aBNR695umHVFPDf6wb88bnfBc_YRSv571dbabl03o01MudAZ8W216f570uS_97atZJvflOZOzaduhj0vsxzs2uhe_HWkuYx-eNjlPamwXSf130tNZJmaL0HeHDpi87dRi0fvtyNNL3MwkkfvslMHdlLnVIfbXHQvbW9--aSp7X531Oc9s4aWT-umcrXMFPi6hj06YUPRCo0vvn1O2XgCXVpXcN2c87matPExiv9xxcaXxNtJk5j45Z3Oe2dpHJvXHGVdn2niYhL449qAIbm0mvR9OuHoBjI0iuQ9OW9xN2tk9Yv_bMTG97-1eU1n73ozLeVaJh0rqd9OmznOwe4Q-N7Kg2KUmj97fxqZe6DKbRu5rkw53c45mi9jPdjxsL3v7qbnsfWzW5zy13Esn9a85W-c6-biEvjVhQvkrjC69X03Zehk8W1Vyn5rxuJv15WES-9OOS-lNb9Ui2Lsvrcid56vWw779aFndidXS2K8PzWpRbNUq2bf_zKvdDMdqwezVdxalzgbHau3s2W92xEyvOVZLaHOfmZKh10-sVtI-_WVe6SyqWlV79JVZYadTy2tzP5mSwVdIrBbaHn1kUth7Xaglt7V_zKncjVOLbnvfmNL1-6mxWnOb-8WOjOwVx2rJbewTYxF4Tmq9besPr-MkERrDcfN_AIqT5OGGMKVworCyGYQOMCHo8JEJz7d8-3D0Gl1reLXHCwS91-RGpYtNXYx2F35rgUtd3ApPt2_jmIPb2rYQ7TzsnU4W-rQA3GH3KpZvzHZQlI9EwqqdWAfcy8VBpIqt1z7SXdhUg0q91grLNlnjjGObm6uEwHnsRxNf6KZifAf_tMD59mkPjQKSK3C1X9rH92Jy0thigxSB3QUvDGipI1rBuUosPnN0awsU453H_mWhCz1PBO_QFwOab3K6YBSUq4xWu5o9eC8mN4UstjEh1l3obx0s9S0rNNOw3L1ybGOjEsG7x70bGthCZxKiO_BIB_OtSAcLw7Ebi2C19-ii3WjsJjJXbDYCqLvAUxUrdRcrMNtW3M04uLmdSAicBz838YX-IcZ38DcLnG8Y9tAoJQsFrnYI-_heUgKNLbYEEdhd8NCAlnqAFVxp_u3YQse36cfanGfE1jyeXT7O1ZnY8serrUd4ULjYSsizj0e5ekljiyKfxh1jcTeJrY_8OnWViWnR7dgyydqa69NxrNlqyaMXRzmcdWIrJ3vzjTB0fLaEsnbb-nQUXLaYsrfXgKEXV7asMvbTMNtdfLawMjfQ-vx-l2nH1lXWjllFJ1tlO7assrXIXDJ41GxNZeuJnYo820dCV2xXF1b1dQ_3xWiNs7eF1SL0xkhJpzgbFXx_DArQy-tLV6g9MiTpvcIuBoPYJ6Pw7kZcbQKpV9Yo6G7Z7sYLbP0yjHce_reFLvTMEPyO3r8a0HzfzAXD3OyHMlrtnfXgbl72I4Us9s8g1lno_VgHSz20Bs120fYTnm_uo5ES5zlMjQ6hl0YpOsHMJuD7aQCPgjNXBWpPDSp68XnT-WJfjYC7G7Aw4aXeWiPgSp19wBus_TVK4TyH0GYQemyEoMMvTXi-z9aHowCtNLzaawOCXnwilS722zDaXfi1BS713Bo803Xbb3i-se9GCJzHvzXxhd4bxnfw2ALn-289NArNToGrPbg-vheZvcYW-3AI7C54YkBLvbgGznbj9gdeYO7HkRLnSaRGh9CToxSdILMJ-L4cwKP0HFWB2puDil6CPnW-2J8j4O4G5Ca81KNrBEqXbi8UXr59OsHoPDOhBvPs1fG-ziaUY179OtKFQidUZp49O9rXS6BQpPn07ViTu2lCvebXu2tsTPduL5Rt1v4dNODIC9WbRw-P9nRrlgiVnL2PR1o6h1DSWXt50ABDnQjFnb2fhyxulBOhzDP29Ci-uxlCoWfu60FHv0eWCHWetbfXGMjuXiKUebb-Xp8OHr1Q4wk9vn8v_0ZTUP5FsyhKX4J09fJH548vz2fz4_VPFdh5GKv4dEyC20eapdHHIQtj5w-11a-Zl5fmmvKPYJV_tvLl5V80o_xDepAxhozyIoERp-XfxhxQqBlEOdcKxDDJlnvIWkBWdZVA2eTxCkKWEFJeRDCOwWoVp5vqD1kDxLpBNJe0e83-FWuejdCxggZ_xJolI3Aig8HfsGa5B8jNZC74E9YsN4HcXOaCv2DNrzACn5UVBn_AWsgFQl-1XIC_X82x_5EdqdgNX_v8QZEdH85e5cCKsUFhzGBpwIKZLjBmseSjOA4XOt-YyZKPtni41PnGbFY7gAVrww4YM1rnCCtiS46MWf1zVhTZgYwrOHIGYXXpw4ltTViU2UTG3DYerMlNGmN6GwsO8NlkMWa4seAIXE0WY5LbnUGaETyxmJ0x5vmeNSyC5xaXNWOq_1b-GVgi0yN4fJV_D_bhRNcWLIFnGCkxprlyYAU8xiiFMcmVAeV4BM8xymBMcWXAew6PMcpgTHC9E1gBjzByJ4zpbTKFJfD4ojNlTO5vVa1KRRceX9XfEn44u40Ha-D5RWuM6a0tWAKPL1JizG_tQAEew7OLdBgTXDvQ1o_hsUU6jBludgRL4JlF74gxxW2-sAaeWky-tBwfgnwTp1SCx-2hVV_iH90WjclrmayltQFjbixytYA2WBzNRMRqmWyweAczEavFsF1dzM3l1dWSd08EJp-VRNjCxtRb42uP_li55RiQYPKqC2zRI2utyVjF2xJIVlqTmUq3BZGssyYLlW7LI11lTZb6yttiydRYk7UhO7Z08hXWpH-8PFxg9T1Yk5g0tqRy1dUks0hseeVqq0lucdhSy1VWk7PFYcsuW1dNrqYdsSWYr6qmr7Z82XLM1VRTcEw9VlK5DqyYGRS2_NL11HShC2zZpaup6VLn23JL11LTtc63ZZappKaxYQdseeXqqGliyZEtq2wVNQXH1INFVM-CJblFYssrU0FNzwaFLbFM_TS9Ggy2zDLV0-zVYLCllqudZmPLTthyy1ZOs5kpU1pyNwH5W-ysPZo2wQO_vlZQzFwKTC2XJRIT1zxRi2EJRPGbxTxQS10JxLuU8EAtZNUqYmImrKKWqXq3MTOXdluLUJ5d_sqkqD0v8uwyeChJLRujrwpaC1RDRuD5qwzWctVwUbTmY5mrxavhor2bz2SulrJ2hTF4oaywFrZ7LjB6qeVCy9wyS86HlIndvD0W6qseS55jwIJYF2j56_gYn6h4LYUdHQcxU-laFjs63tpcpWuJdFYe48_6ymu5dLODBVdDdrR0rrO0-Hv8Hd2_UgIkb-0ZU144OMXf92_-FLdjtsmD4_Y2OC2DJBo0hMEdef8i0Kdo3kZB_dULYB6bzQ2BMBeiOcxW-AnPzNrydsJ5EZ3L4FjEWYq0C7O2IRDmb9F8OgQJCtHb0uyt7sfW0Yiylt-Beo-q3wi5ZLVHX_V1qW3k_lLIZsvB3p91rvi5fMUe_jZhlP-s-MmUJR7yKmeU-aqYuaxlHvI2bYR_9Kr46cTlHvY6c5R7TLmrLxVS77Nv7WHcfO3Q9y22AWPuVeRq76w1FlEXrxJVe0OtoejNdDGWoNr7aA1Fm7mYSVDt7bNZVUxdiKuqvWu2KcDcpZwC7c2yDiuVr0V7mPXzbA9Yi8bkWCZrEWvAmJuIXC1kDRanLBOxWswaLN65XMRqQWtXF3PP8upqUbsnApOvSiLURl2c_s4dZ8G9MxSngwePtI6P8WMVrzbnWjqGzzS42pZr2Sh9wUJjqw25lo02NFhqbLUVd19xDF-rK6424bq8YHys58WQx3f2_AsSR_DoGegYsCDTBYZMvjOnYZCreEMq35lDMTirdEMu35mzMbiqdEMy37kjMnzVV96QzXf2pAzHhuzoH2tc2dMy7PrP14dPyzsf4xcqXv8o48qcluFSg-sfYlyZ0zJca2z944src1qGscbWP7i4cqdlmKgrrn9kcWVPyzDT82LII39ahrkjePi07AxYcNYFhkxyp2V4VfGGVHKn5fJVpRtyyZ2Wy7FKNySTPS2XM33lDdnkT8vlwpAdLZ31_8H-t2AVn094e5ftmdP8j-7z6rrWUv_L3eClqsB7vDYonF1eqQq8ULFB4SxUpCqIzUgMDnc31rqEsGQWi6vZNBp6-rL7HXA-eyunL-FQ5vB1NNamMosgTKJuBHjYPESvqUzAmECGx1QmQM0hymcqE7ACyDJNZQLICkIMU5kAsel___jhb7Z_YPROQdunMgH4IIPtU5mAe5S59qlMwD3JXI-pTAD-UlbYZyoToG9aLjynMuEre9jnP2MqEyomBoXXVCYUzHWB11Qm5Ac632sqE_JXOt9vKhMKNoYd8JzKhIqdJUf-U5lQA46c501lQtHRJvKdyoSak0njO5UJLV8mi-9UJrTcTBbvqUygGcET62lTmVAEz61nTWVCDzy-njKVCSXwDHvCVCZUwGPs51OZ0ADPsZ9PZUIDPMaeMJUJFfAIe8pUJpTA4-tJU5lQA4-vJ01lQg08v54ylQkl8Ph6xlQmcIzh2fWMqUzogMfWU6YyoQSeWU-ayoQaeGr9fCoTGtpD6-dTmZC8kcnmqUzI3Ylc81QmxB5ErHkqE2KPItY-lQm5J3l1PaYyIflLSYTfVCak33r0J0xlwjbLUBf4TGVC_ETF-0xlQvpcpftMZUJ6oNK9pjIhfqWvvN9UJhRsDNnxnsqEkv7x8rSpTKg5mDSeU5lQcrRIPKcyoeNkcXhOZULHl8XhO5UJJTfTjnhPZQLNdGjLl-dUJrSAY-oZU5lQMTcovKYyoSDQBV5TmZC_0vleU5mQv9H5flOZULAz7IDnVCZUHCw58p3KhBJwTD1nKhNKThaJ31QmVHwZFH5TmdBwMxj8pjKBYTY0GDynMqFiYtkJ36lMKJmbMmWdyoT09mj6yVQmZK4Epm0qExI3PNE2lQmBOx5om8qEwAMPNE5lQuJRWEXrVCZknqTd9pjKhNz2vHjCVCZE3xS0eSoTfvQ8lMHmqUzInchc81Qm5M5lrn0qE4IDZYU9pjIheqXlwm8qE-LbY-FpU5lQsNMFPlOZEH9Q8T5TmZB-VOk-U5mQflLpXlOZEP-lr7zfVCYU3AzZ8Z7KBJK39oz5v5_KhOaJ2fyjqUyonZu1P5rKhNrArP3ZVCb0rszen05lQnN79P1_TWVC_87D_-OpTCg_eMh_PJUJ5UcP-c-nMqH95GF_eCoTStvD-KdTmZB7E7nWqUxAXQwlqnUqE0InEtQ6lQmhcwlqnsqE1EBcVftUJuSu5BR4TGVCcnuY_XwqE5J3Mtk8lQm5B5FrnsqE2KOINU9lQuxJxNqnMiH3S15dj6lMSL4pifCayoRfFL53hp4zlQnxExXvMZUJ4XMN7jGVCdmBxvaYyoTslcb2mcqE8I264l5TmRC_0_PiN5UJBQdH8JSpTCg46gKfqUyIP6l4n6lMSP9S6T5TmZB-U-leU5kAHw71lfebyoSCiSE7XlOZUND1n58ylQnxgYr3mMqE8JUG95jKhOyNxvaYyoTsncb2mcqE8IO64l5TmRB_1PPiN5UJBSdH8JSpTCj40gU-U5kQf1PxPlOZgL4cqnSfqUxIn6h0r6lMiJ_rK-83lQkFgSE7nlOZUNGeOU-cyoSKjUHhOZUJFTuDwncqEzoOBof_VCa0HC0WcirzfwEZHmviUh4BAA';\nimport 'src/components/FieldInfo/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA7WTQW_bMAyF7_kVRE4JNhl25xWDgp1y6rmnYSgMxaYTobJoUIzTdOh_H2SvTtskQJBiJxuU9L33RCoJsncYitqiq-58TUvyYqxHXjoTQlFkXf54-6PL4M8EoCYvKthn1NAZnilVUtOSRy9BjQQVd93bZ1QVhkehtiiyfLUJeXcT5ouREnU1eOLGuLG6Q7veiIY8TWPNWY9q869WGlfOrpSFL5C3T726QxFkFVpTWr_WkCZ5-xQXKFZkr6GXFjY-1MSNHn6dEfw1U6-UvmbFktevByFNbkJv2fDXw_m35cXkZZJceuO_KyNGdTbYlcOfU-EtTh_6NoxOs_NO03kUGxgVdraMCLNyKNMHuNjDNV0fVA63L_PrW3nMGjt5FI4Em_-eLYoc7Gw_E-0j6k2yyzOEbj3ksM5pKLfM6GVJjnjxPl12G6f8gEZm4ntH8p6Y97TKhtaZvYY12yqC4lcJNm0cLsW0CxrSmj--hONtkCbfTk3_OfnzQ3_KQlafht75o6v6PrycDrl2tNOwsVWFfjF5-Quom_k9AgUAAA';\nexport var errorSlotClass = 'styles_errorSlotClass__1v4k68v4';\nexport var errorSlotInnerClass = 'styles_errorSlotInnerClass__1v4k68v5';\nexport var fieldInfoClass = 'styles_fieldInfoClass__1v4k68v3 sprinkles_display_flex_desktop__1hu819u5 sprinkles_alignItems_center__1hu819ucx sprinkles_gap_xxs_desktop__1hu819u6b';\nexport var fieldInfoContainerClass = 'styles_fieldInfoContainerClass__1v4k68v1 sprinkles_display_flex_desktop__1hu819u5 sprinkles_alignItems_center__1hu819ucx sprinkles_gap_xxs_desktop__1hu819u6b';","import { Progress } from \"@base-ui/react/progress\";\nimport clsx from \"clsx\";\nimport type React from \"react\";\nimport { forwardRef } from \"react\";\nimport { vars } from \"../../theme/theme.css\";\nimport { spinnerStyles } from \"./styles.css\";\n\ninterface SpinnerProps extends React.HTMLAttributes<HTMLDivElement> {\n color?: string;\n size?: number;\n /** When provided, renders a determinate progress bar with role=\"progressbar\" and aria-valuenow. */\n value?: number;\n max?: number;\n}\n\nconst SVG_MASK =\n \"url(\\\"data:image/svg+xml, <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'><path d='M9.249 0.645999C9.63764 0.588245 10.0334 0.685283 10.3513 0.916254C10.6691 1.14722 10.8837 1.49369 10.9488 1.88116C11.0139 2.26864 10.9243 2.66619 10.6994 2.98835C10.4745 3.31051 10.1322 3.53157 9.746 3.604C7.99897 3.90027 6.41326 4.80555 5.26996 6.15934C4.12666 7.51314 3.49963 9.22802 3.5 11C3.5 12.9891 4.29018 14.8968 5.6967 16.3033C7.10322 17.7098 9.01088 18.5 11 18.5V21.5C5.201 21.5 0.5 16.8 0.5 11C0.5 5.855 4.226 1.49 9.249 0.645999ZM15.892 3.29799C16.0235 3.15124 16.1827 3.03185 16.3604 2.94664C16.5381 2.86143 16.7309 2.81208 16.9277 2.8014C17.1245 2.79072 17.3214 2.81892 17.5073 2.8844C17.6932 2.94987 17.8643 3.05134 18.011 3.18299C19.11 4.16702 19.9888 5.37197 20.59 6.71901C21.1913 8.06606 21.5013 9.52486 21.5 11C21.5 16.8 16.799 21.5 11 21.5V18.5C12.5182 18.5 14.0006 18.0393 15.2513 17.1788C16.502 16.3182 17.4621 15.0984 18.0047 13.6805C18.5473 12.2626 18.6469 10.7135 18.2902 9.23782C17.9335 7.76216 17.1373 6.42949 16.007 5.41599C15.7109 5.15036 15.5325 4.778 15.5109 4.38081C15.4893 3.98361 15.6264 3.59412 15.892 3.29799Z'/></svg>\\\")\";\n\nexport const Spinner = forwardRef(function Spinner(\n { color, size, value, max = 100, className, ...props }: SpinnerProps,\n ref: React.Ref<HTMLDivElement>,\n) {\n const resolvedColor = color || vars.colors.primary.default;\n const resolvedSize = size || 22;\n\n const spinnerDiv = (\n <div\n ref={ref}\n className={clsx(spinnerStyles, className)}\n {...props}\n style={{\n width: `${resolvedSize}px`,\n height: `${resolvedSize}px`,\n backgroundImage: `conic-gradient(${resolvedColor} 0%, transparent 5%, transparent 10%, ${resolvedColor} 100%)`,\n maskImage: SVG_MASK,\n maskSize: \"contain\",\n maskRepeat: \"no-repeat\",\n maskPosition: \"center\",\n ...props.style,\n }}\n />\n );\n\n if (value !== undefined) {\n return (\n <Progress.Root value={value} max={max}>\n <Progress.Track style={{ display: \"contents\" }}>\n <Progress.Indicator style={{ display: \"contents\" }}>\n {spinnerDiv}\n </Progress.Indicator>\n </Progress.Track>\n </Progress.Root>\n );\n }\n\n return spinnerDiv;\n});\n\nSpinner.displayName = \"Spinner\";\n","import 'src/components/Spinner/styles.css.ts.vanilla.css?source=QGtleWZyYW1lcyBzdHlsZXNfc3BpbkFuaW1hdGlvbl9fMTV5ZGdleTAgewogIDAlIHsKICAgIHJvdGF0ZTogMGRlZzsKICB9CiAgMTAwJSB7CiAgICByb3RhdGU6IDM2MGRlZzsKICB9Cn0KLnN0eWxlc19zcGlubmVyU3R5bGVzX18xNXlkZ2V5MSB7CiAgd2lkdGg6IDIycHg7CiAgaGVpZ2h0OiAyMnB4OwogIGFuaW1hdGlvbjogc3R5bGVzX3NwaW5BbmltYXRpb25fXzE1eWRnZXkwIDJzIGxpbmVhciBpbmZpbml0ZTsKfQ';\nexport var spinnerStyles = 'styles_spinnerStyles__15ydgey1';","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nimport 'src/components/Input/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA8VY3Y6bOBi9n6ewRqrUSOsoECaTUs1V36CVdi9WVeSAE9wxNmub_Ey1776ygQQMSQgm2ptEGHO-42N8bM5UqiPFckVYlqu_BMoyLL5RJOVqtZMcBa8z8PsJgIxLoghnIRCYIkV2-OsTADGRGUXHEGwoPugG_Q9jInBUdI44zVOm72xRFoIdEp8hlBmKCNvCw0GuVl6wTmSw818mulfEKRdVP3MhIcO5EojCGIn3U39vbfpvOFNQkg8cAi_IDucmPagQMC5SRE-te0y2iQpBMJvpNkoYhknZ5s-KxylWCouKYwhmU0_f-PdpelsoitaYGrl6kFh0kQgukngp7jgIVD2TZpxhpiQ0I4GGNNT9fpAPDCkSW3yelv1Ej_3vGCkEY7wjEX57VmhNsXr-CQZIcgeTosyZyscYVIrHNY23Z5kiSp9_urCDBuPEce6NzTHFMclTR5IFyJnlrIslVzh9_JzqKmci_ghExptRXdie0GBkho7zaSja0znv4Bhj-a549n_o2FTQP47Ozk1DSz3_MOnn7mGC5GdzO4yJ1AsrntSWwjVjptrdz878xb2i3G2L0RNKBxf9xplChFllPQN8c2cXfK-bESVbBonCqQxBhJnC4rTbL4sta09ilYTAm80-6cs1FzEWIfCyA5Cckrj_ZrZG0ftW8JzF8Jrc-4So8xbmLYafLDYoJfRYPaWOGd8KlCXH8gaM8QbltKYynTzuCAKAEohVx7BCxmIkYDb1pRlkLqQepcIH1Xe6w4TvsDCTXse8IhUW5wFHvV-r2tu84VEu4Y5IsqZ4YkrzXGktQuB3vxaZICkSbcXnRvDyacg3G4mVAelLqzAWwnaIkvjtWYkcl85yRQ2B4xaT_gusc13_rk1fCX3rte1Y4b3mcLgz9LCd9lpyEGVcm9P2_ycSBDElV-U5t6jumyrVOrywjxS_RSfrmDzfGu0zFMdmxV5FKHtZEMGsPn0CxSSXN4CKvt9NV5vQPz1P_8XvhdP_fNH7OPsQka0vgPmvASpbGMHcTWabkhqmsw3zpe8x8zE6N0_l6RCZGxDBwlHlJqH9QJGbKNe2qoaa1QmxkHN-t5z2-TwZoKeFEXhugtqUxDBFbZhXR39wVfrC9-37YJ9o6R6MYRctgrmLa7TQkJt5OE9C50cpG2oirSl4HcFLWvQODpbSAov7Okv5aVwoHdyttJVNkAESNyEC301bi5AcJqqFsnQ0FUeRu4M9OtxSLMlfRnEUi97OyVAssLWbn7jq3xXD8cFuYqm_HMNMLHJHFy-xsHDTSiLOLh_0Xoy2ZbxShQfNMOH2Orqjgm9V8Dsr2C_KHQUCq0BgfcbbUM2da_EIOa6VGEePARUuYjWW3msdyls0oYrr-_W4UmFpVVgOkuP-Ak1LqocKyyI8oPgQAk8_mhIGS7RZRzR5QraiSsYZ_loPqaqGkyEZtBSJLWHlRTurNOldhgRm9WSHsAQLolqRo91eOEurtQgZ7eYqZay1N5LGersVNp5uXRU2DDOKIpxwGpfZ4dXQ0I5JUceBqYlfZUAj5WL9it03quEx2lS_9ZDijfrjwoba-YDQBZvpPGFmXquQ_kIa_yuXimyOMOJMYabqt0ysLxNB2Lt5ce8egc7oBoyiSvZurMAHBI1gioXgAmoyJ3-oS9BZ9WLi-x9d7rYiQCEAAA';\nexport var iconSizeVariants = {large:'styles_iconSizeVariants_large__vsoa475',medium:'styles_iconSizeVariants_medium__vsoa476',small:'styles_iconSizeVariants_small__vsoa477'};\nexport var inputClass = 'styles_inputClass__vsoa478';\nexport var inputContainerClass = 'styles_inputContainerClass__vsoa471';\nexport var inputContainerSizeVariants = {large:'styles_inputContainerSizeVariants_large__vsoa472',medium:'styles_inputContainerSizeVariants_medium__vsoa473',small:'styles_inputContainerSizeVariants_small__vsoa474'};\nexport var inputWrapperClass = 'styles_inputWrapperClass__vsoa470';"],"mappings":"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","names":["NavigationMenu","forwardRef","useCallback","useRef","useState","ScrollArea","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsx","forwardRef","useEffect","jsx","forwardRef","Image","useEffect","jsx","jsxs","NavigationMenu","useRef","jsx","jsxs","useRef","NavigationMenu","NavigationMenu","useRef","useState","forwardRef","useRef","useState","useEffect","useState","jsx","useState","useEffect","forwardRef","jsx","forwardRef","Spinner","jsx","jsxs","forwardRef","useState","useRef","_a","jsx","jsxs","useState","useRef","NavigationMenu","jsx","jsxs","useState","useRef","useCallback","NavigationMenu","forwardRef"]}
1
+ {"version":3,"sources":["../../../src/components/CollapsableMenu/index.tsx","../../../src/utils/functions.ts","../../../src/components/ScrollArea/index.tsx","../../../src/components/ScrollArea/styles.css.ts","../../../src/components/CollapsableMenu/hooks/useMenuState.ts","../../../src/components/icons/IconChevronDown.tsx","../../../src/components/icons/IconClose.tsx","../../../src/components/icons/IconCloseMenu.tsx","../../../src/components/icons/IconExclamation.tsx","../../../src/components/icons/IconEye.tsx","../../../src/components/icons/IconEyeSlash.tsx","../../../src/components/icons/IconMenu.tsx","../../../src/components/icons/IconSearch.tsx","../../../src/theme/themeValues.ts","../../../src/utils/consts.tsx","../../../src/components/CollapsableMenu/menuContext.tsx","../../../src/components/CollapsableMenu/styles.css.ts","../../../src/components/CollapsableMenu/MenuSubitem/index.tsx","../../../src/components/CollapsableMenu/MenuContent/index.tsx","../../../src/components/CollapsableMenu/MenuHeader/index.tsx","../../../src/components/Image/index.tsx","../../../src/components/Image/styles.css.ts","../../../src/components/CollapsableMenu/MenuItem/index.tsx","../../../src/components/CollapsableMenu/MenuSearch/index.tsx","../../../src/components/Input/index.tsx","../../../src/theme/theme.css.ts","../../../src/components/FieldInfo/FieldMessage.tsx","../../../src/components/FieldInfo/styles.css.ts","../../../src/components/Spinner/index.tsx","../../../src/components/Spinner/styles.css.ts","../../../src/components/Input/styles.css.ts"],"sourcesContent":["import { NavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport React, {\n forwardRef,\n type HTMLAttributes,\n useCallback,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport {\n filterItems,\n filterSidebarItems,\n formatSearchItems,\n} from \"../../utils/functions\";\nimport { ScrollArea } from \"../ScrollArea\";\nimport { useMenuState } from \"./hooks/useMenuState\";\nimport { MenuContent } from \"./MenuContent\";\nimport { MenuHeader } from \"./MenuHeader\";\nimport { MenuItem } from \"./MenuItem\";\nimport { MenuSearch } from \"./MenuSearch\";\nimport { MenuProvider } from \"./menuContext\";\nimport {\n menuBodyClass,\n menuContainerClass,\n menuContainerOpenClass,\n menuFooterClass,\n menuPopupWrapperClass,\n menuViewportClass,\n} from \"./styles.css\";\nimport type { MenuItemProps, MenuObjectProps } from \"./types\";\n\ninterface BodyNavigationMenuProps {\n bodyItems: MenuItemProps[];\n renderMenuItem: (item: MenuItemProps, index: number) => React.ReactNode;\n searchInput: string;\n onSearchChange: (value: string) => void;\n onActiveSearchChange: (value: string) => void;\n searchItems: MenuItemProps[];\n searchPlaceholder?: string;\n searchEmptyMessage?: string;\n}\n\nconst BodyNavigationMenu: React.FC<BodyNavigationMenuProps> = ({\n bodyItems,\n renderMenuItem,\n searchInput,\n onSearchChange,\n onActiveSearchChange,\n searchItems,\n searchPlaceholder,\n searchEmptyMessage,\n}) => {\n const [navValue, setNavValue] = useState(\"\");\n const searchInputFocusedRef = useRef(false);\n\n const handleInputFocus = useCallback(() => {\n searchInputFocusedRef.current = true;\n setNavValue(\"search\");\n }, []);\n\n const handleInputBlur = useCallback((popupHovered: boolean) => {\n searchInputFocusedRef.current = false;\n if (!popupHovered) setNavValue(\"\");\n }, []);\n\n return (\n <NavigationMenu.Root\n delay={0}\n closeDelay={100}\n orientation=\"vertical\"\n value={navValue}\n onValueChange={(val) => {\n if (!val && searchInputFocusedRef.current) return;\n setNavValue(val);\n }}\n >\n <NavigationMenu.List>\n <MenuSearch\n sideBarOpen={false}\n searchInput={searchInput}\n onSearchChange={onSearchChange}\n onActiveSearchChange={onActiveSearchChange}\n searchItems={searchItems}\n searchPlaceholder={searchPlaceholder}\n searchEmptyMessage={searchEmptyMessage}\n onInputFocus={handleInputFocus}\n onInputBlur={handleInputBlur}\n />\n {bodyItems.map(renderMenuItem)}\n </NavigationMenu.List>\n <NavigationMenu.Portal>\n <NavigationMenu.Positioner\n sideOffset={4}\n side=\"right\"\n align=\"start\"\n collisionAvoidance={{ align: \"none\" }}\n style={{ zIndex: 10 }}\n >\n <NavigationMenu.Popup className={menuPopupWrapperClass}>\n <NavigationMenu.Viewport className={menuViewportClass} />\n </NavigationMenu.Popup>\n </NavigationMenu.Positioner>\n </NavigationMenu.Portal>\n </NavigationMenu.Root>\n );\n};\n\nexport interface CollapsableMenuComponentProps\n extends HTMLAttributes<HTMLDivElement> {\n menuObject: MenuObjectProps;\n defaultSideBarOpen?: boolean;\n onSideBarToggle?: (e: boolean) => void;\n subitemComponent?: React.ElementType;\n searchPlaceholder?: string;\n searchEmptyMessage?: string;\n}\n\nexport const CollapsableMenu = forwardRef<\n HTMLDivElement,\n CollapsableMenuComponentProps\n>(\n (\n {\n menuObject,\n defaultSideBarOpen,\n onSideBarToggle,\n subitemComponent = \"a\",\n searchPlaceholder = \"Buscar\",\n searchEmptyMessage = \"Nenhum resultado encontrado\",\n ...props\n },\n ref,\n ) => {\n const { state, actions } = useMenuState(\n defaultSideBarOpen,\n onSideBarToggle,\n );\n\n const itemsFormattedToSearch = useMemo(\n () => formatSearchItems(menuObject.categories),\n [menuObject.categories],\n );\n\n const searchItemsFiltered = useMemo(\n () =>\n itemsFormattedToSearch.filter((item) =>\n filterItems(item, state.searchInput),\n ),\n [itemsFormattedToSearch, state.searchInput],\n );\n\n const { footerItems, bodyItems } = useMemo(() => {\n const filtered = filterSidebarItems(menuObject.categories);\n return {\n footerItems: filtered.filter((item) => item.barPosition === \"footer\"),\n bodyItems: filtered.filter((item) => !item.barPosition),\n };\n }, [menuObject.categories]);\n\n const renderMenuItem = useCallback(\n (item: MenuItemProps, index: number) => (\n <MenuItem\n key={`menu-item${item.path || \"\"}-${index}`}\n item={item}\n sideBarOpen={state.sideBarOpen}\n categoryOpen={state.categoryOpen}\n toggleCategoryOpen={(category) =>\n actions.setCategoryOpen(\n state.categoryOpen === category ? null : category,\n )\n }\n />\n ),\n [state.sideBarOpen, state.categoryOpen, actions],\n );\n\n return (\n <MenuProvider component={subitemComponent}>\n <div\n ref={ref}\n className={`${menuContainerClass} ${\n state.sideBarOpen ? menuContainerOpenClass : \"\"\n }`}\n role=\"navigation\"\n aria-label=\"Menu principal\"\n {...props}\n >\n <MenuHeader\n sideBarOpen={state.sideBarOpen}\n profile={menuObject.profile}\n onToggleSidebar={actions.toggleSidebar}\n />\n\n <div className={menuBodyClass}>\n {state.sideBarOpen ? (\n <ScrollArea maxHeight=\"calc(100vh - 48px)\">\n <MenuSearch\n sideBarOpen={state.sideBarOpen}\n searchInput={state.searchInput}\n onSearchChange={actions.setSearchInput}\n onActiveSearchChange={actions.setActiveSearch}\n searchItems={itemsFormattedToSearch}\n searchPlaceholder={searchPlaceholder}\n searchEmptyMessage={searchEmptyMessage}\n />\n\n <MenuContent\n activeSearch={state.activeSearch}\n sideBarOpen={state.sideBarOpen}\n searchItemsFiltered={searchItemsFiltered}\n bodyItems={bodyItems}\n onSearchChange={actions.setActiveSearch}\n renderMenuItem={renderMenuItem}\n />\n </ScrollArea>\n ) : (\n <BodyNavigationMenu\n bodyItems={bodyItems}\n renderMenuItem={renderMenuItem}\n searchInput={state.searchInput}\n onSearchChange={actions.setSearchInput}\n onActiveSearchChange={actions.setActiveSearch}\n searchItems={itemsFormattedToSearch}\n searchPlaceholder={searchPlaceholder}\n searchEmptyMessage={searchEmptyMessage}\n />\n )}\n </div>\n\n <div className={menuFooterClass}>\n {state.sideBarOpen ? (\n footerItems.map(renderMenuItem)\n ) : (\n <NavigationMenu.Root\n delay={100}\n closeDelay={150}\n orientation=\"vertical\"\n >\n <NavigationMenu.List>\n {footerItems.map(renderMenuItem)}\n </NavigationMenu.List>\n <NavigationMenu.Portal>\n <NavigationMenu.Positioner\n sideOffset={4}\n side=\"right\"\n align=\"start\"\n collisionAvoidance={{ align: \"none\" }}\n >\n <NavigationMenu.Popup className={menuPopupWrapperClass}>\n <NavigationMenu.Viewport className={menuViewportClass} />\n </NavigationMenu.Popup>\n </NavigationMenu.Positioner>\n </NavigationMenu.Portal>\n </NavigationMenu.Root>\n )}\n </div>\n </div>\n </MenuProvider>\n );\n },\n);\n\nCollapsableMenu.displayName = \"CollapsableMenu\";\n","import axios from \"axios\";\nimport {\n addDays,\n getDaysInMonth,\n isAfter,\n isBefore,\n set,\n subDays,\n} from \"date-fns\";\nimport type { MenuItemProps } from \"../components/CollapsableMenu/types\";\n\n// Função para calcular o MDC (Máximo Divisor Comum) usando o Algoritmo de Euclides\nexport const mdc = (a: number, b: number) => {\n while (b !== 0) {\n [a, b] = [b, a % b];\n }\n return a;\n};\n\n// Função para calcular o MMC (Mínimo Múltiplo Comum) de dois números\nexport const mmc = (a: number, b: number) => {\n return Math.abs(a * b) / mdc(a, b);\n};\n\n// Função para calcular o MMC de um array de números\nexport const mmcArray = (numbers: number[]) => {\n return numbers.reduce((acc, num) => mmc(acc, num), 1);\n};\n\ninterface PriceOptions {\n hasPrefix?: boolean;\n minimumFractionDigits?: number;\n maximumFractionDigits?: number;\n}\n// Função para formatar preço\nexport const formatPrice = (price: number | string, options?: PriceOptions) => {\n if (price === undefined || price === null) return \"\";\n\n const hasDecimal =\n price.toString().includes(\".\") || price.toString().includes(\",\");\n\n if (typeof price === \"string\") {\n price = price.replace(/\\./g, \"\").replace(\",\", \"\");\n }\n\n const parsedPrice =\n typeof price === \"string\"\n ? parseFloat(price) / (hasDecimal ? 100 : 1)\n : price;\n\n const amount = new Intl.NumberFormat(\"pt-BR\", {\n style: \"currency\",\n currency: \"BRL\",\n ...options,\n }).format(parsedPrice);\n\n return options?.hasPrefix === false ? `${amount}`.substring(3) : `${amount}`;\n};\n\n// Função para mascarar uma string\nexport const maskString = (string: string, percent = 50, char = \"*\") => {\n const length = string.length;\n const charAmount = length * (percent / 100);\n const firstAmount = Math.floor((length - charAmount) / 2);\n\n return (\n string.substring(0, firstAmount) +\n char.repeat(charAmount) +\n string.substring(firstAmount + charAmount)\n );\n};\n\n// Função para limpar telefone\nexport const clearPhone = (phone: string) => {\n return phone.replace(/\\D/g, \"\");\n};\n\n// Função para validar um CPF\nexport const validateCPF = (cpf: string) => {\n if (cpf.length !== 11) {\n return false;\n }\n\n if (cpf.match(/(\\d)\\1{10}/)) {\n return false;\n }\n\n const numbers = cpf.substring(0, 9);\n const digits = cpf.substring(9);\n\n const sum = numbers\n .split(\"\")\n .map((number, index) => parseInt(number, 10) * (10 - index))\n .reduce((acc, curr) => acc + curr);\n\n const firstDigit = (sum * 10) % 11;\n\n if (firstDigit.toString() !== digits.charAt(0)) {\n return false;\n }\n\n const sum2 = numbers\n .split(\"\")\n .map((number, index) => parseInt(number, 10) * (11 - index))\n .reduce((acc, curr) => acc + curr);\n\n const secondDigit = (sum2 * 10) % 11;\n\n return secondDigit.toString() === digits.charAt(1);\n};\n\n// Função para buscar endereço pelo cep\nexport const getAddressByCep = async (cep: string) => {\n const formattedCep = cep.replace(/(\\.|-)/gi, \"\");\n try {\n const { data } = await axios.get(\n `https://viacep.com.br/ws/${formattedCep}/json/`,\n );\n\n return { ...data, provider: \"viacep\" };\n } catch (_err) {\n const { data } = await axios.get(\n `https://brasilapi.com.br/api/cep/v2/${cep}`,\n );\n\n return {\n cep: data.cep,\n logradouro: data.street,\n bairro: data.neighborhood,\n localidade: data.city,\n uf: data.state,\n provider: \"brasilapi\",\n brasilapi_service: data.service,\n };\n }\n};\n\n// Função para converter HEX para RGB\nexport const hexToRgb = (hex: string): [number, number, number] => {\n // Remove o '#' se presente\n hex = hex.replace(/^#/, \"\");\n\n // Converter HEX para os componentes RGB\n const r = parseInt(hex.substring(0, 2), 16);\n const g = parseInt(hex.substring(2, 4), 16);\n const b = parseInt(hex.substring(4, 6), 16);\n return [r, g, b];\n};\n\n// Função para converter RGB para HSB\nexport const rgbToHsb = (r: number, g: number, b: number) => {\n r /= 255;\n g /= 255;\n b /= 255;\n const v = Math.max(r, g, b),\n n = v - Math.min(r, g, b);\n const h =\n n === 0\n ? 0\n : n && v === r\n ? (g - b) / n\n : v === g\n ? 2 + (b - r) / n\n : 4 + (r - g) / n;\n return [60 * (h < 0 ? h + 6 : h), v && (n / v) * 100, v * 100];\n};\n\n// Função para converter HEX para HSB\nexport const hexToHsb = (hex: string): [number, number, number] => {\n // Remove o '#' se presente\n hex = hex.replace(/^#/, \"\");\n\n // Converter HEX para RGB\n const r = parseInt(hex.substring(0, 2), 16) / 255;\n const g = parseInt(hex.substring(2, 4), 16) / 255;\n const b = parseInt(hex.substring(4, 6), 16) / 255;\n\n // Calcular o máximo e mínimo entre R, G, B\n const max = Math.max(r, g, b),\n min = Math.min(r, g, b);\n const delta = max - min;\n\n // Calcular brilho (B)\n const bValue = max * 100;\n\n // Calcular saturação (S)\n const sValue = max === 0 ? 0 : (delta / max) * 100;\n\n // Calcular matiz (H)\n let hValue = 0;\n if (delta !== 0) {\n if (max === r) hValue = (g - b) / delta + (g < b ? 6 : 0);\n else if (max === g) hValue = (b - r) / delta + 2;\n else hValue = (r - g) / delta + 4;\n\n hValue = Math.round(hValue * 60);\n }\n\n return [hValue, Math.round(sValue), Math.round(bValue)];\n};\n\nexport const rgbToHex = (number: number) =>\n number.toString(16).padStart(2, \"0\");\n\n// Função para converter HSB para HEX\nconst hsbToHex = (h: number, s: number, b: number): string => {\n s /= 100;\n b /= 100;\n\n const c = b * s;\n const x = c * (1 - Math.abs(((h / 60) % 2) - 1));\n const m = b - c;\n let r = 0,\n g = 0,\n bl = 0;\n\n if (0 <= h && h < 60) {\n r = c;\n g = x;\n bl = 0;\n } else if (60 <= h && h < 120) {\n r = x;\n g = c;\n bl = 0;\n } else if (120 <= h && h < 180) {\n r = 0;\n g = c;\n bl = x;\n } else if (180 <= h && h < 240) {\n r = 0;\n g = x;\n bl = c;\n } else if (240 <= h && h < 300) {\n r = x;\n g = 0;\n bl = c;\n } else if (300 <= h && h < 360) {\n r = c;\n g = 0;\n bl = x;\n }\n\n r = Math.round((r + m) * 255);\n g = Math.round((g + m) * 255);\n bl = Math.round((bl + m) * 255);\n\n return `#${rgbToHex(r)}${rgbToHex(g)}${rgbToHex(bl)}`;\n};\n\ninterface ColorVariants {\n lightest: string;\n lighter: string;\n light: string;\n default: string;\n dark: string;\n darker: string;\n}\n\n// Cache for color variants with LRU eviction (max 50 entries)\nconst colorVariantsCache = new Map<string, ColorVariants>();\nconst MAX_CACHE_SIZE = 50;\n\nconst cacheColorVariants = (\n hex: string,\n variants: ColorVariants,\n): ColorVariants => {\n if (colorVariantsCache.size >= MAX_CACHE_SIZE) {\n // Remove oldest entry (first inserted)\n const firstKey = colorVariantsCache.keys().next().value;\n colorVariantsCache.delete(firstKey);\n }\n colorVariantsCache.set(hex, variants);\n return variants;\n};\n\n// Função para gerar variações de cor\nexport const generateColorVariants = (hex: string): ColorVariants => {\n // Check cache first\n const cached = colorVariantsCache.get(hex);\n if (cached) {\n return cached;\n }\n\n // Converter de HEX para HSB\n const [h, s, b] = hexToHsb(hex);\n\n // Gerar cor mais clara: -20 de S, +4 de L\n const lightS = Math.max(s - 20, 0); // Garantir que S não seja negativo\n const lightB = Math.min(b + 4, 100); // Garantir que L não passe de 100\n const lightColor = hsbToHex(h, lightS, lightB);\n\n // Gerar cor ainda mais clara: -40 de S, +8 de L\n const lighterS = Math.max(s - 40, 0); // Garantir que S não seja negativo\n const lighterB = Math.min(b + 8, 100); // Garantir que L não passe de 100\n const lighterColor = hsbToHex(h, lighterS, lighterB);\n\n // Gerar cor ainda mais clara: -60 de S, +12 de L\n const lightestS = Math.max(s - 60, 0); // Garantir que S não seja negativo\n const lightestB = Math.min(b + 12, 100); // Garantir que L não passe de 100\n const lightestColor = hsbToHex(h, lightestS, lightestB);\n\n // Gerar cor mais escura: +4 de S, -20 de L\n const darkS = Math.min(s + 4, 100); // Garantir que S não passe de 100\n const darkB = Math.max(b - 20, 0); // Garantir que L não seja negativo\n const darkColor = hsbToHex(h, darkS, darkB);\n\n // Gerar cor ainda mais escura: +8 de S, -40 de L\n const darkerS = Math.min(s + 8, 100); // Garantir que S não passe de 100\n const darkerB = Math.max(b - 40, 0); // Garantir que L não seja negativo\n const darkerColor = hsbToHex(h, darkerS, darkerB);\n\n const variants: ColorVariants = {\n lightest: lightestColor,\n lighter: lighterColor,\n light: lightColor,\n default: hex,\n dark: darkColor,\n darker: darkerColor,\n };\n\n return cacheColorVariants(hex, variants);\n};\n\nexport const getBrighterColor = (hex: string, percentage: number) => {\n let [r, g, b] = hexToRgb(hex);\n\n const lightenChannel = (channel: number) =>\n Math.round(channel + (255 - channel) * (percentage / 100));\n\n r = lightenChannel(r);\n g = lightenChannel(g);\n b = lightenChannel(b);\n\n return `#${rgbToHex(r)}${rgbToHex(g)}${rgbToHex(b)}`;\n};\n\n// Função para preencher um array de datas\nexport const fillDaysArray = (arr: Array<Date>) => {\n const firstDay = arr[0];\n for (let i = 1; i <= firstDay.getDay(); i++) {\n const date = subDays(firstDay, i);\n arr.unshift(date);\n }\n\n const multiplier = Math.ceil(arr.length / 7);\n const left = 7 * multiplier - arr.length;\n const lastDay = arr[arr.length - 1];\n\n for (let i = 1; i <= left; i++) {\n const date = addDays(lastDay, i);\n arr.push(date);\n }\n};\n\n// Função para aceitar apenas horas validas numa string e ajustar conforme necessário\nexport const clampTimeString = (\n timeStr: string,\n currentDate: Date,\n type: \"start\" | \"end\",\n compareDate?: Date,\n) => {\n const [hourStr, minuteStr] = timeStr.split(\":\");\n\n let hours = parseInt(hourStr, 10);\n let minutes = parseInt(minuteStr, 10);\n\n // Ajuste para valores válidos de horas e minutos\n hours = Math.max(0, Math.min(23, hours));\n minutes = Math.max(0, Math.min(59, minutes));\n\n // Define a data ajustada com partes preservadas de currentDate\n const adjustedDate = set(currentDate, { hours, minutes });\n\n // Verifica e aplica restrições\n if (compareDate && type === \"start\" && isAfter(adjustedDate, compareDate)) {\n return compareDate;\n } else if (\n compareDate &&\n type === \"end\" &&\n isBefore(adjustedDate, compareDate)\n ) {\n return compareDate;\n }\n\n return adjustedDate;\n};\n\n// Função para aceitar apenas datas validas numa string e ajustar conforme necessário\nexport const clampDateString = (\n dateStr: string,\n currentDate: Date,\n type: \"start\" | \"end\",\n compareDate?: Date,\n) => {\n const [dayStr, monthStr, yearStr] = dateStr.split(\"/\");\n\n let day = parseInt(dayStr, 10);\n let month = parseInt(monthStr, 10) - 1;\n const year = parseInt(yearStr, 10);\n\n // Ajuste do mês e do dia\n month = Math.max(0, Math.min(11, month));\n const maxDay = getDaysInMonth(new Date(year, month));\n day = Math.max(1, Math.min(maxDay, day));\n\n // Define a data ajustada com partes preservadas de currentDate\n const adjustedDate = set(currentDate, { year, month, date: day });\n\n if (compareDate && type === \"start\" && isAfter(adjustedDate, compareDate)) {\n return compareDate;\n } else if (\n compareDate &&\n type === \"end\" &&\n isBefore(adjustedDate, compareDate)\n ) {\n return compareDate;\n }\n\n return adjustedDate;\n};\n\nexport function currencyFormatter(\n value: number,\n hasPrefix?: boolean,\n\n minimumFractionDigits = 2,\n max?: number,\n min?: number,\n) {\n if (value === null || value === undefined || Number.isNaN(value)) return \"\";\n\n if (max && value > max * 100) {\n value = max * 100;\n }\n\n if (min && value < min * 100) {\n value = min * 100;\n }\n\n const amount = new Intl.NumberFormat(\"pt-BR\", {\n style: \"currency\",\n currency: \"BRL\",\n minimumFractionDigits,\n }).format(value / 10 ** minimumFractionDigits);\n\n return hasPrefix ? `${amount}` : `${amount}`.substring(3);\n}\n\ntype Complement = {\n price: string;\n amount: number;\n};\n\ntype ComplementCategory = {\n additional: boolean;\n more_expensive_only: boolean;\n use_average: boolean;\n complements: Complement[];\n};\n\nexport type Product = {\n price: string;\n amount: number;\n weight?: number;\n complement_categories?: ComplementCategory[];\n};\n\nexport const getComplementsPrice = (product: Product) => {\n const basePrice =\n parseFloat(product.price) * product.amount * (product.weight || 1);\n\n const complementsPrice =\n product.complement_categories?.reduce((catTotal, cat) => {\n if (!cat.additional) return catTotal;\n\n if (cat.more_expensive_only) {\n const highestComplement = cat.complements.reduce(\n (highest, c) => {\n return parseFloat(c.price) > parseFloat(highest.price)\n ? c\n : highest;\n },\n { price: \"0\", amount: 0 },\n );\n\n return (\n catTotal +\n parseFloat(highestComplement.price) *\n (highestComplement.amount >= 1 ? 1 : 0) *\n product.amount\n );\n }\n\n if (cat.use_average) {\n const totalValue = cat.complements.reduce(\n (sum, c) => sum + parseFloat(c.price) * c.amount * product.amount,\n 0,\n );\n const totalAmount = cat.complements.reduce(\n (sum, c) => sum + c.amount * product.amount,\n 0,\n );\n\n return totalAmount > 0 ? catTotal + totalValue / totalAmount : catTotal;\n }\n\n const complementsValue = cat.complements.reduce(\n (sum, c) => sum + parseFloat(c.price) * c.amount * product.amount,\n 0,\n );\n\n return catTotal + complementsValue;\n }, 0) ?? 0;\n\n return basePrice + complementsPrice;\n};\n\nexport const formatSearchItems = (\n menuItems: MenuItemProps[],\n parentPath = \"\",\n parentTexts: string[] = [],\n): MenuItemProps[] => {\n return menuItems\n .filter((item) => item.condition !== false)\n .flatMap((item) => {\n const currentPath = parentPath + (item.path || \"\");\n const currentTexts = [...parentTexts, item.text];\n\n if (item.subitems && item.subitems.length > 0) {\n return formatSearchItems(item.subitems, currentPath, currentTexts);\n }\n\n return [\n {\n ...item,\n path: currentPath,\n searchText: currentTexts.join(\"/\"),\n key: `${currentPath}|${currentTexts.join(\"/\")}`,\n },\n ];\n });\n};\n\nexport const filterItems = (item: MenuItemProps, search: string) => {\n return item.searchText?.toLowerCase().includes(search.toLowerCase());\n};\n\nexport const filterSidebarItems = (items: MenuItemProps[]) => {\n return items\n .map((item) => {\n if (item.subitems) {\n return {\n ...item,\n subitems: item.subitems.filter(\n (subitem) =>\n (subitem.displayType === \"sidebar\" || !subitem.displayType) &&\n subitem.condition !== false,\n ),\n };\n }\n return item;\n })\n .filter(\n (item) =>\n (item.displayType === \"sidebar\" || !item.displayType) &&\n item.condition !== false,\n );\n};\n","import { ScrollArea as BaseScrollArea } from \"@base-ui/react/scroll-area\";\nimport type React from \"react\";\nimport { type CSSProperties, forwardRef, useCallback, useRef } from \"react\";\nimport {\n scrollAreaRootClass,\n scrollAreaScrollbarClass,\n scrollAreaThumbClass,\n scrollAreaViewportClass,\n scrollAreaViewportDraggableClass,\n} from \"./styles.css\";\n\ninterface ScrollAreaProps {\n children: React.ReactNode;\n className?: string;\n style?: CSSProperties;\n maxHeight?: string | number;\n draggable?: boolean;\n}\n\nexport const ScrollArea = forwardRef<HTMLDivElement, ScrollAreaProps>(\n function ScrollArea(\n { children, className, style, maxHeight, draggable = false },\n ref,\n ) {\n const viewportRef = useRef<HTMLDivElement | null>(null);\n const dragState = useRef({\n active: false,\n startX: 0,\n startY: 0,\n scrollLeft: 0,\n scrollTop: 0,\n moved: false,\n });\n\n const onPointerDown = useCallback(\n (e: React.PointerEvent<HTMLDivElement>) => {\n if (!draggable) return;\n if (e.pointerType === \"touch\") return;\n const el = viewportRef.current;\n if (!el) return;\n dragState.current = {\n active: true,\n startX: e.clientX,\n startY: e.clientY,\n scrollLeft: el.scrollLeft,\n scrollTop: el.scrollTop,\n moved: false,\n };\n el.setPointerCapture(e.pointerId);\n },\n [draggable],\n );\n\n const onPointerMove = useCallback(\n (e: React.PointerEvent<HTMLDivElement>) => {\n const s = dragState.current;\n if (!s.active) return;\n const el = viewportRef.current;\n if (!el) return;\n const dx = e.clientX - s.startX;\n const dy = e.clientY - s.startY;\n if (!s.moved && Math.hypot(dx, dy) > 3) s.moved = true;\n el.scrollLeft = s.scrollLeft - dx;\n el.scrollTop = s.scrollTop - dy;\n },\n [],\n );\n\n const onPointerUp = useCallback((e: React.PointerEvent<HTMLDivElement>) => {\n const s = dragState.current;\n if (!s.active) return;\n s.active = false;\n viewportRef.current?.releasePointerCapture(e.pointerId);\n if (s.moved) {\n // Swallow the click that follows so drag doesn't trigger buttons/links underneath\n const stopClick = (ev: MouseEvent) => {\n ev.stopPropagation();\n ev.preventDefault();\n };\n const el = viewportRef.current;\n el?.addEventListener(\"click\", stopClick, { capture: true, once: true });\n setTimeout(() => el?.removeEventListener(\"click\", stopClick, true), 0);\n }\n }, []);\n\n return (\n <BaseScrollArea.Root\n ref={ref}\n className={`${scrollAreaRootClass}${className ? ` ${className}` : \"\"}`}\n style={{\n maxHeight:\n typeof maxHeight === \"number\" ? `${maxHeight}px` : maxHeight,\n ...style,\n }}\n >\n <BaseScrollArea.Viewport\n ref={viewportRef}\n className={`${scrollAreaViewportClass}${draggable ? ` ${scrollAreaViewportDraggableClass}` : \"\"}`}\n onPointerDown={draggable ? onPointerDown : undefined}\n onPointerMove={draggable ? onPointerMove : undefined}\n onPointerUp={draggable ? onPointerUp : undefined}\n onPointerCancel={draggable ? onPointerUp : undefined}\n >\n {children}\n </BaseScrollArea.Viewport>\n <BaseScrollArea.Scrollbar\n orientation=\"vertical\"\n className={scrollAreaScrollbarClass}\n >\n <BaseScrollArea.Thumb className={scrollAreaThumbClass} />\n </BaseScrollArea.Scrollbar>\n <BaseScrollArea.Scrollbar\n orientation=\"horizontal\"\n className={scrollAreaScrollbarClass}\n >\n <BaseScrollArea.Thumb className={scrollAreaThumbClass} />\n </BaseScrollArea.Scrollbar>\n </BaseScrollArea.Root>\n );\n },\n);\n\nScrollArea.displayName = \"ScrollArea\";\n","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nimport 'src/components/ScrollArea/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA6VUXWvbMBR9z68QhdIEpuBk6cdUBhvbL9jGXsYIsnVti8q65kpOmo389yHLaut1WRr6YnQu8jnn6h5p7vzOgFu7gtCYjwTyC6L_ZKRz6zW25mZznbHfE8ZadNprtIIRGOn1Bm4njOEGqDS4FazWSoENta1WvhZskWXnAdagq9onvJ_Mnyl-17Btkcaqi171v1yP8nwnmOw8jmr3T01FtVwSHygtWjjFjhB8C_md9vyBqneotGuN3L2E8DPJqpK5gRHzsqcpOnJIglUk87-7SJ11Dog7MFD4V8gJWYTpPVPNta3-Tfg1NTwiejtuvzRwf8AkYx67ouZBOAQoVR8jJXOHpvPD3lawLKwoDrtf5-g9NgMYRnjV9oqtVErbSrBlxJ6kTcT9TpbNl-6k1n4o6SWvwxC0rX4-jeJNEDmZCkmD9TKYen9RI-lfaL00F5HaQOmP9dwfS0rC4CXBdC2uDnn7VndNPvK16oXD0ARb9GKyuKsIO6t4gSaEYiNpyiNw3ELnSRpugtJ6vVjltVttFu9m0SgpIE5S6c6lHyPi7mHzspjdHnhIXuhZiBxKpCG7aD1YL9jZ2ZEwXcbHIp7yAPqQlEiNiEsjPUz5ZXb-hoXv7OhDxlijbXpMVqsYvVBK22JtP_nQgNKSTVuCEshxAtUVoHiD6RQCnvU9nXb3xlFPt2o_2f8B_m6lEtUFAAA';\nexport var scrollAreaRootClass = 'styles_scrollAreaRootClass__opl8v70';\nexport var scrollAreaScrollbarClass = 'styles_scrollAreaScrollbarClass__opl8v73';\nexport var scrollAreaThumbClass = 'styles_scrollAreaThumbClass__opl8v74';\nexport var scrollAreaViewportClass = 'styles_scrollAreaViewportClass__opl8v71';\nexport var scrollAreaViewportDraggableClass = 'styles_scrollAreaViewportDraggableClass__opl8v72';","import { useEffect, useReducer } from \"react\";\n\nexport interface MenuState {\n sideBarOpen: boolean;\n searchInput: string;\n activeSearch: string;\n categoryOpen: string | null;\n}\n\nexport type MenuAction =\n | { type: \"TOGGLE_SIDEBAR\" }\n | { type: \"SET_SEARCH_INPUT\"; payload: string }\n | { type: \"SET_ACTIVE_SEARCH\"; payload: string }\n | { type: \"SET_CATEGORY_OPEN\"; payload: string | null };\n\nfunction menuReducer(state: MenuState, action: MenuAction): MenuState {\n switch (action.type) {\n case \"TOGGLE_SIDEBAR\":\n return { ...state, sideBarOpen: !state.sideBarOpen };\n case \"SET_SEARCH_INPUT\":\n return { ...state, searchInput: action.payload };\n case \"SET_ACTIVE_SEARCH\":\n return { ...state, activeSearch: action.payload };\n case \"SET_CATEGORY_OPEN\":\n return { ...state, categoryOpen: action.payload };\n default:\n return state;\n }\n}\n\nexport const useMenuState = (\n defaultSideBarOpen?: boolean,\n onSideBarToggle?: (e: boolean) => void,\n) => {\n const initialState: MenuState = {\n sideBarOpen: defaultSideBarOpen || false,\n searchInput: \"\",\n activeSearch: \"\",\n categoryOpen: null,\n };\n\n const [state, dispatch] = useReducer(menuReducer, initialState);\n\n const actions = {\n toggleSidebar: () => dispatch({ type: \"TOGGLE_SIDEBAR\" }),\n setSearchInput: (value: string) =>\n dispatch({ type: \"SET_SEARCH_INPUT\", payload: value }),\n setActiveSearch: (value: string) =>\n dispatch({ type: \"SET_ACTIVE_SEARCH\", payload: value }),\n setCategoryOpen: (value: string | null) =>\n dispatch({ type: \"SET_CATEGORY_OPEN\", payload: value }),\n };\n\n useEffect(() => {\n if (state.searchInput || state.searchInput === \"\") {\n dispatch({ type: \"SET_ACTIVE_SEARCH\", payload: state.searchInput });\n }\n }, [state.searchInput]);\n\n useEffect(() => {\n onSideBarToggle?.(state.sideBarOpen);\n }, [state.sideBarOpen, onSideBarToggle]);\n\n return { state, actions };\n};\n","export const IconChevronDown = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n d=\"M4.793 8.543a1 1 0 0 1 1.414 0L12 14.336l5.793-5.793a1 1 0 1 1 1.414 1.414l-5.793 5.793a2 2 0 0 1-2.828 0L4.793 9.957a1 1 0 0 1 0-1.414\"\n clipRule=\"evenodd\"\n />\n </svg>\n );\n};\n","export const IconClose = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconClose_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconClose_svg__a)\">\n <path d=\"m12 13.4-4.9 4.9a.95.95 0 0 1-.7.275.95.95 0 0 1-.7-.275.95.95 0 0 1-.275-.7q0-.425.275-.7l4.9-4.9-4.9-4.9a.95.95 0 0 1-.275-.7q0-.425.275-.7a.95.95 0 0 1 .7-.275q.425 0 .7.275l4.9 4.9 4.9-4.9a.95.95 0 0 1 .7-.275q.425 0 .7.275a.95.95 0 0 1 .275.7.95.95 0 0 1-.275.7L13.4 12l4.9 4.9a.95.95 0 0 1 .275.7.95.95 0 0 1-.275.7.95.95 0 0 1-.7.275.95.95 0 0 1-.7-.275z\" />\n </g>\n </svg>\n );\n};\n","export const IconCloseMenu = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 24 24\"\n {...props}\n >\n <path d=\"M3.138 19q-.484 0-.81-.335A1.14 1.14 0 0 1 2 17.833q0-.495.327-.83.327-.336.811-.336h12.518q.483 0 .81.335t.328.831-.327.832a1.09 1.09 0 0 1-.811.335zm16.956-1.983-4.097-4.2a1.13 1.13 0 0 1-.341-.817q0-.466.341-.817l4.097-4.2q.312-.32.796-.32t.797.32q.313.32.313.817t-.313.817L18.387 12l3.3 3.383q.313.32.313.817 0 .495-.313.817-.313.32-.797.32-.483 0-.796-.32m-16.956-3.85q-.484 0-.81-.336A1.14 1.14 0 0 1 2 12q0-.496.327-.831.327-.336.811-.336h9.104q.483 0 .81.336.328.335.328.831t-.327.831a1.09 1.09 0 0 1-.811.336zm0-5.834q-.484 0-.81-.335A1.14 1.14 0 0 1 2 6.167q0-.495.327-.832Q2.654 5 3.138 5h12.518q.483 0 .81.335.328.336.328.832t-.327.83a1.09 1.09 0 0 1-.811.336z\" />\n </svg>\n );\n};\n","export const IconExclamation = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconExclamation_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconExclamation_svg__a)\">\n <path d=\"M12 21q-.825 0-1.412-.587A1.93 1.93 0 0 1 10 19q0-.824.588-1.413A1.93 1.93 0 0 1 12 17q.825 0 1.412.587Q14 18.176 14 19q0 .824-.588 1.413A1.93 1.93 0 0 1 12 21m0-6q-.825 0-1.412-.588A1.93 1.93 0 0 1 10 13V5q0-.824.588-1.412A1.93 1.93 0 0 1 12 3q.825 0 1.412.587Q14 4.176 14 5v8q0 .825-.588 1.412A1.93 1.93 0 0 1 12 15\" />\n </g>\n </svg>\n );\n};\n","export const IconEye = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <path d=\"M12 16q1.875 0 3.188-1.312Q16.5 13.375 16.5 11.5t-1.312-3.187T12 7 8.813 8.313 7.5 11.5t1.313 3.188T12 16m0-1.8q-1.125 0-1.912-.787A2.6 2.6 0 0 1 9.3 11.5q0-1.125.787-1.912A2.6 2.6 0 0 1 12 8.8q1.125 0 1.912.787.788.788.788 1.913t-.787 1.912A2.6 2.6 0 0 1 12 14.2m0 4.8q-3.35 0-6.112-1.8t-4.363-4.75a1.907 1.907 0 0 1-.187-1.437q.062-.238.187-.463 1.6-2.95 4.363-4.75Q8.65 4 12 4t6.113 1.8 4.362 4.75q.125.225.188.462a1.9 1.9 0 0 1 0 .976 2 2 0 0 1-.188.462q-1.6 2.95-4.363 4.75Q15.35 19 12 19m0-2a9.54 9.54 0 0 0 5.188-1.488A9.77 9.77 0 0 0 20.8 11.5a9.77 9.77 0 0 0-3.613-4.012A9.54 9.54 0 0 0 12 6a9.55 9.55 0 0 0-5.187 1.487A9.77 9.77 0 0 0 3.2 11.5a9.77 9.77 0 0 0 3.613 4.012A9.54 9.54 0 0 0 12 17\" />\n </svg>\n );\n};\n","export const IconEyeSlash = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconEyeSlash_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconEyeSlash_svg__a)\">\n <path d=\"M15.175 8.325a4.5 4.5 0 0 1 1.063 1.65q.337.925.237 1.9 0 .375-.275.637a.9.9 0 0 1-.65.263.87.87 0 0 1-.638-.263.87.87 0 0 1-.262-.637q.124-.65-.075-1.25A2.6 2.6 0 0 0 13.95 9.6a2.8 2.8 0 0 0-1.025-.65q-.6-.225-1.275-.1a.85.85 0 0 1-.638-.275.9.9 0 0 1-.262-.65q0-.375.262-.638a.87.87 0 0 1 .638-.262 4.14 4.14 0 0 1 1.875.237 4.5 4.5 0 0 1 1.65 1.063M12 6q-.475 0-.925.037t-.9.138a1.08 1.08 0 0 1-.763-.125 1.02 1.02 0 0 1-.462-.6.94.94 0 0 1 .088-.775q.211-.375.612-.45.574-.125 1.162-.175T12 4q3.424 0 6.262 1.8t4.338 4.85a1.9 1.9 0 0 1 .2.85q0 .225-.038.438-.036.212-.137.412-.45 1-1.113 1.875-.662.875-1.462 1.6a.84.84 0 0 1-.7.225.91.91 0 0 1-.65-.4 1.1 1.1 0 0 1-.212-.763q.037-.412.337-.687.6-.575 1.1-1.25t.875-1.45a9.77 9.77 0 0 0-3.613-4.013A9.55 9.55 0 0 0 12 6m0 13q-3.35 0-6.125-1.812A13 13 0 0 1 1.5 12.425a1.6 1.6 0 0 1-.187-.437 2 2 0 0 1-.063-.488q0-.25.05-.475t.175-.45a13.6 13.6 0 0 1 1.163-1.913Q3.3 7.75 4.15 7L2.075 4.9a.97.97 0 0 1-.263-.713A.98.98 0 0 1 2.1 3.5a.95.95 0 0 1 .7-.275q.425 0 .7.275l17 17q.275.275.288.688a.93.93 0 0 1-.288.712.95.95 0 0 1-.7.275.95.95 0 0 1-.7-.275l-3.5-3.45A12 12 0 0 1 12 19M5.55 8.4q-.725.65-1.325 1.425A9 9 0 0 0 3.2 11.5a9.77 9.77 0 0 0 3.613 4.012A9.55 9.55 0 0 0 12 17q.5 0 .975-.062.475-.063.975-.138l-.9-.95q-.274.075-.525.113A3.5 3.5 0 0 1 12 16q-1.875 0-3.187-1.312Q7.499 13.375 7.5 11.5q0-.274.037-.525.038-.25.113-.525z\" />\n </g>\n </svg>\n );\n};\n","export const IconMenu = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconMenu_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconMenu_svg__a)\">\n <path d=\"M4 18a.97.97 0 0 1-.712-.288A.97.97 0 0 1 3 17q0-.424.288-.712A.97.97 0 0 1 4 16h16q.424 0 .712.288.288.287.288.712 0 .424-.288.712A.97.97 0 0 1 20 18zm0-5a.97.97 0 0 1-.712-.287A.97.97 0 0 1 3 12q0-.424.288-.713A.97.97 0 0 1 4 11h16q.424 0 .712.287.288.288.288.713 0 .424-.288.713A.97.97 0 0 1 20 13zm0-5a.97.97 0 0 1-.712-.287A.97.97 0 0 1 3 7q0-.424.288-.713A.97.97 0 0 1 4 6h16q.424 0 .712.287Q21 6.576 21 7q0 .424-.288.713A.97.97 0 0 1 20 8z\" />\n </g>\n </svg>\n );\n};\n","export const IconSearch = ({ ...props }) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n {...props}\n >\n <mask\n id=\"IconSearch_svg__a\"\n width={24}\n height={24}\n x={0}\n y={0}\n maskUnits=\"userSpaceOnUse\"\n style={{\n maskType: \"alpha\",\n }}\n >\n <path d=\"M0 0h24v24H0z\" />\n </mask>\n <g mask=\"url(#IconSearch_svg__a)\">\n <path d=\"M9.5 16q-2.725 0-4.612-1.887T3 9.5t1.888-4.612T9.5 3t4.613 1.888T16 9.5a6.1 6.1 0 0 1-1.3 3.8l5.6 5.6a.95.95 0 0 1 .275.7.95.95 0 0 1-.275.7.95.95 0 0 1-.7.275.95.95 0 0 1-.7-.275l-5.6-5.6q-.75.6-1.725.95T9.5 16m0-2q1.875 0 3.188-1.312Q14 11.375 14 9.5t-1.312-3.187T9.5 5 6.313 6.313 5 9.5t1.313 3.188T9.5 14\" />\n </g>\n </svg>\n );\n};\n","// Single source of truth for all theme values\n// Used by both vanilla-extract (theme.css.ts) and runtime components\n\nexport const themeValues = {\n colors: {\n primary: {\n lightest: \"#e5a1a4\",\n lighter: \"#db6e72\",\n light: \"#d13f45\",\n default: \"#c8131b\",\n dark: \"#94090f\",\n darker: \"#610206\",\n },\n red: {\n lightest: \"#e5a1a4\",\n lighter: \"#db6e72\",\n light: \"#d13f45\",\n default: \"#c8131b\",\n dark: \"#94090f\",\n darker: \"#610206\",\n },\n yellow: {\n lightest: \"#ffebc8\",\n lighter: \"#ffd894\",\n light: \"#ffc561\",\n default: \"#ffb32f\",\n dark: \"#cc8c1d\",\n darker: \"#99670f\",\n },\n green: {\n lightest: \"#bce3de\",\n lighter: \"#89d9cf\",\n light: \"#59cfc1\",\n default: \"#2ec9b7\",\n dark: \"#1d9688\",\n darker: \"#0f635a\",\n },\n blue: {\n lightest: \"#99dfff\",\n lighter: \"#66cfff\",\n light: \"#33bfff\",\n default: \"#01afff\",\n dark: \"#018ccc\",\n darker: \"#016999\",\n },\n orange: {\n lightest: \"#FFD8BD\",\n lighter: \"#FFB98A\",\n light: \"#FF9B57\",\n default: \"#FF7D24\",\n dark: \"#CC5F14\",\n darker: \"#994409\",\n },\n second_green: {\n lightest: \"#A5C7AF\",\n lighter: \"#77BD8B\",\n light: \"#4DB26A\",\n default: \"#27A84C\",\n dark: \"#167532\",\n darker: \"#0A421A\",\n },\n neutral: {\n white: \"#ffffff\",\n lightest: \"#f6f6f6\",\n lighter: \"#ededed\",\n light: \"#c6c6c6\",\n default: \"#7a7a7a\",\n dark: \"#545454\",\n darker: \"#222222\",\n black: \"#000000\",\n },\n fixed: {\n white: \"#ffffff\",\n black: \"#000000\",\n },\n },\n shadows: {\n lighter: \"0px 0px 2px 0px #0000001F, 0px 1px 2px 0px #00000024;\",\n light: \"0px 0px 2px 0px #0000001F, 0px 2px 4px 0px #00000024;\",\n default: \"0px 0px 2px 0px #0000001F, 0px 4px 8px 0px #00000024;\",\n dark: \"0px 0px 2px 0px #0000001F, 0px 8px 16px 0px #00000024;\",\n darker: \"0px 0px 8px 0px #00000033, 0px 10px 25px 0px #00000024;\",\n },\n typography: {\n family: {\n default: '\"Poppins\", sans-serif',\n },\n weights: {\n regular: \"400\",\n medium: \"500\",\n semibold: \"600\",\n bold: \"700\",\n },\n scale: {\n display: { fontSize: \"24px\", lineHeight: \"28px\", fontWeight: \"700\" },\n heading: { fontSize: \"20px\", lineHeight: \"24px\", fontWeight: \"700\" },\n body: { fontSize: \"14px\", lineHeight: \"20px\", fontWeight: \"400\" },\n caption: { fontSize: \"12px\", lineHeight: \"16px\", fontWeight: \"500\" },\n small: { fontSize: \"10px\", lineHeight: \"14px\", fontWeight: \"400\" },\n },\n },\n spacing: {\n xxs: \"4px\",\n xs: \"8px\",\n s: \"16px\",\n m: \"24px\",\n l: \"32px\",\n xl: \"40px\",\n xxl: \"48px\",\n },\n radius: {\n s: \"4px\",\n m: \"8px\",\n l: \"12px\",\n xl: \"16px\",\n xxl: \"24px\",\n },\n semantic: {\n error: \"#c8131b\",\n success: \"#2ec9b7\",\n info: \"#01afff\",\n warning: \"#ffb32f\",\n },\n zIndex: {\n dropdown: \"1000\",\n modal: \"1100\",\n tooltip: \"1200\",\n toast: \"1300\",\n },\n motion: {\n fast: \"150ms\",\n normal: \"300ms\",\n slow: \"500ms\",\n },\n components: {\n fieldInfo: {\n fontSize: {\n desktop: \"12px\",\n tablet: \"14px\",\n totem: \"16px\",\n },\n },\n input: {\n label: {\n fontSize: {\n desktop: \"16px\",\n large: \"16px\",\n medium: \"14px\",\n small: \"12px\",\n tablet: \"18px\",\n \"tablet-medium\": \"16px\",\n \"tablet-small\": \"16px\",\n totem: \"20px\",\n \"totem-medium\": \"18px\",\n \"totem-small\": \"16px\",\n },\n },\n input: {\n fontSize: {\n desktop: \"14px\",\n large: \"14px\",\n medium: \"14px\",\n small: \"12px\",\n tablet: \"16px\",\n \"tablet-medium\": \"16px\",\n \"tablet-small\": \"16px\",\n totem: \"18px\",\n \"totem-medium\": \"16px\",\n \"totem-small\": \"16px\",\n },\n height: {\n desktop: \"40px\",\n large: \"40px\",\n medium: \"32px\",\n small: \"24px\",\n tablet: \"48px\",\n \"tablet-medium\": \"40px\",\n \"tablet-small\": \"32px\",\n totem: \"56px\",\n \"totem-medium\": \"48px\",\n \"totem-small\": \"40px\",\n },\n borderRadius: {\n desktop: \"8px\",\n large: \"8px\",\n medium: \"8px\",\n small: \"4px\",\n tablet: \"12px\",\n \"tablet-medium\": \"8px\",\n \"tablet-small\": \"4px\",\n totem: \"16px\",\n \"totem-medium\": \"8px\",\n \"totem-small\": \"8px\",\n },\n padding: {\n desktop: \"8px 16px\",\n large: \"8px 16px\",\n medium: \"4px 12px\",\n small: \"4px 8px\",\n tablet: \"8px 16px\",\n \"tablet-medium\": \"4px 16px\",\n \"tablet-small\": \"4px 12px\",\n totem: \"8px 12px\",\n \"totem-medium\": \"8px 12px\",\n \"totem-small\": \"4px 12px\",\n },\n },\n },\n select: {\n padding: {\n desktop: \"4px 16px\",\n tablet: \"4px 16px\",\n totem: \"4px 12px\",\n },\n },\n button: {\n fontSize: {\n medium: \"14px\",\n small: \"12px\",\n large: \"14px\",\n tablet: \"16px\",\n \"tablet-medium\": \"16px\",\n \"tablet-small\": \"14px\",\n totem: \"24px\",\n \"totem-medium\": \"24px\",\n \"totem-small\": \"22px\",\n },\n height: {\n large: \"40px\",\n medium: \"32px\",\n small: \"24px\",\n tablet: \"48px\",\n \"tablet-medium\": \"40px\",\n \"tablet-small\": \"32px\",\n totem: \"56px\",\n \"totem-medium\": \"48px\",\n \"totem-small\": \"40px\",\n },\n padding: {\n large: {\n text: \"0 24px\",\n icon: \"0 24px 0 16px\",\n textAndIcon: \"0 24px 0 16px\",\n },\n medium: {\n text: \"0 12px\",\n icon: \"0 12px 0 8px\",\n textAndIcon: \"0 12px 0 8px\",\n },\n small: {\n text: \"0 8px\",\n icon: \"0 8px 0 4px\",\n textAndIcon: \"0 8px 0 4px\",\n },\n tablet: {\n text: \"0 24px\",\n icon: \"0 24px 0 16px\",\n textAndIcon: \"0 24px 0 16px\",\n },\n \"tablet-medium\": {\n text: \"0 12px\",\n icon: \"0 12px 0 8px\",\n textAndIcon: \"0 12px 0 8px\",\n },\n \"tablet-small\": {\n text: \"0 8px\",\n icon: \"0 8px 0 4px\",\n textAndIcon: \"0 8px 0 4px\",\n },\n totem: {\n text: \"0 24px\",\n icon: \"0 24px 0 16px\",\n textAndIcon: \"0 24px 0 16px\",\n },\n \"totem-medium\": {\n text: \"0 12px\",\n icon: \"0 12px 0 8px\",\n textAndIcon: \"0 12px 0 8px\",\n },\n \"totem-small\": {\n text: \"0 8px\",\n icon: \"0 8px 0 4px\",\n textAndIcon: \"0 8px 0 4px\",\n },\n },\n borderRadius: {\n large: \"12px\",\n medium: \"8px\",\n small: \"4px\",\n tablet: \"12px\",\n \"tablet-medium\": \"8px\",\n \"tablet-small\": \"4px\",\n totem: \"12px\",\n \"totem-medium\": \"8px\",\n \"totem-small\": \"8px\",\n },\n iconSize: {\n large: \"24px\",\n medium: \"20px\",\n small: \"16px\",\n tablet: \"24px\",\n \"tablet-medium\": \"20px\",\n \"tablet-small\": \"16px\",\n totem: \"36px\",\n \"totem-medium\": \"32px\",\n \"totem-small\": \"28px\",\n },\n },\n },\n device: \"desktop\" as const,\n} as const;\n\nexport type ThemeValues = typeof themeValues;\nexport type DeviceType = \"desktop\" | \"tablet\" | \"totem\";\n","import type { MenuObjectProps } from \"../components/CollapsableMenu/types\";\nimport {\n IconHelpFilled,\n IconIdCardFilled,\n IconLogout,\n IconMotorcycle,\n IconSquareMenu,\n IconUser,\n IconUtensils,\n} from \"../components/icons\";\nimport { themeValues } from \"../theme/themeValues\";\n\nexport const DEFAULT_THEME = {\n ...themeValues,\n components: {\n ...themeValues.components,\n button: {\n ...themeValues.components.button,\n iconPadding: {\n large: 8,\n medium: 8,\n small: 4,\n tablet: 24,\n \"tablet-medium\": 16,\n \"tablet-small\": 8,\n totem: 32,\n \"totem-medium\": 24,\n \"totem-small\": 16,\n },\n },\n },\n} as const;\n\nexport type DeviceType = \"desktop\" | \"tablet\" | \"totem\";\n\nexport type ButtonSize = \"small\" | \"medium\" | \"large\";\n\nexport type ColorShades = {\n white?: string;\n lightest: string;\n lighter: string;\n light: string;\n default: string;\n dark: string;\n darker: string;\n black?: string;\n};\n\nexport type Colors = {\n [key in keyof typeof DEFAULT_THEME.colors]: ColorShades;\n};\n\nexport type Spacing = {\n xxs: string;\n xs: string;\n s: string;\n m: string;\n l: string;\n xl: string;\n xxl: string;\n};\n\nexport type Radius = {\n s: string;\n m: string;\n l: string;\n xl: string;\n xxl: string;\n};\n\nexport type Typography = {\n family: {\n default: string;\n };\n weights: {\n regular: number;\n medium: number;\n semibold: number;\n bold: number;\n };\n};\n\nexport type ButtonSizeKey =\n | ButtonSize\n | Exclude<DeviceType, \"desktop\">\n | `${Exclude<DeviceType, \"desktop\">}-${Exclude<ButtonSize, \"large\">}`;\n\nexport type InputSizeKey =\n | ButtonSize\n | \"desktop\"\n | Exclude<DeviceType, \"desktop\">\n | `${Exclude<DeviceType, \"desktop\">}-${Exclude<ButtonSize, \"large\">}`;\n\nexport type Components = {\n fieldInfo: {\n fontSize: Record<DeviceType, string>;\n };\n input: {\n label: {\n fontSize: Record<InputSizeKey, string>;\n };\n input: {\n fontSize: Record<InputSizeKey, string>;\n height: Record<InputSizeKey, string>;\n borderRadius: Record<InputSizeKey, string>;\n padding: Record<InputSizeKey, string>;\n };\n };\n select: {\n padding: Record<DeviceType, string>;\n };\n button: {\n fontSize: Record<ButtonSizeKey, string>;\n iconSize: Record<ButtonSizeKey, string>;\n height: Record<ButtonSizeKey, string>;\n borderRadius: Record<ButtonSizeKey, string>;\n padding: Record<\n ButtonSizeKey,\n {\n text: string;\n icon: string;\n textAndIcon: string;\n }\n >;\n };\n};\n\nexport type DefaultThemeType = {\n colors: Colors;\n shadows: {\n lighter: string;\n light: string;\n default: string;\n dark: string;\n darker: string;\n };\n typography: Typography;\n spacing: Spacing;\n radius: Radius;\n components: Components;\n device: DeviceType;\n};\n\nexport type ColorType = Exclude<keyof DefaultThemeType[\"colors\"], \"fixed\">;\n\n// Usado em alguns componentes como Switch e Radio Button\nexport const LABEL_POSITIONS = {\n top: \"column\",\n bottom: \"column-reverse\",\n left: \"row\",\n right: \"row-reverse\",\n};\n\nexport const MENU_OBJECT: MenuObjectProps = {\n profile: {\n name: \"Restaurante de teste\",\n image: null,\n text: \"Perfil\",\n path: \"/profile\",\n icon: <IconUser />,\n displayType: \"page\",\n subitems: [\n { text: \"Editar meu negócio\", path: \"/info\" },\n { text: \"Alterar perfil da conta\", path: \"/user-profile\" },\n { text: \"Tarefas\", path: \"/tasks\" },\n ],\n },\n categories: [\n {\n text: \"Operação\",\n path: \"/operation\",\n icon: <IconUtensils />,\n displayType: \"sidebar\",\n subitems: [\n {\n text: \"Mesa / Balcão\",\n path: \"\",\n },\n {\n text: \"Caixa\",\n path: \"/cashier\",\n },\n {\n text: \"Comandas\",\n path: \"/bills\",\n },\n {\n text: \"KDS\",\n path: \"/kds\",\n },\n ],\n },\n {\n text: \"Delivery\",\n path: \"/delivery\",\n icon: <IconMotorcycle />,\n subitems: [\n {\n text: \"Pedidos\",\n path: \"/orders\",\n displayType: \"sidebar\",\n },\n\n {\n text: \"Horário de funcionamento\",\n path: \"/opening-hours\",\n displayType: \"page\",\n },\n {\n text: \"Endereços\",\n path: \"/addresses\",\n displayType: \"page\",\n },\n {\n text: \"Agendamento\",\n path: \"/scheduling\",\n displayType: \"page\",\n },\n {\n text: \"Cupons\",\n path: \"/coupons\",\n displayType: \"page\",\n },\n {\n text: \"Motoboys\",\n path: \"/motoboys\",\n displayType: \"page\",\n },\n {\n text: \"Configurações\",\n path: \"/config\",\n },\n ],\n },\n {\n text: \"Cadastros\",\n path: \"/register\",\n icon: <IconIdCardFilled />,\n displayType: \"sidebar\",\n subitems: [\n {\n text: \"Cardápio\",\n path: \"/menu\",\n },\n {\n text: \"Estoque\",\n path: \"/stock\",\n displayType: \"sidebar\",\n },\n {\n text: \"Vinculos iFood \",\n path: \"/ifood\",\n },\n {\n text: \"Vinculos Fiscais\",\n path: \"/fiscal\",\n },\n {\n text: \"Funcionários\",\n path: \"/employees\",\n displayType: \"page\",\n },\n {\n text: \"Impressoras e outros\",\n path: \"/printers\",\n displayType: \"page\",\n },\n ],\n },\n {\n text: \"Ver mais\",\n path: \"/search\",\n icon: <IconSquareMenu />,\n displayType: \"sidebar\",\n },\n\n {\n text: \"Fiscal\",\n path: \"/fiscal\",\n displayType: \"page\",\n subitems: [\n { text: \"Manifesto de Notas\", path: \"/manifest\" },\n { text: \"Entrada de Notas\", path: \"/entries\" },\n { text: \"Notas Emitidas\", path: \"/issued\" },\n { text: \"Notas Devolvidas\", path: \"/returned\" },\n { text: \"Grupos fiscais\", path: \"/groups\" },\n ],\n },\n {\n text: \"Estoque\",\n path: \"/register/stock\",\n displayType: \"page\",\n subitems: [\n { text: \"Insumos\", path: \"\" },\n { text: \"Transferência de Estoque\", path: \"/transfers\" },\n { text: \"Fornecedores\", path: \"/suppliers\" },\n ],\n },\n {\n text: \"Perfil\",\n path: \"/profile\",\n displayType: \"page\",\n subitems: [\n { text: \"Editar meu negócio\", path: \"/info\" },\n { text: \"Alterar perfil da conta\", path: \"/user-profile\" },\n { text: \"Tarefas\", path: \"/tasks\" },\n ],\n },\n {\n text: \"Ajuda\",\n path: \"/help\",\n icon: <IconHelpFilled />,\n displayType: \"sidebar\",\n barPosition: \"footer\",\n },\n {\n text: \"Sair\",\n icon: <IconLogout />,\n displayType: \"sidebar\",\n barPosition: \"footer\",\n function: () => {\n console.log(\"Sair\");\n },\n },\n ],\n};\n\nexport const MENU_CONSTANTS = {\n TOOLTIPS: {\n CLOSE_MENU: \"Fechar menu\",\n OPEN_MENU: \"Abrir menu\",\n },\n SEARCH: {\n PLACEHOLDER: \"Buscar\",\n NO_RESULTS: \"Nenhum resultado encontrado\",\n },\n} as const;\n\nexport const MENU_ITEMS = [\n {\n id: \"home\",\n text: \"Home\",\n path: \"/\",\n },\n];\n","import type React from \"react\";\nimport { createContext, useContext } from \"react\";\n\ntype MenuType = React.ElementType | null;\n\nconst MenuContext = createContext<MenuType>(null);\n\ninterface MenuProviderProps {\n component: React.ElementType;\n children: React.ReactNode;\n}\n\nexport const MenuProvider = ({ component, children }: MenuProviderProps) => {\n return (\n <MenuContext.Provider value={component}>{children}</MenuContext.Provider>\n );\n};\n\nexport const useMenu = () => {\n const context = useContext(MenuContext);\n\n if (context === null) {\n throw new Error(\"useMenu must be used within a MenuProvider\");\n }\n\n return context;\n};\n","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nimport 'src/theme/sprinkles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA72dTW_6WJaH9_0psuxeUArvoWYz0z2azki9qm6pNi1FNhgwGJsYEyCj_u4jv-Hr834JM6vSX7GfB-79cck5cCq_nI55nO6T6PSxik_HJLh9pFkafayi077Ijh8fw-35bbg4j17-5w8vL80lv76U1_zbH_71h1_w7eskuqLbp_3by2uY2-M0idNoQFLe-hTnUgYWJtlyjzBhH1NdxAA2ebxC90f9-8trwO3HYLWK083H9XpCd2-ru5srfn35CvI_DganY7CM082gvOFjOAm3p8nXaPonDoupe5HqQGccFDNTiekg5xzygJCfEvLQId84ZIKQhYRMOuSCXU3MvIir6UADFkpQv-Wdd7Ahg_1HdiQzNRy56EGRHR8KVoUn6FOVbghYCSfYbxrbELQSjbM2DDW0IXAlGu_kMNLQhuBVq02wt-pqGwJYJ4Wg7_WkGIL456wosgOdxd6xMQirKx-KYyshHJ8WhyGUjYIwFAaDIZqNgEjnxSAwBLQREDv9bRAYYtruAjaMRpZdMIT1nibCMTWlyRDZv0XrggzsqH8EJdG6eCiutYDghzrfENUKT9AjlW6IaQXHIR1tVbghohWc2Nq9CjfEs151gp7qq26IZpMagv9pSI0hlr_Fmy2Ty_4RlJcXPhTMRkEYLgaDIZq1gOB_63xDOGs8Tud4pOMN8azxeIfHUx1vCGiz-gT_zbD6hoi2CSIMoSVBUkgPQb6JUzKe4_rgqa_wy2VLJaBbCSpFsWESyL2AlNLXEIncpQJRClxDJDbqUyBKGWtXkkAW0kpKsbrvOQG9iHuuJ4krYMbfDti_fnHgmD0ZaWw9V3TxMpkqZD1edOkyeVPAesrowmUSKmA9bEzZMom0VdYzxxUtk62aDj16QskycY-IhyqWvoIwpAaDHkO2XJl86nw9jGyxMil0vB5JtlSZXHS8Hky-UJl8G1Zfj6dQpkxHlgTpIWWLlGnvqPGvUVw8QX9T6Xo4mQJlGmpsPZhMeTKNNLQeSqY4mW41tB5IrjSZ7tXV1sPIFibTVE-KHkS-LJn2jpoHqpKegOAXOl8PI1eSTC8qXY8jV5BMv1W4HkiuHJmNVLgeSbYYmU31VddDyZciszdDaqRYbgL6N8dZfbxsAs9fGSsegYtYnBS6kkbAthxMyljJwtma7TmWFKmSRWxGyrGkBFUrRsA-2RWTAlPvJ4Er-P2U8pFnl79yEalf83l2GXjHpMUS1G-RKqWlgWLmfCQxpdA0SJyb-VRCStlpkHiL5m8SUopQu5oEMxRXU0rSfecJaiTvvBSoZZacDymXqXn90q4v8o-VAyfYe40thatDE-RUIUsR68BEyj4VsBS0DkzsYKGApbg5q0yQL9oqS6Fz00Gwv9V0SNFbZ2nx9_g7un8NAX0Roj4nyusGp_g7avHF7Zht8uC4vQ1OyyCJBg1gcCe20uEnK91GQfURNpJOjdIGQEgLVhpmK-JpvhmN5d2E7sLqlsGxiLMUG0OjsQEQ0m9WejoECc7KW2RUVrdj4WgEheW3Yt6j6lcxNkD18VV9f2Ybub-NsRFyqPfnmgtqNkZ7s7oNEqU-C2o6TKnZW8WJkl4FKRupT7O3DRWhHr0KaiZYhVlcR4vSjqH2Eq-KLfmW-FYfqNUFfu-GDZNAfgtI6U2wJmLgYsQDpfe-moff9xZTnie95dU8vGeLN54nvdM1K0gAQ2EFpTe4dp8JZCTts_S-VqeQDM-iPpD6ObWlp6US0L0ElfLTMAlkKiClBDVEIkKfAlHKUEMkNqgQiFKK2pUkkBdpJaUc3fecgH6Ley42qeL0d_YgCppOSZwOHjiMOjRBnipksTHVggnum8wVW1ItFkcrCGWs2IxqsXjfgkjGim2o--oS3K2yumIDqksEQd5riVDC9s6fXEF6Zz9yejlwgv2psZXAvXPnWFAoZCVy79xxFlwUsBK6d-5UC74VsBK7d_ZwC0faKivBe-fPuHCqpkNuxl_5cy5se6rXh865O5oghwpZbsBfuXMujGSu3Hq_cudcuJWxctP9yp1z4V7Gyu32K3vOhamyunKj_cqfc-GnlgglbMI5FxZ39kPnXAcn2BeNrQSOPefCb4WsRI4955YjBayEjj3nllMFrMSOP-eWb9oqK8ETzrllqKZDil6Y5aso_y1YxecTsYvL-tyorxrk1WWtoP6Xu49LkU5s5ValO5u5EunEyuxVurMykUinFj5V8e7Kr2U-JfjUBa5hg_pfSXT9zziPllV7JM8uHTqvW19JdB2s2it-Ldv1GmKQR19Rfoo61IlDtZeKyLpT29EKklZfZQDhh3cWgMwjDJJ4k_53ER1OH6cij4rltsN9VbjqikFcXvLrS3MND6nkpyLIi45zwZzuMh61jNIiyjvMFWPqS5RHE6WrDnJjHkuUwvE6BxMGp6jsW3WYb4xpLwKY3flUxOvbX7K0iNKCWp_VawVrLhws6yuFNQJIsE6rIY0j14p6dO56rUbCY8NrBnDlsRwNwqi4RFGX-9WYZvautoCDPDu7j3UiceuLLdjoK0qTW4edStj6YuLV-nseHD_S7FL-546adS_Q8gfliGv5X-72_s1zeLN2KzogVm8UQji7_r4t__Xx2hEWHeFU_fDXl1f-xmF3Y4BvHBI3_rU8uh1f2N22ybMLbatuclxLeBM0HbNTXJ2kpyIo4mV356q6s_1xed6VP-fuzqMkKOIvZ4EjcH97BUcIwlOWnAuHsAaE9gqOsI6vkfMa2IDbqx_zzz5e7p2kb9GzL38O7s6-onydZJePr_gUh4nz0OPq9vbnv740F3D3b-PVyj0WduD2-ufc3adlniVJd_ce3F3_nLs7OBdZd28C7i1_Cu4somvxH-Vx_1F-2a279VDdWv50UL0b_PpS_py9GZ7VKbqdPKY7QN58ctLcn6H7qwvY25tTrAMcEaC5BH4Ufc5PWQ7Wrfk8vvoRuWrNXatoHZwT52HnvRubH9P3HrO4v2Sn3r3Nj-l706x8Vkl2cV8hRe9-5xKacQli54GfezeXPyM-h_29rmDyaHNOAueRf3WfwV64j8rqH5wG3c3Np4IH6hPfxnSIVvH50IkuHqL7vY0nFTyn6BCHWeIs5tXD5NzduDLB1ffcPDx9x5Fy_FdwiJMbzuV3p1lXlxCa-geD7t5GlBDf3ijzm8eHIL_985ekfHTRqbNFr-33N8os1Z7qH6dBc9PAuae2oA9oSUmXuWhodDhJsyg6wcgm6Eo3BQ_3JBqrArgV6ONkqAjyfcef6Pz6-ho-McDdDZia8M76U1_jyvKPPFpRGZqx-Dxa4fxQX-Tqw52HPjewu8dNfZWrh-7Abzr4jqW-yNViUVYWIhjmhPoq1x3dy0ggc918UF_icqHuAocq1llf6ruDWf5xi8p3LyoaS5Ze34PTgXpalMJ5_CuboXsOqK1FCDp8ZMLf4air1YejsKw1PMwLamsBQS8yG5Xupgb1szDaXfitBe6s-5bGb_IoSqnoxCy_ugUnJzYInMe_M_G7x7_T8R18b4Hf0XsRjUKTKHCYGea3ghbfi8xBY7uJQb8PIrC74KkB7aw3-iWwhofJOaLikrH08g6cFvR7H8Y7j_1ooXePHf3Ch-Ad-tOAvoPRl1ldMApKLqNhTtCXHHvwXkxOCtlNyUnDugtd6GBnndHXbGt0lgfphkzJmcXX9-CcoK9fUgrnCXzZDN1z-DIIOvzFhL_D0ReD-3CUmKuGh5lBXxQFgl5qbirdzc1NR7sL_22BO-uOvr5c40_RMktX7NvSmi-Y3DtxjoZM2UT5ume15msnQucUUEwFRdg6F19GYVdnYoqpvgkGbc1XVD0XqnCZugrY3NSt-eKqr3KzN2RKLOxxN4uvs5DJ3Sum2kqjc5EHyT9_uWxjpzu75sut5o5Be0PDZwquOx-HnK-6WgXON1N7AYuzWnwF1pc4K8UUYn1HZ-BLsZ6h4zPV2J2PYswXZa0BJZgpzjpHL7x8eXYX9HLLVGg9ursJfIHm8t09YAq0uyFMgqXzBPj6rBW0NzR8pj6rPkRArwW-PKuuh68Epjxr2OCR87VZzQaPG3_hIFjuN9Unfn_J5C7cui7UuhsGlNXekFPMzvZv_cVCl072dtbY28q37lgneq3ufKxqP4_39l6_ey-p2OQTje6mJr5OqfMHrXQPcH2wOG3tQMHoPMnUTyj0CHlfZ8u8bHzjkHShpB6tNrWbSPt6Cf00y8QWI2tyNy33cUl9R2hjO5Drk0VpbkbKXueZFt5aoUMpWjvn2dfJty05I4rql4dT7WWy1l5gLz5KscEp-dzNvHoapa4ndLKF5s0itbZCRavzTL99pUJ_VHLejZtXTyPfNGV8MLKbod2odlI5pxvYzchDKLZXBZuziZuxn0_quUIj033dTCxKYyNWcjrPcuqpFLqzgrHzzfx8fMuWtqGYzs0-tY_LGHshfbPrxOYu73I3b-Flkzq-0Mf2fjeBxWluA8te56mG3lqhNyxaO-fS18k3jDkjyuvKw6l2kVlrL7ORj1JsLUs-dzPXnkap3wydSud5Y2oS-DahLQ_Cef6mfoFnZ9rwELoHYGodeLWrZT2KuamL4NnDVh5CL_OmhoJPY1uXuwEw9Rb8ut3wATB9742pxWBtgbNS_LozdRo8-uKK2llsU9fB3iyXxZ3W1H6wdtBZKXplmRoR9rY6L-69nkwtCWOvXVS6G2tqSpgb8Ky239DemHoS1q48lJL9-Y2pJWFr1TNC8BxN_Qhj_74aBNR695umHVFPDf6wb88bnfBc_YRSv571dbabl03o01MudAZ8W216f570uS_97atZJvflOZOzaduhj0vsxzs2uhe_HWkuYx-eNjlPamwXSf130tNZJmaL0HeHDpi87dRi0fvtyNNL3MwkkfvslMHdlLnVIfbXHQvbW9--aSp7X531Oc9s4aWT-umcrXMFPi6hj06YUPRCo0vvn1O2XgCXVpXcN2c87matPExiv9xxcaXxNtJk5j45Z3Oe2dpHJvXHGVdn2niYhL449qAIbm0mvR9OuHoBjI0iuQ9OW9xN2tk9Yv_bMTG97-1eU1n73ozLeVaJh0rqd9OmznOwe4Q-N7Kg2KUmj97fxqZe6DKbRu5rkw53c45mi9jPdjxsL3v7qbnsfWzW5zy13Esn9a85W-c6-biEvjVhQvkrjC69X03Zehk8W1Vyn5rxuJv15WES-9OOS-lNb9Ui2Lsvrcid56vWw779aFndidXS2K8PzWpRbNUq2bf_zKvdDMdqwezVdxalzgbHau3s2W92xEyvOVZLaHOfmZKh10-sVtI-_WVe6SyqWlV79JVZYadTy2tzP5mSwVdIrBbaHn1kUth7Xaglt7V_zKncjVOLbnvfmNL1-6mxWnOb-8WOjOwVx2rJbewTYxF4Tmq9besPr-MkERrDcfN_AIqT5OGGMKVworCyGYQOMCHo8JEJz7d8-3D0Gl1reLXHCwS91-RGpYtNXYx2F35rgUtd3ApPt2_jmIPb2rYQ7TzsnU4W-rQA3GH3KpZvzHZQlI9EwqqdWAfcy8VBpIqt1z7SXdhUg0q91grLNlnjjGObm6uEwHnsRxNf6KZifAf_tMD59mkPjQKSK3C1X9rH92Jy0thigxSB3QUvDGipI1rBuUosPnN0awsU453H_mWhCz1PBO_QFwOab3K6YBSUq4xWu5o9eC8mN4UstjEh1l3obx0s9S0rNNOw3L1ybGOjEsG7x70bGthCZxKiO_BIB_OtSAcLw7Ebi2C19-ii3WjsJjJXbDYCqLvAUxUrdRcrMNtW3M04uLmdSAicBz838YX-IcZ38DcLnG8Y9tAoJQsFrnYI-_heUgKNLbYEEdhd8NCAlnqAFVxp_u3YQse36cfanGfE1jyeXT7O1ZnY8serrUd4ULjYSsizj0e5ekljiyKfxh1jcTeJrY_8OnWViWnR7dgyydqa69NxrNlqyaMXRzmcdWIrJ3vzjTB0fLaEsnbb-nQUXLaYsrfXgKEXV7asMvbTMNtdfLawMjfQ-vx-l2nH1lXWjllFJ1tlO7assrXIXDJ41GxNZeuJnYo820dCV2xXF1b1dQ_3xWiNs7eF1SL0xkhJpzgbFXx_DArQy-tLV6g9MiTpvcIuBoPYJ6Pw7kZcbQKpV9Yo6G7Z7sYLbP0yjHce_reFLvTMEPyO3r8a0HzfzAXD3OyHMlrtnfXgbl72I4Us9s8g1lno_VgHSz20Bs120fYTnm_uo5ES5zlMjQ6hl0YpOsHMJuD7aQCPgjNXBWpPDSp68XnT-WJfjYC7G7Aw4aXeWiPgSp19wBus_TVK4TyH0GYQemyEoMMvTXi-z9aHowCtNLzaawOCXnwilS722zDaXfi1BS713Bo803Xbb3i-se9GCJzHvzXxhd4bxnfw2ALn-289NArNToGrPbg-vheZvcYW-3AI7C54YkBLvbgGznbj9gdeYO7HkRLnSaRGh9CToxSdILMJ-L4cwKP0HFWB2puDil6CPnW-2J8j4O4G5Ca81KNrBEqXbi8UXr59OsHoPDOhBvPs1fG-ziaUY179OtKFQidUZp49O9rXS6BQpPn07ViTu2lCvebXu2tsTPduL5Rt1v4dNODIC9WbRw-P9nRrlgiVnL2PR1o6h1DSWXt50ABDnQjFnb2fhyxulBOhzDP29Ci-uxlCoWfu60FHv0eWCHWetbfXGMjuXiKUebb-Xp8OHr1Q4wk9vn8v_0ZTUP5FsyhKX4J09fJH548vz2fz4_VPFdh5GKv4dEyC20eapdHHIQtj5w-11a-Zl5fmmvKPYJV_tvLl5V80o_xDepAxhozyIoERp-XfxhxQqBlEOdcKxDDJlnvIWkBWdZVA2eTxCkKWEFJeRDCOwWoVp5vqD1kDxLpBNJe0e83-FWuejdCxggZ_xJolI3Aig8HfsGa5B8jNZC74E9YsN4HcXOaCv2DNrzACn5UVBn_AWsgFQl-1XIC_X82x_5EdqdgNX_v8QZEdH85e5cCKsUFhzGBpwIKZLjBmseSjOA4XOt-YyZKPtni41PnGbFY7gAVrww4YM1rnCCtiS46MWf1zVhTZgYwrOHIGYXXpw4ltTViU2UTG3DYerMlNGmN6GwsO8NlkMWa4seAIXE0WY5LbnUGaETyxmJ0x5vmeNSyC5xaXNWOq_1b-GVgi0yN4fJV_D_bhRNcWLIFnGCkxprlyYAU8xiiFMcmVAeV4BM8xymBMcWXAew6PMcpgTHC9E1gBjzByJ4zpbTKFJfD4ojNlTO5vVa1KRRceX9XfEn44u40Ha-D5RWuM6a0tWAKPL1JizG_tQAEew7OLdBgTXDvQ1o_hsUU6jBludgRL4JlF74gxxW2-sAaeWky-tBwfgnwTp1SCx-2hVV_iH90WjclrmayltQFjbixytYA2WBzNRMRqmWyweAczEavFsF1dzM3l1dWSd08EJp-VRNjCxtRb42uP_li55RiQYPKqC2zRI2utyVjF2xJIVlqTmUq3BZGssyYLlW7LI11lTZb6yttiydRYk7UhO7Z08hXWpH-8PFxg9T1Yk5g0tqRy1dUks0hseeVqq0lucdhSy1VWk7PFYcsuW1dNrqYdsSWYr6qmr7Z82XLM1VRTcEw9VlK5DqyYGRS2_NL11HShC2zZpaup6VLn23JL11LTtc63ZZappKaxYQdseeXqqGliyZEtq2wVNQXH1INFVM-CJblFYssrU0FNzwaFLbFM_TS9Ggy2zDLV0-zVYLCllqudZmPLTthyy1ZOs5kpU1pyNwH5W-ysPZo2wQO_vlZQzFwKTC2XJRIT1zxRi2EJRPGbxTxQS10JxLuU8EAtZNUqYmImrKKWqXq3MTOXdluLUJ5d_sqkqD0v8uwyeChJLRujrwpaC1RDRuD5qwzWctVwUbTmY5mrxavhor2bz2SulrJ2hTF4oaywFrZ7LjB6qeVCy9wyS86HlIndvD0W6qseS55jwIJYF2j56_gYn6h4LYUdHQcxU-laFjs63tpcpWuJdFYe48_6ymu5dLODBVdDdrR0rrO0-Hv8Hd2_UgIkb-0ZU144OMXf92_-FLdjtsmD4_Y2OC2DJBo0hMEdef8i0Kdo3kZB_dULYB6bzQ2BMBeiOcxW-AnPzNrydsJ5EZ3L4FjEWYq0C7O2IRDmb9F8OgQJCtHb0uyt7sfW0Yiylt-Beo-q3wi5ZLVHX_V1qW3k_lLIZsvB3p91rvi5fMUe_jZhlP-s-MmUJR7yKmeU-aqYuaxlHvI2bYR_9Kr46cTlHvY6c5R7TLmrLxVS77Nv7WHcfO3Q9y22AWPuVeRq76w1FlEXrxJVe0OtoejNdDGWoNr7aA1Fm7mYSVDt7bNZVUxdiKuqvWu2KcDcpZwC7c2yDiuVr0V7mPXzbA9Yi8bkWCZrEWvAmJuIXC1kDRanLBOxWswaLN65XMRqQWtXF3PP8upqUbsnApOvSiLURl2c_s4dZ8G9MxSngwePtI6P8WMVrzbnWjqGzzS42pZr2Sh9wUJjqw25lo02NFhqbLUVd19xDF-rK6424bq8YHys58WQx3f2_AsSR_DoGegYsCDTBYZMvjOnYZCreEMq35lDMTirdEMu35mzMbiqdEMy37kjMnzVV96QzXf2pAzHhuzoH2tc2dMy7PrP14dPyzsf4xcqXv8o48qcluFSg-sfYlyZ0zJca2z944src1qGscbWP7i4cqdlmKgrrn9kcWVPyzDT82LII39ahrkjePi07AxYcNYFhkxyp2V4VfGGVHKn5fJVpRtyyZ2Wy7FKNySTPS2XM33lDdnkT8vlwpAdLZ31_8H-t2AVn094e5ftmdP8j-7z6rrWUv_L3eClqsB7vDYonF1eqQq8ULFB4SxUpCqIzUgMDnc31rqEsGQWi6vZNBp6-rL7HXA-eyunL-FQ5vB1NNamMosgTKJuBHjYPESvqUzAmECGx1QmQM0hymcqE7ACyDJNZQLICkIMU5kAsel___jhb7Z_YPROQdunMgH4IIPtU5mAe5S59qlMwD3JXI-pTAD-UlbYZyoToG9aLjynMuEre9jnP2MqEyomBoXXVCYUzHWB11Qm5Ac632sqE_JXOt9vKhMKNoYd8JzKhIqdJUf-U5lQA46c501lQtHRJvKdyoSak0njO5UJLV8mi-9UJrTcTBbvqUygGcET62lTmVAEz61nTWVCDzy-njKVCSXwDHvCVCZUwGPs51OZ0ADPsZ9PZUIDPMaeMJUJFfAIe8pUJpTA4-tJU5lQA4-vJ01lQg08v54ylQkl8Ph6xlQmcIzh2fWMqUzogMfWU6YyoQSeWU-ayoQaeGr9fCoTGtpD6-dTmZC8kcnmqUzI3Ylc81QmxB5ErHkqE2KPItY-lQm5J3l1PaYyIflLSYTfVCak33r0J0xlwjbLUBf4TGVC_ETF-0xlQvpcpftMZUJ6oNK9pjIhfqWvvN9UJhRsDNnxnsqEkv7x8rSpTKg5mDSeU5lQcrRIPKcyoeNkcXhOZULHl8XhO5UJJTfTjnhPZQLNdGjLl-dUJrSAY-oZU5lQMTcovKYyoSDQBV5TmZC_0vleU5mQv9H5flOZULAz7IDnVCZUHCw58p3KhBJwTD1nKhNKThaJ31QmVHwZFH5TmdBwMxj8pjKBYTY0GDynMqFiYtkJ36lMKJmbMmWdyoT09mj6yVQmZK4Epm0qExI3PNE2lQmBOx5om8qEwAMPNE5lQuJRWEXrVCZknqTd9pjKhNz2vHjCVCZE3xS0eSoTfvQ8lMHmqUzInchc81Qm5M5lrn0qE4IDZYU9pjIheqXlwm8qE-LbY-FpU5lQsNMFPlOZEH9Q8T5TmZB-VOk-U5mQflLpXlOZEP-lr7zfVCYU3AzZ8Z7KBJK39oz5v5_KhOaJ2fyjqUyonZu1P5rKhNrArP3ZVCb0rszen05lQnN79P1_TWVC_87D_-OpTCg_eMh_PJUJ5UcP-c-nMqH95GF_eCoTStvD-KdTmZB7E7nWqUxAXQwlqnUqE0InEtQ6lQmhcwlqnsqE1EBcVftUJuSu5BR4TGVCcnuY_XwqE5J3Mtk8lQm5B5FrnsqE2KOINU9lQuxJxNqnMiH3S15dj6lMSL4pifCayoRfFL53hp4zlQnxExXvMZUJ4XMN7jGVCdmBxvaYyoTslcb2mcqE8I264l5TmRC_0_PiN5UJBQdH8JSpTCg46gKfqUyIP6l4n6lMSP9S6T5TmZB-U-leU5kAHw71lfebyoSCiSE7XlOZUND1n58ylQnxgYr3mMqE8JUG95jKhOyNxvaYyoTsncb2mcqE8IO64l5TmRB_1PPiN5UJBSdH8JSpTCj40gU-U5kQf1PxPlOZgL4cqnSfqUxIn6h0r6lMiJ_rK-83lQkFgSE7nlOZUNGeOU-cyoSKjUHhOZUJFTuDwncqEzoOBof_VCa0HC0WcirzfwEZHmviUh4BAA';\nimport 'src/components/CollapsableMenu/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA91YW2vkNhR-z68QgUIGVqk9ueyg0Id2YWmgpQsLbaEsQbaPbe1oJCFpbrvsfy-SL-PLeMaTTLZQSEgsWzr37ztH18ZuOZinBYjlOyksZQL0O06NeXoK0xsdi2mIvl4gpKRhlklBkAZOLVvBwwVCVlNRra9ZYnMUXN8Y98Y_EXR_qzbuMQeW5ZagMAiSVe5WFE0SJjKCZmrjf8Np8WlGlV90_0dyg01OE7kmaEX1FS6fDObuPNBPT-FtlJvbVZhN3Aa5Ap1yucZbgujSylrJVOoFlpplTBDEIbUPF98urkdYTwheQzRnFptYS84jqr1DEmYUp1uChBQweNgfCkT7wKnfXbpnOvX-aW_-FWjSVePW72q6pjwhDIIfGu7EkbRWLhoO1AnoejVUG2QkZ0npzVhyqQ0WsLSa8tKpxu68-nayX7u-XXejPvJmpBw2OGEa4jKj5BprWIE2Pqk-L41l6RbHUlgQliCjaAw4ArsGEOO8ZVZZIUoKiw37AgRNy1RMGeekbb_SbEH1FieQ0iXfmX_jc8qra3LNxJygYKR8RcXO1ky7BA7dYQsmcBm64KGfRghV2caZABxzulAETZsvXE1IzbxnVqAtiylvpj5BOUsS5yiELGws3r0AzpkyrChQqRMcaaBzgvwf7FbcG-8Usj9DEqrnzaqLCw_tvBxWXvZLzk3ONL0odPSr6xIL7gPvAW9ohQ_ToNjOwVrQ2EXeg0RwHQ4VyrNTsY5RHYOGi_fLeoylGACKtwVMNlCtUX-aJmxpytVTDya5i6A_PqLxPNNyKRJ8KErj6_igXBo7nB8juCqgnuBgct-qGKVlyjg8LmgGbXGzJi7eBW3aqJ6pURBbrKllkqAQ_VgUlYw-u-WUWYJi56w9rr8rcLJbzNV3BE1rbPSEoagGYbskVx7qzS65bpRxzRg2jjgBh9rR-0Um27YIeowhHPJU_uyh2HspbTcBYn9ihcYGeEoK94FIukRd0Y-Vqpv7fulZxNMxYaexAarjfCBvoZlIlfGV4bdtfWtdvS3T4ZotoTSBWPrkE33eP6JUjTbPhNeULhjfVvvsVslMU5Vvyxe9nAl5F5pnL0Lmoj0bay4R0l4NfNrH4nRyRsJ-LRXPD8Nn1u8V4NpBwwepluovTZXqqpgdmAwqQHCtNkHhfRHKBd1U3c9NUGK6XFqXaLsOSDrSt9uyYWqib_kGBddTc4KahESQSg1l-ZVd5eXlQ0t7GhnJl7aYazxm3Ve9iDOhDapBE1SCLtrNhqik044f-04X588Og-c6ZxZ2OXY_KYvGOlZLtFTl0HSFHcUFbtRSG6SziF4Fb1D5cx1O_L4vmIkENt75ox38T0ItxcZSbV3M_aZPb9BJu0Eku70-UnUe9FLyTwZrJbVtH5QPpmN79-8yofyje27v_9xj0EazHlYtSPmcMlsNKMOc0e8GD46zuxjmk27q10Os7zreNEqhmLdHDLnO7H3TynwfYdY9sWN833pxlgnMLCwMQTEIW3RZAw3vSQNng_Bmk6EJ5MiM9lKK7FDfnonmlDmlOY2tmGERh5GhqHnw5Cm1S5w7cT5ovzHTqZfFLt87G4S0ORPZe0cgHxXtUI1oTzplIhcewBtT6zW9Hwxms9_ZhSM6Z7dzwiB6-9JB9NHCYi-2qR6kDOPr8CGn81dVfnjWpLBgz1RQt3cl2fU7hw411QYE3RQbaGT0mH78DP13S4V-g2SGrp66o0yl2lIYsH2IG2nz97mAOqbCdZzDSkvRVSWcDapyqDSHCWmsUgXXKyqAY6lAfOppWZ_rgmOphb-vwlmQQDYZb_j_bNQ6mtm728aRtNW-lRzn1vPPPwelvcI0czAxqWbUXXJAbCH56dLqJVx-OkX84Vn0GbJHpfGe5v9lQof7j1Ei_Z_kneScKt_3fHC13pZt27eumWbFfZJmCbawUJxawFquDUFBqrvA0_-sh0CjlCigqAChrwPiQye-ce4yYhbMo-i5c-WP6Fyx7W-uzDJ6HI7LpgDB_WTnBmidMVFO1TfToTFjH4E-rze6e0lvdMTUV7hROSLwFUClyIkhkdt2qkdcxvPxIRtMg_-A2DoJ8eIBqXWr3olFv6APO_lVEumgwO-QSD97EW3BX84h8V9vGzCe9B8AAA';\nexport var itemContainerClass = 'styles_itemContainerClass__1f3rcn2r sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_justifyContent_center__1hu819ud1 sprinkles_alignItems_center__1hu819ucx sprinkles_position_relative__1hu819ude';\nexport var itemContainerOpenClass = 'styles_itemContainerOpenClass__1f3rcn2s';\nexport var itemsListClass = 'styles_itemsListClass__1f3rcn2m sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_overflow_auto__1hu819udl';\nexport var menuBodyClass = 'styles_menuBodyClass__1f3rcn2a sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_flexGrow_1__1hu819udc';\nexport var menuContainerClass = 'styles_menuContainerClass__1f3rcn21 sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_alignItems_center__1hu819ucx sprinkles_backgroundColor_neutral.white__1hu819ugm';\nexport var menuContainerOpenClass = 'styles_menuContainerOpenClass__1f3rcn22';\nexport var menuFooterClass = 'styles_menuFooterClass__1f3rcn2c sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct';\nexport var menuHeaderClass = 'styles_menuHeaderClass__1f3rcn24 sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_alignItems_center__1hu819ucx';\nexport var menuHeaderIconContainerClass = 'styles_menuHeaderIconContainerClass__1f3rcn27 sprinkles_display_flex_desktop__1hu819u5 sprinkles_alignItems_center__1hu819ucx sprinkles_justifyContent_center__1hu819ud1 sprinkles_cursor_pointer__1hu819uds';\nexport var menuHeaderOpenClass = 'styles_menuHeaderOpenClass__1f3rcn25';\nexport var menuItemWrapperClass = 'styles_menuItemWrapperClass__1f3rcn2p sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_position_relative__1hu819ude';\nexport var menuModalSearchContainerClass = 'styles_menuModalSearchContainerClass__1f3rcn210';\nexport var menuModalStyleClass = 'styles_menuModalStyleClass__1f3rcn2j sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_position_relative__1hu819ude sprinkles_backgroundColor_neutral.white__1hu819ugm';\nexport var menuPopupWrapperClass = 'styles_menuPopupWrapperClass__1f3rcn2g';\nexport var menuViewportClass = 'styles_menuViewportClass__1f3rcn2h';\nexport var modalHeaderClass = 'styles_modalHeaderClass__1f3rcn2k';\nexport var nothingFoundSpanClass = 'styles_nothingFoundSpanClass__1f3rcn2n';\nexport var profileImageClass = 'styles_profileImageClass__1f3rcn28';\nexport var searchContainerClass = 'styles_searchContainerClass__1f3rcn2e sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_justifyContent_center__1hu819ud1 sprinkles_alignItems_center__1hu819ucx sprinkles_cursor_pointer__1hu819uds sprinkles_position_relative__1hu819ude';\nexport var searchContainerOpenClass = 'styles_searchContainerOpenClass__1f3rcn2f';\nexport var styledCollapsiblePanelClass = 'styles_styledCollapsiblePanelClass__1f3rcn2t';\nexport var subItemContainerClass = 'styles_subItemContainerClass__1f3rcn2x sprinkles_display_flex_desktop__1hu819u5 sprinkles_alignItems_center__1hu819ucx sprinkles_position_relative__1hu819ude sprinkles_flexGrow_1__1hu819udc sprinkles_color_neutral.darker__1hu819ufc';\nexport var subitemContainerActiveClass = 'styles_subitemContainerActiveClass__1f3rcn2z';\nexport var subitemContainerClass = 'styles_subitemContainerClass__1f3rcn2y';\nexport var subitesInnerClass = 'styles_subitesInnerClass__1f3rcn2v sprinkles_display_flex_desktop__1hu819u5 sprinkles_flexDirection_column__1hu819uct sprinkles_overflow_hidden__1hu819udj';","import type { HTMLAttributes } from \"react\";\nimport { useMenu } from \"../menuContext\";\nimport {\n subitemContainerActiveClass,\n subitemContainerClass,\n} from \"../styles.css\";\nimport type { MenuItemProps } from \"../types\";\n\ninterface MenuSubitemComponentProps extends HTMLAttributes<HTMLAnchorElement> {\n subitem: MenuItemProps;\n parentPath?: string;\n setSearch?: (value: string) => void;\n}\n\nexport const MenuSubitem = ({\n subitem,\n parentPath = \"\",\n setSearch,\n ...props\n}: MenuSubitemComponentProps) => {\n const SubitemComponent = useMenu();\n const pathToGo = subitem.function ? \"#\" : parentPath + subitem.path || \"#\";\n const isActive = pathToGo === window.location.pathname;\n\n const componentProps = {\n to: pathToGo,\n href: pathToGo,\n id: `menu-item-${subitem.path}`,\n className: `${subitemContainerClass} ${\n isActive ? subitemContainerActiveClass : \"\"\n }`,\n onClick: () => {\n setSearch?.(\"\");\n subitem.function?.();\n },\n ...props,\n };\n\n return (\n <SubitemComponent {...componentProps}>\n <span>{subitem.searchText || subitem.text}</span>\n </SubitemComponent>\n );\n};\n","import { MENU_CONSTANTS } from \"../../../utils/consts\";\nimport { MenuSubitem } from \"../MenuSubitem\";\nimport { nothingFoundSpanClass } from \"../styles.css\";\nimport type { MenuItemProps } from \"../types\";\n\ninterface MenuContentProps {\n activeSearch: string;\n sideBarOpen: boolean;\n searchItemsFiltered: MenuItemProps[];\n bodyItems: MenuItemProps[];\n onSearchChange: (value: string) => void;\n renderMenuItem: (item: MenuItemProps, index: number) => React.ReactNode;\n}\n\nexport const MenuContent = ({\n activeSearch,\n sideBarOpen,\n searchItemsFiltered,\n bodyItems,\n onSearchChange,\n renderMenuItem,\n}: MenuContentProps) => {\n if (activeSearch && sideBarOpen) {\n return searchItemsFiltered.length > 0 ? (\n searchItemsFiltered.map((item, index) => (\n <MenuSubitem\n key={(item.path || \"\") + index}\n subitem={item}\n setSearch={onSearchChange}\n />\n ))\n ) : (\n <span className={nothingFoundSpanClass} style={{ textAlign: \"center\" }}>\n {MENU_CONSTANTS.SEARCH.NO_RESULTS}\n </span>\n );\n }\n\n return bodyItems.map(renderMenuItem);\n};\n","import { NavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport { Image } from \"../../Image\";\nimport { IconCloseMenu, IconMenu } from \"../../icons\";\nimport { ScrollArea } from \"../../ScrollArea\";\nimport { MenuSubitem } from \"../MenuSubitem\";\nimport {\n menuHeaderClass,\n menuHeaderIconContainerClass,\n menuHeaderOpenClass,\n menuModalStyleClass,\n menuPopupWrapperClass,\n menuViewportClass,\n modalHeaderClass,\n profileImageClass,\n} from \"../styles.css\";\nimport type { ProfileItemProps } from \"../types\";\n\ninterface MenuHeaderProps {\n sideBarOpen: boolean;\n profile: ProfileItemProps;\n onToggleSidebar: () => void;\n}\n\nexport const MenuHeader = ({\n sideBarOpen,\n profile,\n onToggleSidebar,\n}: MenuHeaderProps) => {\n const hasSubitems = profile.subitems && profile.subitems.length > 0;\n\n return (\n <div\n className={`${menuHeaderClass} ${sideBarOpen ? menuHeaderOpenClass : \"\"}`}\n >\n <button\n onClick={onToggleSidebar}\n className={menuHeaderIconContainerClass}\n aria-label={sideBarOpen ? \"Fechar menu\" : \"Abrir menu\"}\n style={{ border: \"none\", background: \"none\" }}\n >\n {sideBarOpen ? (\n <IconCloseMenu id=\"icon-menu\" />\n ) : (\n <IconMenu id=\"icon-menu\" />\n )}\n </button>\n\n {sideBarOpen && <span>{profile.name}</span>}\n\n {hasSubitems ? (\n <NavigationMenu.Root delay={0} closeDelay={100} orientation=\"vertical\">\n <NavigationMenu.List>\n <NavigationMenu.Item>\n <NavigationMenu.Trigger\n nativeButton={false}\n render={\n <Image\n id=\"menu-item/profile\"\n src={profile.image ?? undefined}\n alt=\"Foto do perfil\"\n className={profileImageClass}\n />\n }\n />\n <NavigationMenu.Content className={menuModalStyleClass}>\n <span className={modalHeaderClass}>{profile.name}</span>\n <ScrollArea maxHeight=\"calc(100vh - 48px)\">\n <div>\n {profile.subitems?.map((subitem) => (\n <MenuSubitem\n key={`profile-subitem-${subitem.text}`}\n subitem={subitem}\n parentPath={profile.path}\n />\n ))}\n </div>\n </ScrollArea>\n </NavigationMenu.Content>\n </NavigationMenu.Item>\n </NavigationMenu.List>\n <NavigationMenu.Portal>\n <NavigationMenu.Positioner\n sideOffset={4}\n side=\"right\"\n align=\"start\"\n collisionAvoidance={{ align: \"none\" }}\n style={{ zIndex: 10 }}\n >\n <NavigationMenu.Popup className={menuPopupWrapperClass}>\n <NavigationMenu.Viewport className={menuViewportClass} />\n </NavigationMenu.Popup>\n </NavigationMenu.Positioner>\n </NavigationMenu.Portal>\n </NavigationMenu.Root>\n ) : (\n <Image\n id=\"menu-item/profile\"\n src={profile.image ?? undefined}\n alt=\"Foto do perfil\"\n className={profileImageClass}\n />\n )}\n </div>\n );\n};\n","import type React from \"react\";\nimport {\n type ElementType,\n forwardRef,\n type ImgHTMLAttributes,\n type SyntheticEvent,\n useEffect,\n useState,\n} from \"react\";\n\nimport * as styles from \"./styles.css\";\n\nexport interface ImageProps extends ImgHTMLAttributes<HTMLImageElement> {\n as?: ElementType;\n}\n\nexport const Image = forwardRef(function Image(\n { as: Component = \"img\", ...props }: ImageProps,\n ref: React.Ref<HTMLImageElement>,\n) {\n const {\n src,\n width,\n height,\n style: consumerStyle,\n className: consumerClassName = \"\",\n onError,\n ...rest\n } = props;\n const [errored, setErrored] = useState(false);\n\n useEffect(() => {\n setErrored(false);\n }, [src]);\n\n const handleError = (e: SyntheticEvent<HTMLImageElement, Event>) => {\n setErrored(true);\n onError?.(e);\n };\n\n if (src && !errored) {\n return <Component ref={ref} {...props} src={src} onError={handleError} />;\n }\n\n return (\n <div\n ref={ref as React.Ref<HTMLDivElement>}\n className={`${styles.placeholderContainer} ${consumerClassName}`}\n style={{\n width: width != null ? width : undefined,\n height: height != null ? height : undefined,\n ...consumerStyle,\n }}\n {...rest}\n />\n );\n});\n\nImage.displayName = \"Image\";\n","import 'src/components/Image/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-yaNw_2PLKee_-KLQ3ItnI6rpRzzmoWyjk8ypL_vPHuwgvbOP02HwEWJAacG3MRIIec_7Ef71jtf1_HrKjaZSyrjVvmI-vmavv738ulPCoc-tv_-i9_-1ueFUOzLedc_vduyprqP_52buN_LbMj-49_jMF1bv5nnu0Vgf23LmQt94Y0qVkYhmFML2iFoGEYJh4YhpF47s8sw2-JD1QMw2jsNAaR7CZ-cBMJQh_6JA45oo763B4F889m8zRWSGKfISGkSOqYIuNpe_p1klSnSONge2psBtDtxyyfRu3qyeubhibhj25fTUdvRU5nf5hmyw1RSfCdRyGUeCyWR89ZfCtme2qbSnSX-uuf8ZHGbqu_SlPxK5bHLJR9UBcJsKMI5lVMQWNyGKT3zOHG7Vr2Smc3S2PL6pD2q-cKSVNJ8J7PBlFM7mR76lLK7m111FWiJarPxadP9Ju-1GP5A65_zKt_yqvH6pB28FdFOJTEzZHPRq_0mKZwDPVnHWtwxwIx3-yPnog-lX_6a5OJhkse6pRmaRSO-ZfvNG7XtIe6THahgl8uHcG_f8V2Mq_co8dKGif9E06DozquYxqF-1dMoCxK_x_t-WycSeReyRSc_-CEums6JZfhYbf-Kn90Nv_0uTpZ3I652ApZBI_5bK45gtFKb6Dmf2o3_v922P-xK6VxSvtVzSNxTsNyTWV3sT3lM7_in3rlf2ggvAhuUyRU0micM9n5z9awi2kc89ltS2m88h7qDE-5_sGNo99USohgcCW7WSgd_b_2iP-P-Df_9s4s_34NHNP8c4_82_tfTP5i8heTv5j8xeQvJn8x-YvJX0z-qZWy0fZOInNLY6dJI_xPXoQqPQWUdoicf3IwpSVCsYWCSUQVmX1zJF1zKWhKebxTj_1HPsAwLIaMkfXeE-Mwj0ASMydcel4bixvkDP9-9aYv2zUYr2Aw3w6jMwN1YgBZaZslmbh22aU6itwMnQHLtXmXD7fm_U5zDNVKAUZc1dL1QBaZfUtMpGkeJwbNQ1x5iXpfdnijvxBUFGrFddCu_MNct4I-hJ2SHUDnAoaRMsgLXDaU-4yU0fx33tiHIDSIGabBNEa78GzCMwnTZPyt8VvtyTOpub9520iQbmEouuBYt37CEEdJ0GTVPhPZFgXaSNNH9ZYFISsgJsZc5DAWEIP3HlFiI0zszTQxEQwk_Qb2PGi6-2NmRl5MBJvZGudPf2fa5ma6EwGVa-QMjhQw5kVGFNo-SW-81nC_y9H3hWLAcirdnRXEVYxAjlrfjlbsXYT0qJHU_StOzpEBqQhnRYLAAZhKEgTC025vAONrsAgbnflZ10WDIKIPA3DHUWoAwN5DqrEjadMpE-r_WnoR1oLRKASzaRu7yeDZ6ppqweSoKrrHx0vdCVGsZo-6mpaAmFdXOcWkABzB-nKQf2h2mqxg27jAXqZKcbppZ1fYw9SxrSmZMUelnIq54aoFzb1lpXX0AR2t8SbFd5p3kN3UZvQW9AkTVWUPeRfGofIeGhqBuyKG8BRkCbNpruXAiJY0nKV5Tr5HTOaRrqK0Hshma6WIIns0-JOyavRPaPdfS9W4iCt2wR-k_8G_Au8B32ZYtU_WJbh8WJUHMP59rMPt_jfPmO0Fq3jG4SephXjBMeERyqirtTGqwGItGeTTDB7L5HBpUj9AwGCC-TgnTJHLEndLwNV4e7IDH5OchweLysiu6fYzXfv3bAEs4JdrJhBAfgQlgEpwY6OEG5BsS-5BTY2E4Frl2CDNIa-Tn7ouBaNzDROlvKjVFc2gDL8wTyukLp1V9i5bV1H8dclLNtmrJ0pprkFTTMEiW0Igty8EySRGUdTEU_tapM7MCFIjVU-ARsq5uRSPHK-xtM0JUUy7YN3d8v1O5TTg8dNRlASyw1ECuTMqy7GOPK_v_N363OMfeac3EDzahay7KnYsMZIqueusy9AW4WTkRKts_FZAPym9qJAye1WuSB0yqPYufKwgiUS5EYsdz8SwDQj4ALQ3fSdEJ2eAmqAQTwffQGpKZTx8vQK3ceGdgDWsA1211AFe30muIATjL0dVww0craPu-7hBRJMD4G42aHBiE63LPMUzmXZdS64kOugxUo6E4EZddLT4ahk1KGlXxIDPNN_Mhofz1bzp5KLfzKLJ2KNcQxmUQZmUGW13DsZQ7auh4jCCs2qjUn91Kig_ZlFdf-KeJnyY7YqP2aMND2g3lMkZlA9o94I0HVQZ8TQf4b6ULfUtU-nQQo7ezGXURDX4UPeE4wEPgshtZQHoyw_8d3ZvLWjo9TdB3b1frtnw-HBxLOx0PWFDwCyun8j221VXvnHzi1zw6zOWXpKtyhlXr4ez0-etu91u8VI127B0nzIPdIasbn_VsDBMinGIlSxF8ZTndPFh2qsMQ6hKCCuAXOSp2ntjzCefR0m51BXR27yhpfR7VU-ArFv0gO0yOq7OgTPpB3JG87xQw5bQ6iD0rxVCrpkV3BwivJzKbiQZ0PVNvMZbRrMV3wMSt8gP6avs9hTb5lhdafFFvrHxJjvLA2WBbe47kg-zk_Ez2H4FqjC_SV6QBszILt1Kof3RxI0kSD7Fku5lzi5UdVQGIn7JydXtnnruyvBnp14bPWpPK-DSbOPapquel_5zpu6339Jn4uR9MxLt5uPUNutPsgueYdTlNkItmZEnv5yhNlcLqz5Lb8OlEzaSStiWKm9PH07gzJcEQGdVckOqePelVWL22REQ0bi6xKrWcSG_0Rn5KfswAPuaVINQAX9kmKuvtqiVyFamxSC93uKd_eEswLznjMREo06kxAEy1hf51Jp8z5cMzAhjL1ip2ExN6-a_ayDg-a2gSwkeMc0JOwQ4hu5fn-M41ROURY7V7A0wO7-F1k7LoZaiSo0FynLBcgkEP8nVDopPVkbSH16CoopbSeTdFAYjLl3yFe9wb_87HP0S_JBwnIrY3kDP_ceUqxT_OFc6NfLW4BRXiCx0HLdvXP4Ez2TunPoT7GhyatTjbi5kxWqrV8pbvElx_ZNsUevj9IPd8Ec7AvGUiB5SgcsnoK57XGFweD-4RVlplVakBtRVZzo9Lf8ANtJZ8dmGGvbAGlTGYICeMP2qm9X3ZyHAa7LLDN8dEEPbAai98qO0W1NWZ5Fi8qZogAWcFealepIyI890rejiRo4vJ0PlNP8K1qpXjcINHKxy1GYTAHhLl-0jtOuY5qLk86FHePImgWiA4DSYi4ijqwFdgh46FWWQ0OkuY1kXtJ58zJYF1ZVx-J6QfIOh67NXugD1zJaOeol__QsKHMx3kts8_VKIiK-ilUQdvHUeKAxADejAncWRsUpp2LXVUqMTFYZlpU_WA5zXXBguUCxgjKc9Qf9XkSRCoGspM3FFWLJqcGiDxMpDVWQpQ43KVA761v0WpfYt2-PaD-bOlUVDo7LY4Hp2qM369XGBJbDN2SxDYU1-ha2NOgrxwZc3AzVcQL5NuL4yPmRoLXfX6hQciOgL7GEoXS6hFP4b8K-z8OlCEQVzC4yUv5vQRIw6F66BH_OmdoVnm0k0f7so1rQMr0HhsMYwLQ6yKBW_yKZT0ALjkrp0xtVIQA1V8MuvndJvLXKRrvYhVyKiVsQf_EHFE5DfvXe4w9qVuZsCIyUFzLMtM0A21Ffd0AoCMsASYpBMn4tTNCktyt-_ZFTUkg--eMjYxT3OpQGuRXI_zdS7hqVOc8VNzzZnE7HCHORuVzSlxrnjmsXpkkPkylEA5r5yRZTzsPOg6sQVxZ_vHwPvS4SZyhxYdXLT4wC2MSKPv-qWtyD4ZsGJUQZBRkbbuhrEVgIcUFPBXYXVveKcD4AahcDq5pbIfyAAj6NgCdT0tg_7MS6_afPK3jGhvbmxcDknEDnSWqANxksEJ7Ci5jeYui9qDv7rJr6deiVIpfPOpPyHDmCGosaS543djfbcSQJMWfGLzw9BNUZZc8gzhJe3rq9zOHjicvrUQ6uQCwB4LA5B5Qkhhhw6ShNecpobpA1kdGPx4i_HBpyqj7kcRybEzxlLZ0iN8iSQMrx_IhRNe5sAu4tBmV9KMpH3iZG23fDrdNzgm2v4Do4QA8xm_36YiVILVPjwhGB684xpa8f-SD1ruwF6bhFg5BngtaxrJ3dR0C1XizD4t8yN7nV6ofOoD3DNWV_AiUlo4ujj8eMu_NzuuN0diDN9DnJcHknsRU1t6bWRtKIUnSKrUSZjlT9PZQQd7q4AL-Jr6SLNmzyhlrevjXy5tW0KR4A6TA968iM5VFw4mixIl0lzVuLKBRcrknOuvnY2qcw4WHPEW6nsCKMQMiXYyjHjl259gpXDE_im-JAkwj2OdNobqwDeURg4dK5leI8BxU4RmQLxn7PPwvieNn9iZfd7ePN9DYx9NP_R4mZtBMPj1dT-dV9Q3UZpSmoMBbrwpFK6DqdKIwd8nNOqwxz4aHQO4WGhL-bikblm06NQB--Oh9QgJNOAi66s-hhg2I6A3YJlFtq-M0E09Dunwq8oUT1_S-Pojcu9jMUbmxygiYa219iZ-XzyuZIwmxrUdMIzVU8OfW5e_7hRqZxTQN3ffupz_tDUoVUpMlg4zY33I9Mn7q7q5XIQ7yS--jXexZVrjLIQOTCxJ5wf9Bq5n8dcPxy11Lpj9Wwx5kMhuBkV8uEXahpdszo9TK84Ht6nvUvqiWJCo8wpMeqfwbFD9LDYrkc9_qDwMXIMSWxFnYhD9zMx-kpeGP51VcKoNaQg18UR7GoDHhYp8J4KAGEhe0ZalTmDBfDmWz4s7gZYo4RrI3YkRiLOxvGdpfCwuDp40-6YHKFqV6ccIJiTGn_raq8Bi58E7pBvjW7RlNRp-iG4NxkynJ2VNQD7dHip-6Hfch7zhuAYBs0cWsqIM0kLDAb-3KmXUYPioeGR4KLd7J9IZZV23vLT41dkJ5jOYho4DU2sEuN2cwE7WwovURxrArAVLV6Bl8lEmJ6sbLIAQiVT1JejMCKiGfbFxKveEaybrTIJzO00mlJFXNFnu07yPdZ6acrgc9tQg-CvpkkNNQryDCFa_xnKiXyXYPtjE6OXrv1AFGvmaRisJ9ZND-Lsr_qm0wcN3r88rJnQxGVnn29IKpd5NKMV_lUi_WvVhaPwx4eHbeo1QGQfmRmJzAyv_r2D3jvMrnCpUW_On8pQwhcUef2VQW36j5nDEbAa7nWULM0nDBWPkrbGqHkZgbWXWD9znowvGPkmO7-0qcMsXAAi6pnF0bM2EPu1R5_YLOBun6ueiBIjoCi_vDxaV09pG0KLkAkG8Zsz3M8VoIEBpJPE-FnUUdTefRzAiq7ZtZOVz43qo-9l7gQFdn3z0REqf2bwPPdW9ADQ7S4l9kho9E-3AYD7y94Irews7FztEpn-5jDAQHghXuzaHO6-kaf05v1DzS67ik_CO1PGOgsmawfgsFL4JSxQa0k-mC00e_o3OJmwH9L4UsahVHBuBbRjzUJjqOT8M7BD1SDlNClaMI3hHm52DGfBnQAeAzt0SeetlhP10AuesEaU5NZ4SEpXA9pf4qCc4Bcy3Tw1yq4tZW27ldR7VN8y-9wQNpVOFoq4SJDtE6uchCK0xbHSZorjftOeTSMjv83UaXwY0pj6QStxtxoJGEHUnyOfMWvVnMd5nmj9SsBDm3rBSelTN5VmB35X4Oog5Aug1q4_JkqUHgWRn12gfmKAhA1t-3gSV6tSq960DuSoFae4_BIJPvBwVhFcdtHS9Mgn9T6bfdB1iBM2SZscPHGaPCqfGLt0lI5WXqA83UZQnk1IRijpc38Qb_LrG9ltwJzn8l1qSBfdA5FQIJniaGFWNdRhMWt6I11UDduiM3tICS6YdZr2wplU-4akJdnIH6xkVannD1q_urGa6pqHoHfyjJWo926e_LhR0Mbdru2jtMPLqTFvaAYXu6SkdEaIVJlQexr2PxJzkLYxsi1kQJ_GzAG38vJGobWa9OVHvfisceo04XD55Ebekho4XdIr_96VhpZ59hWG4Yz3woWtAmveNLZO4kiRfMDcGNgzvkq38D9orkBtISqO3O6yV_R6lTxt54bY-ZBhckVR-OUcf33WXZPcC-DXfseFiSD0U4u79bGbLayV5tCIV0vcs6M4KvBj4PnzXcaALAp690EzsUFhlJxGlcIdsB3xrbqoX-VqrR6ghkknmlgX8BZhxpbN8WBDKnI-Y3YVPZtvJ-0q1trSZGQ1ga2pvI1igJs-VsaeZd8wH847F29VaUtkESpFwkhXD4oOQ9ZaXqZTApnTD0ce1p0ozx1zVePtVQY7DFuV2_xEnt4Pe7KJihrlW2xKY6dAsYdsK4UA255HSeBjWX_z2lzx8KtxE4_t5GQ5WnGWrcpQIJLdd_p-2Fjp_qt2Gd_KlH65uURRve5rYFN1I04rc4OGpPVQ9H24uKB8hxLJqcQeK6z3nA-1lWp1FuuYSau9HDuvIClPGxpVTNjW8M5MNJdjD-6NY-Ud_Trhhl7WA3kPjJXcspjH7FqNJY8UkkJJzzzaEZOL2sm-em6CCngKC8envcnPgYtkHVODe-WuZD35YHnnEAnheob7SeE1DYD6IH9636t-2rqZI0LilzF0Nj90NMdeqj0wEZ1Ch3W8sSVVKuEdUmkRVV3QJ8gtSiPD-RvUTj4Fm7OW4nf45Judxi5jcqHzVbxKgg-EtQhzALY0e1ePSa9bZ8mChspScaO3R9jhODbi6vrqHBMuxAjxWVNrSv_RaY6oADAb2T3SZi3iiKYbfJ_B3qejLbvS2jWZnqEvT8w6xiX3gWkpQ-S734pQOGLm2Amx_rmY3bqhnTzCJ8NVSEln1CRHNlFcyVdvCY2-A5KTNBazNJL1QonhyYGjGYrH1HE5F5lFqWbxxjJYs-zx3gn-Sokmg4nALV5tXlbi2jX8US4rQKdP01oPh16RR9VE_JhplqzKzhM4pZgrS-AJAJ_pevOUYGoojqFo0CJauzZU69-oHgd6aYftUaT00n-Osjw_ZC_OL6LjZ-V94JmTH686TxZ26ZGD9UZ0YoWpVGwzAkN2AafaJDPpxgt8z717Le2Tp7qRjSlKQLK5BI1C1tMOgJJ_9WjfSLU2EX2mG-drpnyxb3TkpzeDUonvJYxXC4qNrgIbjmv-Mt4nHu3XTXsYWx6fMDHTQ1Fe1GXafZHYuFrp1VG1dDYY7iMU31EadR6KsQFB-00IBKCBTaPanukRyV9x6xoddD85N1d52Iee7Ly39eCbgGh_r1Sdakr66eGfDwE7DEC9ECfBWd9xnlEIU5aVdng-SFPctC3AARKpWjvk8F7bbKsluPj5lerpVO5rtKeTHujtK880tPKeVZiWQXzBZA5nRgcNym7XPHV1Y-cMusLK3ZlH2IiTxJ9Xissw-D3nFxs0OrLQObtPX6FW5YlfpoAKr0z8zj1Qfl_CCIjKYJ-RNfxy-GCH8SX3nv2dN0rBtTh8gVyRaVixB5M_GaUza3QE0v2TxXnLS7LiZjZ9CPxYk-gk3zsHonkCTw5XApWybGxl3E9SHRxNIBmVvQChpxTaEH0s33kGtyHQquQzLEfThg3NjIhRnnDaNrTvk0IdqBcTIs0E11IssvJMs5Nh9fpZ4nrMX8hX2AcLOBOaBg_lzCLeblHsJas0yJK3PQH81eoydo9pUnXs3h_o8Zbr2Njokubvag-xm0ZVXpKMApMeCV7Fm9IqfAbO-Klly2qAwpWJ0e40F6sd1Kb4r1etsyiIjC9GnlTCeP2-uTeg-8WbI2cgxwI6pkL3UxPryTeOJ3iMWwjwJc6rK9n6z679L3iSDAfMqvgunmOhPam5J10RyiNBxPV9XuzBa7qu8ZcuOFConvZCACQNuBgk7eU_QlNNGGcCL8QZTC4lLCzIueafNV4gIWIl4YHrFTX6KGRZ3BvjCXh2cMzDKDPWSdoWdocZsx6XoPeFN2vuD5XYXqqlnU9sqbQL6J0c764c5jUsadvuEL_nyT59fC1DHfJDdyuk3h-nX-q4W36PZfp9tWsi_gqBANRr_Lb5LRy2MxmlCm8aRQ3kCP_cSkbSZFmP9rjhxDBbXftsFzV_hoDKvqDjaVBEElVormiQVC5QBswqoaY4YZgPcNueNjAGl6mye2AlMtDpp-X0rW8yfFsFr7EOvuXnYiUBBuUx7L1Kdr89FOyIwX-KR28alL7QkzMHaxJ18JgFhl8xUy7goZ0aLHlsjNf06nz1A6cyVuXUqJWWSDhR2z56NNapqAP9XYkirSerdiSnSlFMPzu-_zvwKvyCJBSmmw_XLs1kcInXZT_46oT9QLaPxNuri74xdX4Fk6xgVbHuEaDnzyBbW7SvO9t1GhLhRhZanLghy1rWkRi88snEFinkm3EieA4FUQiH9pB_NZaVlj99eU6Szen3k2mqkBeMmt-T8zoCFT0mZn4YqVGqJv8j8S0lqda3TGDZrDG9DUkCtanZAtgxpR20o6A8ifHLnVmupdvh019k9TMLlba6Zlb9AbtRxj1YRu455e0P5iAYV3QD6EBWhPICfz4_dkGGymPAPJClVa48Glac6DxjOhyZ5vgQnc-weqHFJc_1pI_2IsUdVh0xtK18EthsumQkTZNCp4RVOfhzPu-lRGMf3dysOR52-VAxRYIJVORf6VNaXyKpR_5-CI2F_FxXKFRY65zAyp5GFDL5evSQNfS7S8eFZO0sTRf6lHt7le0kHWhhAKktHjg6Neikif1-ctlbD8484LKIN5Ev0VU30QqiNqHuZjDVd4Yt3yDoW3sD9MaOAYRnUGX2cJR0v1gvoJs4uZ_gpZh6YkfMzZvsGhLY4svPfwyDhOB9EFMI8JlMGW6-441GDaY7HoPN4iff5bcGryxXGm7ulrOAEYBy3YAm-wFamPd43n0q-jtyowy8K4nU6kazgz6MDKtlLk1PVwaTxH7cNj5sT6Dmy4Cad2m-JRqw3khieF-zTnbCWKE257cjNBhoOtcZT7q8Gr_KtyJEmBKCXqq7Vq4yds8pTcbKg4w1PnZ3UUYAOgPTgqIXfGic0k0ZFXxiDjl9CCm4lndYLaUiperYDYb9ggfoEdUzL-6GBuyYDseLWs_ngFim-xJRapoC8HAtPNmod0MAkimXHc4h4tVA96D1uaxx4cgyumANJ2tATZ-UmHJIYBPK7AexUh3Pz2h6UuCQo1jhQPlIPl_KzVheiqGNOF9vjR0rG7-6IqjIAHh5sa49kTycIz-ViM7AfBm8BklDPif8qNLsfYlJu8QQ5jwEJkKJpoF0oM3JTZ4MYrU0bF6mSdhUi6IFLi6e7K-mxzEwUvcK6qoP1_lhUTtvTqbwyu7VrTDWCcyPub6hw8aWuEn2SLPzaDZNJL8xm5KazJiZrXk5OrllRn_yw8C-nTnsKiFtpZS6IRErryWhbgEcNZ3ycUiqAcv4WYk9suqhRnybTei4jN8CIgsYF5x-R4dRSvTt9ayF2IIUYgW8BwzozNbzVb-fJ_sQ5tJvzDww_ivzncgLgasegCex7_lpCFmUIOVNPqBJSZWfbudzojCDHKn4pttbXibco1r8kP5Dc3Pkv_YCnt7TuIiKHhV9lI7EzWBTeetbiHzoi9P1hp21gBaTHgrlqc86Vy7Pe6tdAP8zHq_gokw7U59DiDMYZstC1-nBlo5qeWp4nx3ue5efWUl0bOZY5MlZ5xF3VmflBqrbAhS9TF1kiIRvOoOJQms91xyONYCTe7njOapq09pZyVV1rU1arM7rpHt6EaEi0Uhd9J--BLMNsbtjD7RsLvqRFn1t5h39_KJyqRq5zEzNsDghYoSuG9Zh687OOm04NyJeHp4rTkEtkSypsrwItUUgtxTf7Z--Ggmg4oen3O8HqbrbopctBmCSi4UVqJ0fnssKVS9cVGLLiRRygPWJA1Y-a0Ph1zikhbHd-8TA3o1vyxhGBrqqBAMdO04HPYx09T0Cz9kmr9JnR10KsGDtY8Keusl5TzrBxPq3gBBwRc0fjlzKA4omqzKpKkXtjqZfj3wN08nL88NfkkgiTgoT6QUwk_8gpOJ85cU9_nLQX1BqVSb2eAuz-zVC1xGDmbJRQa3WimbRUYknnDH0GQ4DYiuQHe1XIv2b3HyvCLYIF51-LMNc-sOk6otA3vydU_IzbjLDSG8Da6uEi0u8KnGt4lc8zk8ackb0bslNh_GBJlhxhqgNmYuovgw2F7Y3_DctEGghwHUuQbPCQ8CDacOqW3000QIjQ6C9SMwlIPNCprJh_eW1J-AuxrMHETCI0uAp5PIpvG4aQyv_vGxx64_0gGQeSnTkePPCfbhCgZ2rpwaauPCXQtwK094OnfpHUhGZ90jkyi5euZZXFBTh3pGwgTk1V342tU-S7-J73-lJYnbOWvLvxjVnMfxXhzmHBQiGBB2TCIfD2nOAukY_O5gT64PDBJvTG-8POyu3wZjp7DZH4dbF3wGEIv7UtZABRlurbhaJDO0D2JNtPT_8ndP0lgBpnXHujxxL6RCJ95BnTowEW7JQwWvyQWeZEOTAtfIbCckK2OZm35nf_gyl_AYc461B6b0l8M7nW1glI7DyyoE9bvqcHDt5pe2U7py_ngqEGRZZtPBEWUZjb71YzXl8UL292qmx1uQ29nxnY4Ym4IoQWS8H8EEEVxn1hRlmCzI8pAtdDqBpB8gHLnhaQo-Cz0zBm8jRwM7x7VfJc5vZnRGPpNYiEMnAzfjkbLLKoPi6F6S6mNUg7SiyAtq6XImrF91Pib5L1JBuMhek15sOR3f24cUBqYThJzgA6sW4csqhDDRsD0xsDzRKT8PW8FV5I5swQULjVUFh-AN0R1UAujDKmML7DMCQ2tHfK35FKa6aaIBoqqQhINDW4zUF-m-H4nleJjIW82qoldpwyUU_7bblProCe_SBn5IZhMBs4KZOz6_OXFytXwP-cJ6cRLFhBPE3fqrYT0iIFAtU7Jp4oYxqrTLUVq7mh25pft9w_cBI0HbobtjG2tGSGs8R7YIe8EDGSdLL9nvHAgFAAxyys2eJFzT1atdyuvksUSHYCuk61GEkLfCS1F7-An-TbA5tCyY8lLQnOwLjIXUeAKSNsaRvu1Iuili_AV1kltTtmh5Pp0wEX2PaMmpx9NTRfGjoJFe6PAkU3JRiYPk8EUymkYteLVoX2GtgE4wky6mg9QLh7eX1HULXWlEmjOnn92V6o8-egxmaT0byCzpo11zHSunIApJVdS3CUkx84OmUhyMVNxXKXyau9_MFgC-S1ACUyFvNZq9enW_Pjwz90uTXiwfRwKhogtq15ld1Wo1EwzgfvtZVaPRbrLUD_tgaWd6JTJt9HiKv9gOjVrdhpGyyhKx2AAiQPTiaU304hLbFd1b-cncq26N0t_EKnS0in_LYcHoRb7lCncavWpU4bXQDLd-yBa2lBV6Tb3qo0fRXlvh5Q799owagzhBypICgnjRR05VHQQukpWuCF-KUsHFrYIHE-zrZfEZ_qnYKJeVEfU1mSciQB5HNBeUHiOQVjCdqIm66BL_dCkzQZlU8NlS_iyDQz2CQc8mWZoXxTGuCfNG46odLLCIKZcFYeYPr_FFE3n0H0yYpDudklNC5-A1JEG47L_7Iy82xgBpBLHNPc7LXs0mcbAmz0lyDnvfRdDvRaPaFGDAvwazYr9f1FE6YkxvKYc6e1DgbqvcRIbUdqIggya2O5JiFTGiM9SCc73sjXAUX0AfySA_23gxfo9_V3C-VSxbhEl7IQ9KOVO1RXnLKjhyNAh02kfWD03DHA2xxfz7WN-fysfa-KreV6ZmHKM1joOd0Uy1yyxKIOaIAHIW4GVrjud1XuUP1zR1ThOUCXMHM-atI6lP7vFxt8LRZHyuF25UsNlthfiJ_KmpUJuLWP-_QewiwkQvf6qEDSIwdoq3af7dwa99JaEe-VBbNWVre44u5yGj2hYyfVVKzvIGTaMnjICGttZ-h_364_uedHhFPZxVplBRJj3_zCwpBNOc2tQBeFfhRA_nICNufOZoq9jsmoEo2j6M1qFY_MYdA0ZN9SiD3ZUTG-46tNK1INCBRYrzrCSq9NwC5FznSurkKB0p_ojNmCipi992Vt3KYOT9SYxGD_WV81wLNnd_685ejiIZKYS7NaqeFBNlKhYXF5_KaFtnLf-ap_MLpac1NyzY97PLMRzbtYO0EX3R5LuJwWFyAfJFKV4x-46CvL0xS8PDJprmEOkDl9D0Iq5wyERa9LhLA00_zIGhQWXGTPHmGCmefAc_XbxGsj1W9jer1oQ0tZrAYx9uxEJ5HruGtPtFSFd1L5How8uzxp1_UGaNj8oyi7DMT2T8jSoSSELUa5DhHxfXdLbtcjci6C5Gg2gxY8s0WrcPkIEyvRc_BNCTqyiHvY2oDi2P8Nnm6CeFVfIEWBfZA6qLyatgcl5LHIju8LolxZMZbwyWvPl0yV7tdVGDWWIR3QzRbRTeuqrOYPM8NgNaQX9XT0fd0FKkKnWwHAdJmZMhWrr_JHF1E7a3ryzwY5otdQ1STj5nUH3T3W2RIK17MMxeOEVDda3jiFo_9egwcIjDz4wIXK0IS4pwO9z8suMFIt6fpDOMMTFtnvgvw3u1IGWLfPlfdw3ruGBaBfqb71LbdrmyBOlqj73n6146Kntd2YiRl0Aal7rgondqZMH52VfaG7ODLCQzsgbeESf0ihJLFoCuTUSY0oAH1CZfylGE1FT8_XLRR4SvjCrdy_V3xzMUnBF6xxU2JOb8VxsETr2BpU-3A_fWyE0YSmxivWxgzopYCsTAyIZX3qgnPdqRtdB4V8OHewqGtI5dwCUkzQnPq7Sj8coQYKx7nayO6zo1_UZ04YgT233FCFTXEzSydPqaJlZcfQHLVGvWECf0jJRgb7bvi8lDDA-oz34VeZIFd4d17PJDY2e8krj0Q9y617Ozp1uTA1lv7VsReURShRfFmpkeXVEPGw0v9TDQ7Pkn-Yaq1gczQYy-8xBDzrABToq6ZaevoTwAzfurhZ27aBkEuT2SB-xR8jnpNNHLfpd4kRO1t6zh4qNn4cQdOkoiVXXChQzDKUzRnjt-lUrhAb3gc7Dl4kQ22vd2EXBZm-eOUWHgw5JyURVnJVBXugrxbpaWOKPQlvOty7p0md0MMODcCf5FGPTbiTTo5CIykvNbH1-MpAR-Rj-tC6scADCwAZVVAZmwCRQ47dfsM2_4bY7sd1tvMJ41bWWrkaev4ikAIZj0ht1B84R2-ENExtzAXhb8V-4TnIkNos0qk9BDoy1GjaSQSF_HBgfcJxRu4yNk1iXdzxhE3x3oDok1tT4ewdWvCs3pEBnZaqcceSrffqZc49hkNM2CWusV2eMC4m-ZLmoaonCB39UwDwKLHAfYNIPdqimuaTQescUaeW1j2ufgQAHlJ07kOf4r-tGpnqdbgT9tH1AVh6qICQ1D9WJ-h45v6NwaY4Bxj3kYIRWc8bLIKjBRj2EPQpcqkMF1X2VsSKNOhBemT0RaXs06-5fBPaYR4UXTFlVaAFVQIKwus6AvYOl7P8KMKZyrtgku1TPIItZkq0biz0D8yjFbhDf8FRatAAdivcES-bJGMYjrZmqEIKws8bkJ6nnN2ClX7-afQl9IcaCgoWZNG11dsqCM9pzLHrUuLudRyBhuybj5gNfaneFkbAZEBRLOKGWSs-YdEQNVtkvGhVVYApiO9zxVCmpp0SPpghwX3SPjb4AwO8pbBPVIswfvLUjQL2yioTorKkZhIry9rr0rk9Rf-sXPlphPIkuSKn-P3KwDB9Tn9KgsPSW38V4M3B49WQpZgL1IesXdpr-ycx59_ygL4Vm944Ybh9AlUE5K4vSyQCTwh9TO4H_Ni1wCUjYsAuh8sFX9G8z3ncw64beRuuAw9NyhLxXq7MwNcY5mZgx15koBeC9T71tqKCsPAxxi3SsKM3TsByXYRDZ8Tr0U8qURjcB8VZONFrvCtGIM9ifJ7wotsDW7eLB4tkzhDQqTMxesYZIi37r5RnJKRdetaEZ4YIITJea72NwCX2zpDYK5St_fbLZcq989irK8eJqrrTX1cPcBuahHHbO6MddlnUzz0A1wBxYc_jCqjxSENAj9rFmC1fyqzuDY8tTMDa_FXSBRVDu41OZzv9V0tVxTmbTj3A2_5uLISx0VVhDjEfkeU0vijzkNb4C3ahxTy3NWq3RpsxjNhYSNocs44y8ka1iuVRTaTRII4J6JtyzvBpNFoc_iD_N0VaBxBXZW_LN80035aHSA07TKiwP2lWqilc0NzBcrNXmjnI5Rmy6nsFih2Go1eQs3Ar6zNqvfL2GXJk4nOUL32ukRfL_o5oUUdN9YA0kGO6BFa1dLaNNIOuGxG1cSB0DBCz6EDCkzfYb5VJ6HLz9f9QQE1AZa2MVF3aekkBNMwRbTwZa8eiflT7BAhMmV_I53olUFwD9-6zgFZvz3-k4-ftVXzGl_oD0NO7eqiG_AL0Uq1dUYRMxrT-ZEREm3X4dh0HtxStjVaDhx_ISdab__2xNanW1crSBWAMUqac9JFGSdJhp0COXRzif2VtmB1mwz_SBjELZvB0GCq9OAbthkhuUBKeBy4HWBwwZ_Y_wSqK_Az45QdiogwC1hl9f1m2kaDvBPD9cMKIqpx7eK9x_JSVYNFG1Dbslza2xYA4BtuymCT0rP4JQWGugVUopy7ZH6-agsssUxVIVdsl6RiJJwiX2-mtPbp9hv6NKanzQgLDHNC_UR8Kqt0X2kNGwp5tWKltCnvOgUxuRPdl0fyXbTrl8SC4kVMjYRlZHTIG20R3eVqRFObUQ4tDbQGR3YNT0KWefaqY1MrWrzkwOUbKCkQ0L-sQO7UztmK05oZEiNzkNzKuvSraDdWkB6t-V0bkEPQiXnPZ0K6ou8eSyE0sXg-id5tN_DShEML4RSp0a8h4BWgR3wyt4o01-ce8yYHH4ZHQceWaTVCWdVd0LtUPdSnGCRXZ8MDO71XFP96TibTUzYULJqB-b65w2yldDh-7gdyzXr4CUvb7gqA22yow_jBHhYzQszjB01hC1odGaDio5UqaCiFoD5TjlDJvjD-RDg99qvAKJkxywM55zTsNC6chqzW_3xLwex95m3XP3TjFbGDv4krrombfssZGbK_TWsdJj4VDrhJY1Scns9zEmSrlJl2iCUq9XtahiOdS1p8LVvs1xtAWCmU_1ALFE-xj8i15NUjjPFzOBsiy3zcprqXAsiwJQVYm2StMIGxd366CR7JOcYDE6MrZ3ue044wEIKcDlqswEjfT3-yRHXrfNvV0-LXGLRuB3FgqISMhjhehqTTBlGNyYcayBBvDfrzVrSCosZKD3I4yRFs0ZjlF3Ra3CNmqHkHFLDaWj3w78SkpXTlPwWdZI4yFZ6kU2HlypaUWOrik3y3D4b9gCyQ9hFhLPv0VprCuPIypNcwG9Biu88PZxAgHfgXUMX4mEphzRN5JNPy3ilAkLmKnGvbEZ6KvswkU5RE9SRSkZHnve9NLRX6YMqBayyVj3eYeC44RZsoCZMNBhVWrvBLsVUJ2ZA-vSYqtgKyeZt5hTBbT5qgX2hQYuj6qaj3QlERgKgQJlSuZpkc8OB6ELGZbi5bUFmvLy8nUUQyB5kUHOkPQjMAnaTO7QXChxHa3pDKhw9qvhsau-aylypwYkQcKK4cTM3SxNzAKXb9NoGoS4gdFsbx56OPnWpqVLk2IGSVArE6C1Zk2lksfriESN6pw6kpo9OmSR9mVjcqUC5VHAsQua27q47rXYlYb-4BFLdOGmH-XH3QQ-Y5y1vmCOPXgtLt6cTvKqBEOLyR0cPzWKX6znpI8BvPYxtVwjVVl6nim-ZrBnBvJgYTwTygejKWlp___AtBt3RbHJGRrj1A8MHX-G1-vBSlLJuswq0UJDus5MlydcZMge4El81_tZ9E7tCuZ3Cr4UPyPhCdt8kEUIfzaiedkWcDT5LXc_MLwbu_Yw2l4EdQZUGv3VdK-LjWmYKewPCgqMrToZ272nbkKYZIcfeXcg_5Q8WOq8vnK3_UcwgkcsIBhlDXvCBM9ZnMDRaO3oh3UTykQXS2K_JVAo67GT5KdFVlUXVDlCUUtygK_M01VMP7sADMi8dbO98nmAFfdTd8dEOLSvrkqGIFP5l-sMcFCYj5slA3CVoPr9x-e-d5WTzmL30yGcokjcUnbSr74VR3XA-mIC5UKkgIVjcjwqjZx8zLFUZGBD7Qi3tt02FC6xrzGY2flApRxK_BznmvGO3JS-1nWUfyiHN4jPJYIYh-SzSUHv1zkFpUePRiSj8X_L5nxbXZf0PDkUQvVCNV4_dwB_iqa9GQVaQfd4P5jWhZ7cmEPHh9AaRnCLh4s7BheaC_V3CTXpSoVxWD5uOnz5J9D4Qd4viy31sgSB2ywoIop1A0iA3wNVSO85fad6_OerGlr75Iz8aQPSZUREn6XJnY7uSfGre23tdh7DM9-5wJ5FOLy7LCwz5hl0CcV3eIwfCSl5lkddMZHffnSdL5U6osjbBdUgwav9mzUeJlDn6wwl1avcYxEExmHmEFZm1WumaeSnHE-akmbP98D-OX0F-Dhy5Mvf-tAPf1xUbY7nms5UMV5VQaXngml9-YsL_RISLnr1KlBd00iYDdcMPuRDSZo15mF6WtfJRuEYk9U4RWo0Sh8ec53bf6HUuv48z0pC5pCy-AgFdVaPfbQZl8cnADJMUu9Q4g3Vl7d2WNquQEvwBNt5BqC_LXktObI2r0vxm7i1yLuVwLwANKI0zNMHNyAr0wM2f0pVutX0-vVDUHy9qyvb6duvkaGcd2vUikBnAWeQ44-w4738eWGT9gj3t2__SVgmFoVaCVyEAY08n1AvchnjaK7c43wIohO10Mq3LeR4gVAroW05kws9eD1aILuBpjWj6bbmTiYodUbZPklxtveTHFBsnGOlYLqcTC-iH1mD4TD_76p22_Z77Q9VjeaRc0faO1mOoNVzzsXdqBwfQGAT6vW_DmltFozYueteh7ucI1G1_MJW9BeP7sSH0ezCA7Y1KmHt20T54bdg63l9t_NvNTSr2PSniQYvOgrnQ7qpErbeCFClK2aAVb_LXM75FOSXo3GCR1sYpkUsvQQn9ZV0z5WFH9jTa7eNi3S2XbO_xvB4zLVP3iOZM-LvyGKlHRiZAdari1MgQE3aXUZJNLLN5m24HJrKwcls48mRKpmnwgSJX1xFAw_Zbx186Ig3-Z-cpK4maF6qjqTnw_Gg1zry6a4WgIxYaz27DDRwxhet7kJ6OKDgPjBSs2s6iiHNcf16OhUaqaQCcZmte-_FFotNk-zKlcz6XEmyH64WhBTLXLQUvDECPj7S36eqSOY1t8o2tHfpKlmwjSvmIN800L6QDjOYgwv6SyzJZIzM0Hh2fiD73Y1vx2mEZkD-ALgvKt4xtcy9Dy6ON-I0UoxiNPQQl8FDQqcvpSlYmWqoin8NQ4gF6dlhNcuim4-hKFPchrjNDvSOPCT2pTtXjlM0EacY-J0KHnpl9vMHkaDDnXO0PPlLcMt54H_IwaToOCm0Hwe5UnuCLH3Ou45lKT8jcncmcZUSPDUFA8PSWZ5NPJxz2gBERDDtwb2CoIiX2hQMWRoihwl1KvJpmFZYr2S668I4xJ4WdEIbss09E9Kr3Lkslh_uMOdMiEhX_wI6CLrUuSk_raq0Olz_ma13I62C_q84-OB2PicvTV4twuYSYk4EWd_C89LeZZMDl9HMOopliEqUVRRg7SCMalGuQ5jBg2KTcBa2uIqMQTpb3yo-06RWFjSlcILwZY-Cc_cKhil14LtvwLN_rGOMAAJJ9j_yw1U9OaPEaTxqVJ60D2X0Ftka0RPLeyO_HwJZdxlYQEvwLG7xiOUcMXCMiDsMQm0P37xvuubK44CHUlyqQ4putC3H0UkkJMdIXGG5uQNXrkwU500a4AgGeRDHVg9oiLWFemJqydN4yj0HAST7HdNmhNSEgULDLFQVtBR0eu5WezAkhSLwepNR9YGMgUDg71eFJdSicABUeiaVhKwY8JI280Iko93l0YlxCDzaH0yVHV8QQBaeS8AxynyZkGp1H5FaRgUqTCwFiio9Bu3H9pZCX_QenvtyrISkPivAbfi4GHsw_6Fx44Hh3o1-Z5Q5Lx6M5sC7MkgNPfFcO0ZE6WEUYlnHtkKgKoflL1Zocq6j2RZ23tCyIi2dBxXhxUriCkl5nJBFC-cVfZSxY3xT1DUh3RbHd139LRiVKzPpHSMcWPlc1SkuKt2kBliSYDXnfE1RBtFyNX8lWUVaRWct6dD4PC2XLFTJ7Fi-CMEMpfwRaRYmScaAkBhZMdoUgKoCwM5JfpnkRgqguDkT1kyaLKGu9L5UNiuSFMaMcLwCDe2PDWVeCRhiAFUl8orXhjzJJdp8gWj64oBFiWF1e8L1VA1JiQKXOxt2wQl32PKI-sNUylJxIpi0Xa49LjBNC1pNBTHUyPXT00KirBB-0oS26feeHb48ORVPyykKbIQMfIimLKXHtc4rgeIYlyeORvxESj5aOK7pWwnnr3EjqXwDvBgV4z9MeI2VeDPUjXZ1gdX9lDT9XyV0H8GIl6KkiVPCI70oqvaDF6K_ZWs8uxhVkvtAu6p5HO4XN6KHGQHWjQxKr1k60wrPojpmmulZNYyINGDzPDS7MCwZ5cGInVFl_5YFyzIQXGlfXOJl8G0vA4KIc3AFLu3bmSDrD0UNTu3IHHeOzrP4l0PGEKm-8DtQfVJq7a0KH6IUo-RjhLhXchIrmEADPg7T4cOymYawcp20pygqd18eA2_d2SreN7-O48AhVwofiPWokoYEGeJeR1MECYpHcCD2zsQqVbTRiGxCvAw-VfZUIc4PVTOSUb-H5rVBY-LtaQcRZAWgVbwwMwRCSGeXNl5oPU8roll3uSdD8bYpfTwQ1Yaczpqwvb5OtUDWA1qKqpUZtCs5NhR3dUDWT-2OUo06hDplF90SzD_twg2vndZw-2QZt2stxOBY7fcx60_VZyA4K4-KYljEfxQV4ViJSzWGYlGNsDiqfLceLdh-BbcDJ-bLjypSMDZZ-CXEFUFS46ejzmpH9D8JaTgW5eUdWgHFwlOFtokAVmB_x2nfgmpFllp2wvUUYcRqTaxo-oHViDifuKr-fAxH8HSZUG-JuGhGZ7K3UdS8HqxK5zF4mE8-DZOZSBqGpOZrOttNxjcI6jdI3dQvIyKpejJSMRbxyhg1XIMCJvy3bMHuqzqAcnYcrthCRMuUXQ-hgzt4uuZcU3Ad-5gOZLIdIvq6fRVbNLeQ1Gpg2RTusqvovhLEvvmUV8zQrKaXkdkBdYM3wE8saO4Ac56-hR-Buaw7an4KwEBKlQZwr4DmGAVBnzgz8EZUxy3bZN0d6yOk815-_X6Sy3yMV-dKquQBWfu2NhoF0FA44WexRbcS1XWNq5-SByA3iXHG9ANRVIiC6xvPRQHhUYAkw5BtRZMooJvalGHANR3Avvg2zYTCgG4TfaES3Wlt-Jw6tzTj5JHVJTc63-M8Ebyt-VGSlMWm31_AgR3Bwtyp7EPLhPN6OMbyDF82l5gMRq3VHvevIPIFPQ25ut3V4AAIgmSqbrYkGZSWq4Oj7H0QUd1hEfxtTsOFGPj3LcjrVr8EXLCEGsIN_46mP0kJypRCbwSpL5e9kUE-hTlANw4glpcizjp8EmXyLqEdbtbxPBMJ49XsupzaKUQ4UkGV4swBSpaZvFOuhTH1H3InDZsU_o1w4fYqgaFjYqz2VztKDhE9X7DOuU1Unf6SLmNDvx42QoFPpJti8EppyCKSbdnVkIezmzyHcNxgWUUTjx0_fhhzpsmGwBaJRTvAom3TgWy0Y7lQtUA87REatoaX6PDnviKQ2RB3q0KASmNWeGWUn8ipl8d9pXFm3LwzoG7QEtYn9OhytgRlrWbpWI-5FMIzs-OhRSt5zHtpmlYNXVlmNf9DRxW6YSxorXZ4tw9fMmephVrAedziumP4g_OWqN2EgTq3tLzGKQit86ZdTSnFm4SBCBAJ22g5loFSVVT8-te7XwwXpybOfYvmnuKeov9Q7Qt3JVU6CokmHmV8LKgwc98eAMih7A9FvzmhupKSxEaLxpih5S0sK2O_phIfGTggiujg16mx7nCQJw1flpoPE3qYvCamuAsEQo9WUgR3B30f-TCUIX6IQhb99NSUtQ3qlbBbK7lrSRCMGrVExoxKkG_ZVXaLJf0b24611Fa3H0GxsI4TWyVF_leeAZ2BUc17HMQKle9Bi_0TExZgs4RCEwn2FWscczPmOqgPPZxYiUbE6kbQLTCBPyZMGpiu12PI8RTBOyNbHllE6Uxp5I0QDrnKW3hi_-jQg2-r6CgQt_h4BxQENqaNY1YPjI4d0wqp9uhanhfJb-zJZZ-3N61qSh_oJ_kU_qtCd8v4Yd-k2wOgNL177huZQIzVOvkb519fHoV3p6S-pQAlpMdMT8nRZP858HdUcl2DOwyugGeiYem2TlKZMltKiKlXXphzRi5yowUd6P9OP316_sCB85MJBRIsOQiZmMrlkrzJzUo4TrpOTEBZQwnaDObv7gpOCPWk6_l4Xg9a5bmRnG743Q14p__9cAAW7UvgrbF5gFpW98wq8DetchEAGWQAwGGLl2s84-d3M9Zcxwec-gBeJ43ml6vywCZgKo-UgLVOGuEV0x-eQLyeqTBnThl2uKDD-HrGJvCjXNjv1mks81i4xg4gQ_1U55osWhyyHSsvaCL87HDNs2ze7HivcXNZpfX-Z_GoT8OACFWQFwE9oMEajiaQE5N1tW3cGUg9t571BvkOSsiUSFOkdPExbOKwraSLNup1fLRYb9rNYAeJeG5FSOv7Hc3G61re2Bgluf0RdLKYtSj6Kn0htzZrgy5_UQQPZyWMbuKZdhJQPDXiXYQq0KYSvCLAYZiuuLAVjgDKw6oPW6gGLcCTnFtqtw9cy3EtTXewywC0BCPIaqq8bE7Js3n7owmJJSYESGd2rzezJsoheZww3J-9JgskeDAFLJLSzWZlO2bM-4_5PzQYa_a9fK32JYISwFtU8_d3ImB1GjxW-ueQfn8Da5LENMDD91cb2l6PNHdfE8z3ysqkFNs_sPy5udn2YN7aJCpMoj9_nBj99zXKTlsodnD2AG8nVVXoFYDfVqxF1AX8mnlkpKjzNFIWYm6W_bVcAeD0VpLcYYeeRbizEKrbEhNm0_cNY6Tc7vMG6F_SAxe_ne-Uo_0zEmHs1xEbY4MeAqkzoFnyHO-rMnqLLcT66-8RJw3osC0EskbLPGhdeZ7pMX5y7EGr0nyHjmq2-QV7gakGV_CFg08EcQwTs1F4dbsQkENWnF6e8Vi3HJuNM2tomC8Mh1vxcBOs6kSMtV-65Vh7rlAxhMWaaiQkEqXKHUt0mzzRn5umbeZneNfXTBPj9bLUt_VUrvjmLBp4SguRH-5CGAJ7X6cbm1nAicsxVOZh-R93Zhc_AjpKcPil63120XsmMfd_iOIzCOwIZH1H5GHD4T_fQxSXQVV-3XpVIYVj1I0-3B2fJ_ex77JdSkCOTXhfU4hS9mJRguJmRAEH44ZHsSlGJ6evGRyiman8OA9CixclF2-EmJEPK1LJpj65GQd_FiRhDBNS66o0XP9SPwGopwS-3d5NPS0H4zufpNUFoyl6Y0z4ztuVNul0j-HPNiUN-o5VyZ4XT6kRkFvO6aZ7x83FT9d-oUf3GKloKIFJe30VvfwFHvgXPjGGAg5PR_szwK6zDJ7Vqavalbap19PzcWDSi6nh1iD1Z6gmF8S-7g1Tpc3uCpOz2HTZogzloLejKvVDF7cCBGuk89A08qcegpEiOPY_0t2ogCt2_5cPS4ModT53uPkGhibyv8bZ1zr6e8AdNilhfqN_SJeYfB9vxqMYxMaIab_d79n0b55En6v-IgSk-UryGdQfAWAw5Wi2WQAaSz1yTEh3sgcFv3klFCTRuHaikteXY_cGyZ4yb4BMAbMA7jZVWuVZdYVB3vz0TsAy2mQ4quQ7zLtljNSvkmx-tqLVf3eSsa7R1DWAA09JNEb5nNMG3rT43Vva226_AcJVChf4Ts9T9_GJnRegwqiA5BNAoEYlSci1KCrApIot8Z1-ACDC-APtzJNotuBCctvjTzeAl6QtAhKpU4zqP8qk32WQ4zqqtcD91YkM_7EDCMzDDEW5iCLnZbUWNhnQpbf43rCDKYZW2sJJ2swKQexPWGmN2t98mZTJ9thzH9nCucXPnUwkgMBmWPzwcvD3dp574RwVGLi5ucU2UZ5DgD4sLLNh2DfqyfTHMc3tIu-3NiIR3QTqanCcsYpYXciL087MXtCgdWFFrLLs9iiMlkmZcZRwdql82cIS261N2ijvaMM6FYcJa1Fvf9UojFKpheuja6C80N12qOFayore95vHL20glro035Vdg1IizJBlzjSm_kbFEzLGrb435h8jbyWwni-QYp1hvPbBZFYq8uzG-aGI-Pg6K-CJtbhhp15xFaN19i135sgB4yLbLIobA9YmCFEKgw9i13DqHteEiaa4xLzfNJ0Tlhvt9KBB0OgW2w88jFxDTOu2b6xreBbOKh1DT4dy2gyQFknmu-b0M8KwJc4UwtAZzYSx-KbNL4pqdexICQeC9-diTUgLAGVFR8dJCbPm1mg0ctl2vrB1shwzvylhZ515iV8VzEJEWJb8QuVLmnYyvOjBdwrwwQ34XnQdSEQOgxx4t_PO6KoDxv4M6XgUY-aeUKJbiezYW1pR8zv1QbX7g6gRpf_UMkScjKL5SalbbbvY1DtYH6WuplqAwBIHPx5RW-N1hjwWrQvjnyiVxoB08GgGZN3pEs7DRp3HQVBNK2D6IH6iFmArg_QKf7DIxdhJPNMvh5Jl-n_csjCoYOjAtq-lxZuzMfSAZW3d5rN1zADmNTKVW5WteVGZhXuEmPwrPCGGK1f9MsQvY0N3g9CghjrDvWGtu9LxqHuqmfl8-aerIN2g1iU76-KvJs-l5IOR7fgjuL5Et7T_STA0M3yqQ4Udo90K-MRnf6E4dqjcXW7Ux2BCG_R4Y6QibGhjaqWHICB-3OoBUowLJ_j18heIRRld5-qcVtqn7lBgFGT4XJHlSIrtpdw5b_eserzGQfw2uesMv25NlMGTZXURin0Go6sopItruZ92UnqkWjVLlpGMod4KIh1BgXH3kPsfQuzatKboS-runbmsisrrvelCY9uvcwP1A4ITvHKhtoOSNegEvobAKNXya8qgIWHl-oy4MFLEmOYpVHeMFly9ZkQWbXGszrxWqpId5NfuzylC2ZMLzpeDtZXau3e9CMWeCr8H-1mbNyPwLajyJJLOzH4I0GvubJhfFE07UoTqxooARfYIv6LZBnmTl9fmpiZn2UKrEq6-Tk32cd3ezQjknZ04IihQz1ZSiv6_7InaHuO2ltpZx1gZ1EBkyG9RfB0Tn2wR0zseCPJqoOJErE7tDnM5hhYGhm7N6ZdkVR2CpflVFURbvN33Gxmg5qk3s0wUtIZV9_Cjb3vhIUgIrwYBxGaEGPHNrEfbVbD2kd0S-z7Uu2ZTzd9LHLJy6oFqim2tOhTnOtFGRp9rIQrixvU1x4uifOwEvZYmP7xMEdKTQKFwYSrii20c4Sj54jt_UKa8wx0kZhENoE_Bp_9ECk7qbzAdksjHzvDqRZ83alwmaVLyoW4x50KCLVUQzxsZrRSxnF0FrhD2o54BNtm43_fUfL8SZRdx7koYMVZEC50xx8C3Bj8i09gtQf2CF1J71Gsi3I85k3C23JKknlDNCmMw5Sf16jy305btKBPf-hHYI_b16KAqnseue3xkel-4TaanIjG_LlbhZN-bynXUelVt9fBjgJhMn6phIUhOA0BTMrhVo6RgAVVbLmeVwJ3FdjO0ENq4omImAHwrNIbg4piGMITxVf9jJYkqjfYiI5fQ6NcItSGX402CeE7zRaIoee2NZmx-ydjvjY2d99Jlly4SLtDJyTCdlMEbXl5x4Pwt1bCPwAbz26TMcXLo8Xx34MvztNPTSoX_1urGWLRN8yAf3SgmzfFhx_qXLPIE8C0dL5orIZJIRzjIlBAFlBAx83Y7MA68CvYvwh2FJgJ7d4jGY0TwL1OSlH3knfwDZsLd0I-SNRzNHPOyHB4W-2n0apFrhEk9QjH38aI-ZU9ocJACoN-MMRT3nRgcO8DOIZJ7M24FtRgedGHVBFuw9rAmq4HlGllSiUbeeW4zJ157tv0ews5WmM4aslHTl0C2pOD6zDj6hhRjCe4euN3dQVN5Q0pvRj9yKrDnUHSewGTHw3DYV0qY_MdvTyJiwDjirsxwcKuLgA_FsaCvJH5BmJR1nz7T4LCY4iDen6BIbjJTYKEXb4w-E90aJtbtPcWW7w6H7j7dFzh0Q4OJaUelwrW3ks4M2tHw3-e8K_qv3wQ344A_Y09hPJ_BVFyQzvAfvh6fNg8jKCaKGeALiFXm5rm43SVR8cKGv3GKZMksENrtrl4sN20ZjaIVK1kLxV-2V9k1mJDxGOM1pVOMLlmGtzAISqGWHJ6e_AokkpbJx0099IaiCUoCTaKZoKqFBq-oLgpOGOAIa3zuom_ZbrQhj2NqInHtKghFm_UAZitkk7cCMiTdpDX9Thp2VbL348bDUR5ubTlQkaHqI1MF2bBcbInzMH90DyiKhTUV4QrOEuI9e68bhaPYMXJufZ0_ZmVofyiIioT5SI-OHOC2jU6mlZVVcbwIUMX6ivboScf4n_4X95My0rNhNxEW_I3nAe3RPl8qpLpkK5777_tsPKYa5Z0Pb6CdabZjihgBQf9gJpapLqf1ki5FsTlzQRg9E6nuBTE5UT65hORLbOdeSphJ-LNskhUfqjVo2ndnhZmVuIfh6rfg2Eh2pEJxexlro-xgaARD_InPlcj5pYXOm5Do33TXVJ08f9uF1K2_Fj87CjiI4WpQ7brAL5vWsfy6PHq6cprs2ewrS0Qw3SGiy82IyngP9hdXisKCHr_291kPAlathN5i9cMJ4HdM4JauiwjA7f3dsrn1Njfd1zyMNPPKyulShqPNWTnQ4eNP9e_niKZLJnx0RcPfowMzrozWBUFF2qD6LuQQDJdzYcq83eq75lt_fDWoVgOZdQ7axhjDECqHLvarlwvoCW5xhJLOsEOfnnjKgtxTjekQsF57bH6IDOZj_ycTrqxY9TG9WeaefToqwvqtoXmJClrWGdTnd8KiWB27IyYnzMqMHDTk_719nTdIH3moOen0OukF36gqFpUBtNNzadGj_WnWe0yBgZM2pQk-6NdYyvglNyiwcP_dh4SR3-VBvmG1bkfA01XDFwBI15zM6Frb2WCSKOG_3D6XBI3LcOH2TcFtXuFkIArxkl6XOs52jfzDCpytPTrbzx6GMEIQJ8NaYu8Q6ipuK9dwkQmakmucLv8ip99WE4BXIaPPrAMvdTJGCgaU05rid6USkeqPJ5Do7TYLwAp6uU55k_RBJFdAIeuhq1ktzGg4gCJYAst-tM4e-m4CogsVKLz8TXdgRzjnjonJ-Ytw6sFCFXfhQtU4LpYG-l3ZhpUTc7hnqFK30PKT-M8NYdv5xgw48sK4NvOWXpB9BW4y--WxBq_lYsnclxmFHgThUxGNwL23nl4XWAipp8Q93s1zUVcGn5w0udh4xLJbsFpBqOdHrBCdm2c_lsUciHuk2YYv0WIEJp8HsmNz4LMayPhkWMCzWQbMpVYtEhb-bAgi1i9lHKMq8H5FnGcH1UWMRcKWUQhuOAnVDmuTV2c6Z9kBfPAApb_2XzSTbS0p_7s2mDmgRwEofBkvpltu7Kae5q1pciBKlCYFNpFjCPhsi-NgI7G-KBTWCGNWUjeXGm42B2vwxXXySofcNroAILuwxeNymX_Cmn53ZwIakIzWPUlwXmMAiPZcNravdqO8I8C0wJFKouiwVATurn7O6elSFturrMSwtfdsK0I0VCTtE-aMJJr49dxRkAJ6YXML-O7PFGCZYMpkekFLiLVTwyJ5etV2WThun1jmbd8dMcfsLiUK5WJ7AeCYrmaS039Y-qFB0chA9aZtfkNb2MCzcpLDncQ-wMmcJu5SwGj76lNUbcTMl4ajKwcxov5t3fTijrD_f_XNQRCWO4ubHM6bLCs1PicdCC8L4CPWztkbEFRDySYaJ8mfxExSiX8XaaKqXTlZoXRMaptIjFHUoxcIa39qtHg7FL1z0jRGscG71nNzDo_vtijijV2hS8mEt4Y1YCCQoH4TL5MfN4vcdKQe0Ll9cdd3acjETGDRNXmVzg84zsA1mj7sqEAIal_eBg1P5aTfmeM-Tfz-lsYEYrrpNODvvsVabkzYAYYK27TlO_UaQzLYJMHVsTc8qxYiPouoBFV8LVGdF4VX-VwMPiossSMjEyVVGeRgp0V7esh5luNj-h3x2xJGG5Y81uS6w2WABuBzSg5rQjMRL3mivi3457AJkxPCmAWDXTr9Nmzm6rgOxsvTDMQf9cvweI5XKzz7cqCGpVfcJAwjIO1PWGnN4Y0sz-UmNuTMEgdZ5z0nj_Ii2f1KNlgVOJpFeTZ1Q2B2pFgai1VqR4rHDFl-De_hev4_g9j46rRle5Uq52IPryop_c2oLyzR5jDGv46jiR2gChqoJAlyP3AgE0KjB6PS_YFdpFEPy8xmrcmB8gIF4U7Bjmvrz1aNrA7vE9pB4zozUIvDwi_TjqxIHOMR_E_NNU9H54gKsGYlerrQk1NhoPhpyv7QQro8Vp84E2gvrEk8ulbur30r1xBy3LIzNRi5t1VVm_u-i9hmbF9pSYqm2npdEFIXUJVtIQImAIUb2kMaGSNSxxBZUqBnljm7KzQGPlHQL2IZuD2cFYam6LkXQgZzdcdy3i8mxfHWjNW9Y8KAjriY3NSfN4WmeMQqpagIg4Y9zAoBP4zigsWyenlV3siGNbyEdIpjCrhJcw1qgLUaWvYqIlyE_0qT0bPO03CAjoUH4MZA0RT37aSIun47bxieqtJvOKD4a-rXji5Tvphp8ZyqoUUUrRl6kt9WGqGITicCrGj3XuMpb9Nlx9_tPrkPAauHyK6_lI3ZAj-cDoCKDSsAxLdwFhoLXhFBaJMLyWUDkteyMtftCj-JtSxGPnGaAPItdJiNuAL-eEgx-wOxzjcMzN1QFTC0wt8LECVDWeUlfD01ONvl52gT8M8HU9GbMYONdzWz-CoaTBHXlQO7mTQ5CrRJYJTSmsFOAfX3sqx2Z-6IRqdwTvFbSIuSOCXEU2BF_h4bP3h3ASHNtZ5UI5ERtO8pIojp0DPW6TlJgGSSL1VG5hpdCu9oYTiovqOT7vpWPd8KULuQ-sSABxDbYuTf90zzB7huPg36maPs7c8mhn8_ywVd26yRam7vnxpB-4DmolSOkhRl-FpjO39CDc7fnAi_bjXQwuITjFOp-iBilfhv2jXJMtmJ05sxKJeeILqb_XOIEcq2Jnvt3bbFsx9U7JTc4Kkd5d-EjX35I6BIdY25UC5beVRITP7YXBVJkT0tWxl85urpKIkqis6pu_MAXpmTFkUVe9LWM7kQgRpZw4AQXK9EgluEbR2DgXB1bCP3C6E_e5gE4gdeI928zNZe03MBzCvL6q6Sc34EmNS8rJnXDxpn_7EDBfhRQ-xAcHihEjQfoy0spueMOk_QMdPrHa9IxQSeg4kaGoLb9-UX-KQwW8wGKjxZ-slz_4dRuILEB2ux8oJybIBYI3F0CaBKnoPdDLJXdM7XQcUt8CWUNCZqnCQlEyo_P29Z4c6Y4sC8ND4n_YBNZ56wdjEFDclXZ8SZ3BcGZf5_C7sxQ9FLvUDe97jhAxBu4Gvnq-DD3U-HGcuPUos0nPBXK4PLF6k_dDcUtb_B43fyxePEJo5I7JSc5fB5H98Xun_uhRyor_BnG2HF3v7YJO3AaZBSaBvz2xPXK_M56YBwkBbZ41iK1nHlQLzH5eDj-1eErcvut-SnaUd7R-Pph9dwiwSMq9IKsG2wLOn4hA4apUaijBQBzmN5oNNOQyMNw_hZcLwphFKxqdgvxwJogLk0O2MawdZPKUxdSHVEVkzHBWO6UrXNJ-ONs3g4fw2bgeMmDiCbXtzCu_obJOO1nRmV9SEwwIE91amOnSQ5OXmWONnbrGyJ3wogLep_tD6tZmkSlQ5kuXfdTHo6vFR3ysjv6cOlgJZ4t9WtrNLlWZZpSELpl3wgwkRkdEANis4zpbQyyny9g08fInygvQTS_Kv_WAsy_i3_iSuFwuJDTcByqiqmZK8l0nyeOwPnW0U638lKRracxYob8I-8gTXh04-rzVyw-Zz9O_hrnIe432eSTY9gTKeSeLCMVuftULDBmSBt1ez2xTVlgBTZqyOKNYaVpjcfNeCWT5q1Bf6sjjHIBnxymlyDE0v2E4fhURynBA5cI8lIwcpJ8avvZkzzNVn7VnOC-II_J54Kf8ja5qP_NTT_JXdWhsrq4jzz7wA4gCeX_sBRMHV05mn1sR3pATiXWDknV4Tq3edMP9z2P2KM5NSziqzMTVRj0PAAHQ54dzRGNWJJ5Otvfej4050uUZOrl77gDmfETSltcLmXoNYHIaMIBfUVkT8vL-ysR2cbxmLwlgJQ0RUL5vnd_oNErqWI7gUVMCSOUwwv4lsOV0JONyZuVNpJoTYm2SvAPisqlw7ClrUAllotMzvhpopEckUpWg3Iexkv0x_9IhbIClYbAqhkG9QOiOJ3anueKP0aM9sLFQNIi15M0ViHUpzEL2TTNDtoMiBjzUjcjiECuI9PIdvONK1q0D26LWA8x2LukqTCKJlEY66LHnEb-LwNlgVlbJj-HMRKTXbvJWGSfcmigDzLwucX8fRfkGgOpeJEtJNdg9QpUASFhnDEVQH43Ncv4ZqiBxNPGklrNTywm_x61nEjk-VWNaPLsYExNdEA1AaFgF0NWwbBeMnWYRWydIYvEhA5ys3sqkfMOAksmZnv1JNylgZPk-icUxuQcL0zGeAuAuxauIHdrxLadhoYZe63KIXFG-8ZfsJgtycKkVJGN8_iBVs4HzlWlHlcgRcp3ijgz4kyA80DL_6DgQGaEXa4HkAIAwaN8uuuxdr7k74kIvC2tiWz46iXBJp-2CoAVsI07dmHc7FTPYmbq-gCLgJtTKrjf9kFw35C6rm9BMUkZ7BfAWL4lF05Be4GNt4X1rxScjYbVZy7cGy0twrqTyGAy_Oq1fYclUmDRGMhKj4eVQ7cqpsCwhzU1vVu5eQOKS8co5XW_8QjKbZgKCHyBaN91PO2XnMsFi3pC_LmfDHJMZRriMX1SZ-gFZD9oVrUwKBUwT8pKj5qloGdrzn_ijf-L01OJ6zaAuKp2aNy9LARrwMkvcKtBLGH4JhoQtphBz5FiklUeOvXym5L9jegLK1Z1oMXQYf8BkfP0f2lZkqqX7kBSYVvxwEd0lUCyxy9b8Sxw6LDr5hDG5xQfsJLx8SdfizglD-T3RENlEwzbd0pm46htO14AZqUEtDC0VdCBo0ZP9TCZII5rmXmyoYPYspcXiBl9SBL4km1ic7fujIUqgNb2oWCi0cA-C9Iqmi4FEKwqss2xN9Ee7E68s1K74rpb8shFIT0-CMtmEjvEsnSG3TZpfTKRdk6pJeu24GsV8sx6ZlUKnXq4J7qIzsg4UIHwlnFySd8Q9XvzY9Gx7xBzjaoyhBlDdUSBNqBUoQq2-5Vusmix2wPiRMljEx-mx0K2kApAohUbt-WyZbzShJGok8Tb3vLiGfD2rU1dvGiFVGjd6jQ-iKouNFLzcuUH2cEYDwhT8iP0LSw0Rizz9smqQyZRwIGdCqXIPN5bamqJ65bmg5OdiHd1D0D4AFGOCWKPvTEW8YmghvkFVpM0AINCjwJiy01wVclWaZle64huSSkMq0HgAqo2g49KtFnbzdKeaHmrEr3lJaaEbBR_ks7VPsjNsf79PXfQq5N96yX4-vNfnL2743pkozVBopd2z2PBuno7VrwZDilp8_IOWNslCd5QG2eU-O8IA1kYTeIT8cNlKfey-aAVLTmZRD0D3Lg6rrJh_Jfv-fPaGJh569uSC01zSaHNxGLjhUxYRFR8s0WmMIKt9MK4AQ9Vs850GhHXw9xziM59B45yOklDPqkJMT_LmdDQqfHCX7_iMew2yxRs_WAUzYX_YVDFdScjv3S-QwOheLAiyjrtFOoZZd-Vkdg3w9xEqfLup3v66JVKO2QwyvGLypwSdZT23Lsu6yYWEFaRvedUsht_4622rHLMP2KGGCeqvAuvNXgnXNVSYN6lWmb84srPDuhTxhocsoQTqGzasekXyi8Z10I-xwAJdKq_Y3SLFlyLXpd0w4GRd-XUd-Dxy-PXAHv88UcHozNNmC8yJooCgc6AJmgbQ6AUYLpM4XK4LdsJRTup-kxpbV9MT0IOS3TBHBMu3B5ZUHjxroWp9ufR8AK27gYckvJiWB4U8xJQcgHdcHJumasO9ytRhdpvo9zQQKvx9cxhcdK4LBNjYSni-Q9SnKVDC0LYjJo1euaWlymriyNaJJnINTtTG3iGj3so55DBR-ZW_q3u4ZAxvLmZ7DmgxQGNplYzaddIgLf-dPDmVtFZOBUAkRXdJD6jlQT5Iv2c79WSA_WNmhznvl9zRRS8xG9DC8aqQPNsxZE_f90Y4346G5dvyk6v8EtKBjmqUBaX8aeu9Qff1kUcIjSHoh92oR7tJiNxFwATobxi8ICzfU_478Xj2IpQ_AQP7UbDyK_1wbSttCctqBT4a68ytXAwAeVKwyF-IaWJdjJOwKs-TXp3LHaaIclt_mcbUo_HaQd_0colDuMzFLhLvgxdEXtJEHXnU3Omde7ikvdVd54d0DTovI0MP1P1fh5_wyowcdazBRv9WrcL0TeDQ_OJtLhFF5ktH4fJ3XqSlDOhKSJjXL4N6B38cHducZWlG_FAPE79Pkq3TNp6Pz_yg7kXxzv18CR7CHozecgHfNDpecU3jE2K9ALZ8Ta49S7I9wvNV76OLz_dTx93NybaDLBK0t0_ar19_qSP6xdF2ouYMzcG4GBCg4Z2Ab_vt8nI5Bsm_tE8O5auFEmoUQFuTaFXQmBz-nF8d3atqp6JKDwyIH6XraHSK4EAAcdFJiK5AyRo6ULKUVnEKg1syuaTivgX8TeAK682F8YO6bxndSG1BKu2nv_KPWEEoogkoof28hE3tFotGuPp0Q4-3K6VpzU3G7wqMD-31gTWdcED742FWD4I3jbaHN11J_-2uq6T3XrvxW761WKSp5nyldZKydyYZskDAXMy5FpuWYhtBoZCpaMGWjEayj-nLe6Bhu13vo_BDAxxFvf8kJq_-4MUeDQv5jixsXePGY5ifb8UU59a28HokvvFH54T076FDEYrwLsTjrmQVpU50vxZnqTFD7cRwcsZv4zNPIOTXD2fyMOapzgWSBAqUsNazsFJfXlhUk8KYxAMGjMrIEK09P6T1sTnM1WASy4GVX9a45ZOu7i9Prw-S3Tw1nfVwnp6cwXzMmhnwIr2I2ydfNfXw-ykG4dfRbx95oR5T3F1tKeDiVmZ4VGla2Li8iKe87D6lb-YE3LVAP53jNC5kP5UkRAaarvUbmJA-aMH6Ig50sDuPCuPoqi1vBPz2BjKihk3MkxUu6eGHAL8V93anrUY3ORYCtRIepIaWBRJS95LEXS7KrOzE--WI7uakO8fwsOFjUne4HBVbYJhxmLzVb3zMPCEBmdvm4hW1sU0ydW4B2kVhXS0lnuiAfn3c0zTKcMp2UlNHOpFhtyAJ0WjX0RRNE_kV5CDa48nBNmHNjxEORtfAjnFfArb1naeIG-1CEb9rw5UYSM-UaMUxzg_6QfxgCx-H2yn8s6JQI3LU0P3hxo9mSyeoqKLtYQu1Yg4gj9KnLNdfdCJbacfNRJLCC-A8upFOhV9NEHQ7mvzeWMF0KzW0xVt5r1LSMUVQTPNPkFihaVact-vu5Xf5jFejZkA5NKt-wg3aSA9SepO7CWb8NA4AutivB8ZGSVYk3AnoOjlQcWnRYyQZ1XOJOBhKOMLUAm_1voupb9HUzaWnSVf5WPkQIWdIL08_iiTFEWs90LxguA__ae0vGBdTXObxNCYI8cSrcxOYAcaHlKW3ZhBxFE9VOsqTFYp97dJOm-yk2tRohd1mdNKwWDcMg1RcRkc5m8NV5s1JsaNojHDG4yI4MeLdwiYS3evHVCtoGn5V7lRXlA5KYSW5U6aYj6A-9AoEVLd9wZ976UCMumTHt1qDkZiXL6qgXMaLnDQJEBFEKiIYDV9-B7DeYEPESV6STZ6Dh0R9QgwmuvYeAkRcKMG5VMumDEcTocrwMvulZLYEgqSXMKCgfMynkkTaJwUNvnrqSLgfSyBfbWKBH7dd4Mpu1W6vQlz5Y4LEXTwnXooGFsYVS7YFQWW7zyy37CTz4cufcAZ5GceymcgS2kBFVa3AcNaRgb49KGE6Irs3DWEzWMRwrqPavsygp0Y0VbUdSvO2sN6aAgN__bgomAcqitKK4VYz_8oC-WCrANKLHyCYAfYOX7sDyYrX8I0vLEIWnixIEzujaS1XIRKR-oEY0g_6eFF0ZvAx8-EhcZXNOCDBgZzuwdJU0hcHrQLgc9kJlKzkQYvIjw3p_Tz7cw3LUh0gyR8ILAKx3hoGe7mhN4o19U27EuQbFbup00dHtqT7GBAtT6WLl4eyYZ2KTYulPE7IO-iOnm_4mJGn5qpAwrZFq41fo0ktOgPIOtWtSU1dCa_TunOqFn3TN2Zjs9h6LvkZIGp7bW6jou6GV3KG0b3_3YHtwQuZXEJMKtw4E58LABiOeh_FoddEfPd5eQ2EinUld7mY317k8AR9jjiGrifFGUeeIR-U1EaQ1BU-PP5EDFbf8WRmOUQuOKdVuY14ztpsBa_TE9owoQ6UfOpQW4ZDQrC3dVijdrpPKO2z5c9ffls7L4RS2Wii3nfEr1wHpTDGhuaTb65PUsYi6MAydsqrOp5fCKlClvlO4oc_lr8j7WTu-j1TqAkkcP2M8pr03QN40FTMaYtO1lS_8jDclbKVUPi8zNVP_BFGZWy1iZQ6mKxQgpLVnOyBlNJcvc9OHm5uewJyZNHny_ylBcW_A_fTRqCd3SZU68eDEgP38lFFCJAOcH7a4RF1YUy4LLVEvMAG0w3N0nkBEEndwqxl4GOL8Sz2kyTN2OgXC8yucd89C0m1ZJvO7TGkgVM7thSBGhO1U839a7amzKPyh91c-G7HT9sv4Ad5WXuUWFV-8LRtKiuQGPtOxbMstqbonfoG_simzF3g89EDjv5QNjAA8dXmsmad9K4P59V_9rm4wVObWPc1H--CMuroTovRizLp1k-3eTMPpewgNakCFMP07TLdDFmbcLsmujj1S10_4OGMZGoB9Ev4Xm_Suw200iF7pNkx_Ctc--y5bHKBKx2Xk_emBITZIzgYQPVfXd23DrRaggTgfJ7ipiM0wrs72oDGe38wGbbxHhqQ5t1X_242lVZe4VciP-WFtcr2IFP1MdLaF0mYtfsJVvD6Y-zcEpmONHiQPjFIcSn9rwVOPDmJaRXQ2iTxeediKwpUM43LexAIqnat3roNB_qtdyhpt2VDg4aK6Af-JKV4slaUdojlqMcCBwy02N8YUTEmfDojokV8YhUh9U_8Lr1g_7OW38AU2YpPZFLfsD1BpgsyWaXav59j3RtoKwZI1tzRt2bkedF9l7boKwxJSw23uud0ELNOjtEhaqoKOi7IFuOAEkogsUPg7wJjg2bRMKjIrCz8bpVRZQe9Mo9FbRJFDtri_qhod8wjaL3J7lxbwg7lVWeaR3AbITK0qNI__12vJg66tWtCBb8DlbShXqvgB-JVzA57oISAjSAA4W5yvACHbdiXVrtzhEFSq6-XabuE3Zqu468agdXwG85G5gB3PxqSn27Wh2HvMMlWmRfIMrRM2k4n91SJzz8KOZ-s-LsGeWLMIKj8jQ2NzDNYhTaVzv_ojdsmGz0oixFDmM7E4kB2gf9cgZRlPEbbOX5IYyE8IzBcTZb3ef6JxBWNgMj_3-mQ5CxAV8R-t3AT_HNBj4B_QR6bhnKC1M_iMQ1PE9ftKkV-WxBgb8Ep0aHix2GYQkpdQXKeSPrr_f4AL430JMamx8eNJVQ9AauzQUBefDKSE9fz6WFCMnqAbUiPfGVR32tyGXaA-U17ktiMjIGAZWrNqeqpjJIXaxJjNsLfpNnv8yzniHFilSlw-7OSBdjZQJH1z-FhyqoDFvZ6JjnBWENlRAZ8lGktSEGhP8XEpysdYKDDETb7FcmuRC372gpUvrYmWLpW92HH7JbDMtjOVKK9dGOsoIW4Q0DwgTic-OP7v5iTRtoTMi0A8tXNOhJq8vlTEoS84MntGckiSx8he1h4Lq1qZw0j0IyLvCeyOyDjl-ePg4QMtpSi8OMaGyla0G45gOqnls36Bp6bn0ZV3fv7fEl3Sc7R377Czrle5DK6PRgW3jyZ97HAS_jIMzj4O0n82BMlPUE7b_D1yFu64R4m-XtnPreIk_lq7OU9tH2URS0eiGSfDy6ldFMy6PS9DMszm3eqsLmuBuRABsELH6v_7AJC64sqbW_t0Zd39fcZEVa1HXEBCXbX1QrJvU0uPwFTQhRo-YK0KTmhMwxzyt69Kox4haXHr8K8SIyFqtrK37Tm4QY4Nj9YXcaUplJNGodma5z6JfcSDdAJROSXdE0KztgjvNCcTRFMVpRxo7jIeZFXnuOIzTnKJM6L3MTOHzb98t6F6KOGXuNCokXydys0oO2mbuF-rqCPv6Ug3VdvXmeCp0ms5yMa-KVIZ3QQRcPeqF6Bf6DIlA8rqfOQGLiKevxhv1uPMfrMIfXuM0UQiQftlw2e-moYvrLjI1mYkWTQh394saryU0Hw-xSJ9tNq70g8ZcAyNOn5xY4vLWqLUeNepenWa19B01Vmtbgcljb_3LhmWbStlN_wuFo_oezyG865Y8QPKFQaNqVdQIXMja7FJZenshPK83Qeo25sbQ15xke6kDgGzelYO6aEWcp7eTo34_amVj0kOJU3xfpSEIMXMI8oTtaWAcyMuqEObTukorhsrbvBru9Rn9qwSSOVoHcdIt3pohKjpfQutwpmLt8tdrQNwbG1ARw7PxYEFR02rAeJh3Fq7uxkyVBTRKwaehPlNlPIEvkOOKbZUR-SsTq_3PTnm0dgEBC-TtC7gjDsLN57Y6CgqX1Xs5wNZHJMUctNDUI39r0Pa9EymOAjfUMtpw9tqLs9DObtUbqcSRWILIk5rKIz44dubu_t7jpOqarxJsFD9NBLiicfpIzF41s-8IZDvvbOtkNGDfnX407dcBZ2IHvC_SHDqoNeIYOvrb72M_L-vXCWIOOythPUBvij3Ge8HCa0GeXDjgvjbOfcVAd0C6Cnjz-MprM43A0Af_K5SpaycZpxOLdeafyD1vSN_uiMrbmLi8z66w27vq6WposfjT5Bey7-ZbwMJImz-Z5Qup8bbVOJ0FE8ZFtuzv2s0oZpG0PYdhojxDZLeQT2LB5WsYi3TCUazey7sBuEIOlSyZw19cVeAGhlh041txZpjCz8nF5LMam8cks2CPLs5piK1J0Jz-jwvIl0yrD1MeZMetM8VhmrY0GWYFQtmtMP4grPKgf_HiAzFvPBGcFaXIkA1AXjTpJW81BrNDzGDPP-dDO3BJ1wHXusdTnOtJY9XL6MafAh_lCugxDm2lyRKD1o7DUoOnK_9HpBPuowbvz6o2xXTQ5CGi2ts-PekU3GZplPutW7UXZbUfV3Ro8FjTiehoTGJ_GHX4WV0MjFse-F7OqZXM2xVUykoT_SO_O1yuBcK_h4SImIWsoGPa3ANgzOmx1Q6cwgk-IYAIUoZivyR9sP38Gnpw2d9hQBFK-Q_k3T1D4d80739I_k9H1fSqRLB3ELheVX9K4i4bSLbqm-UyPhD7v-ssKNidZbD4CRmQpIpf7G92HS6ADTq3cuUGAex1gdPziBxvj8fDlqqNW874244l9W_HCYuJUxrB3jhHbf8sQTh4KaGOF20bsxaDO_b4nMZP5bKln1NlbffMT-moYiUtei1MpR1rsUR-DMwCmIF_GxIPgQnCevIr6AKeqhWgYygqFz8Bo8ziQHj3rd4niU83N-FbaV1eUprDTLfvVLOAxbwCVdNtBwV0TRh-OioB4EayykXNxqPZi6LOKBTWwDkdMfYxZRE_ynlPIOk39UfhpD9URqgk5EapKuW-EJPilV5OnWWR9nBRss4cMYzEeGpDmsXlDQV5X1ATjZIO8C05AKm5tW8h3cVMikvpBYhtMGUwa2k9L0QU8SqyH_aSDH4UqOyNkAbllxakeSr0mdKq_V7mA25OYG5i3egBlFTPifFa_-onD_Fz8EtqeTfKKq__PPf__jr7_yrOi_23xO5b-y48iKZqym4--_6vauyv_q9_at_v4rO4_5v4pl3tujnae__yqq6ai2f__jP_8LlP9gjyKYAAA';\nexport var placeholderContainer = 'styles_placeholderContainer__dodte50';","import { Collapsible } from \"@base-ui/react/collapsible\";\nimport { NavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport type React from \"react\";\nimport { useRef } from \"react\";\nimport { IconChevronDown } from \"../../icons\";\nimport { ScrollArea } from \"../../ScrollArea\";\nimport { MenuSubitem } from \"../MenuSubitem\";\nimport { useMenu } from \"../menuContext\";\nimport {\n itemContainerClass,\n itemContainerOpenClass,\n itemsListClass,\n menuItemWrapperClass,\n menuModalStyleClass,\n modalHeaderClass,\n styledCollapsiblePanelClass,\n subitesInnerClass,\n} from \"../styles.css\";\nimport type { MenuItemProps } from \"../types\";\n\nconst SubitemsKeyboardList: React.FC<{ children: React.ReactNode }> = ({\n children,\n}) => {\n const ref = useRef<HTMLDivElement>(null);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n const navKeys = [\"ArrowDown\", \"ArrowUp\", \"Home\", \"End\"];\n if (!navKeys.includes(e.key)) return;\n\n const items = Array.from(\n ref.current?.querySelectorAll<HTMLElement>('[role=\"menuitem\"]') ?? [],\n );\n if (items.length === 0) return;\n\n const active = document.activeElement as HTMLElement | null;\n const idx = active ? items.indexOf(active) : -1;\n let next = idx;\n if (e.key === \"ArrowDown\") next = idx < 0 ? 0 : (idx + 1) % items.length;\n if (e.key === \"ArrowUp\")\n next =\n idx < 0 ? items.length - 1 : (idx - 1 + items.length) % items.length;\n if (e.key === \"Home\") next = 0;\n if (e.key === \"End\") next = items.length - 1;\n\n items[next]?.focus();\n e.preventDefault();\n e.stopPropagation();\n };\n\n return (\n <div\n ref={ref}\n role=\"menu\"\n className={itemsListClass}\n onKeyDown={handleKeyDown}\n >\n {children}\n </div>\n );\n};\n\ninterface MenuItemComponentProps {\n item: MenuItemProps;\n sideBarOpen: boolean;\n categoryOpen: string | null;\n toggleCategoryOpen: (category: string) => void;\n}\n\nexport const MenuItem: React.FC<MenuItemComponentProps> = ({\n item,\n sideBarOpen,\n categoryOpen,\n toggleCategoryOpen,\n}) => {\n const LinkComponent = useMenu();\n const location = window.location.pathname.split(\"/\")[1];\n\n const hasSubitems = item.subitems && item.subitems.length > 0;\n const pathToGo = item.function || hasSubitems || !item.path ? \"#\" : item.path;\n\n const handleItemClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n if (item.function) item.function();\n };\n\n const linkProps = {\n id: `menu-item${item.path}`,\n className: `${itemContainerClass} ${\n sideBarOpen ? itemContainerOpenClass : \"\"\n }`,\n to: pathToGo,\n href: pathToGo,\n \"aria-selected\": location === item.path?.split(\"/\")[1],\n onClick: handleItemClick,\n };\n\n if (sideBarOpen) {\n if (hasSubitems) {\n return (\n <div className={menuItemWrapperClass}>\n <Collapsible.Root\n open={categoryOpen === item.text}\n onOpenChange={() => toggleCategoryOpen(item.text)}\n >\n <Collapsible.Trigger\n nativeButton={false}\n render={<LinkComponent {...linkProps} />}\n >\n {item.icon}\n <span>{item.text}</span>\n <IconChevronDown className=\"chevron\" />\n </Collapsible.Trigger>\n\n <Collapsible.Panel\n className={styledCollapsiblePanelClass}\n keepMounted\n >\n <div className={subitesInnerClass}>\n {item.subitems?.map((subitem) => (\n <MenuSubitem\n key={`menu-subitem-${item.text}-${subitem.text}`}\n subitem={subitem}\n style={{ marginLeft: 32 }}\n parentPath={item.path}\n />\n ))}\n </div>\n </Collapsible.Panel>\n </Collapsible.Root>\n </div>\n );\n }\n\n return (\n <div className={menuItemWrapperClass}>\n <LinkComponent {...linkProps}>\n {item.icon}\n <span>{item.text}</span>\n </LinkComponent>\n </div>\n );\n }\n\n // Collapsed state — NavigationMenu handles hover intent\n return (\n <NavigationMenu.Item className={menuItemWrapperClass}>\n {hasSubitems ? (\n <>\n <NavigationMenu.Trigger\n nativeButton={false}\n render={<LinkComponent {...linkProps} />}\n >\n {item.icon}\n <span>{item.text}</span>\n </NavigationMenu.Trigger>\n <NavigationMenu.Content className={menuModalStyleClass}>\n <span className={modalHeaderClass}>{item.text}</span>\n <ScrollArea maxHeight=\"calc(100vh - 48px)\">\n <SubitemsKeyboardList>\n {item.subitems?.map((subitem) => (\n <MenuSubitem\n key={`menu-subitem-${item.text}-${subitem.text}`}\n subitem={subitem}\n parentPath={item.path}\n role=\"menuitem\"\n />\n ))}\n </SubitemsKeyboardList>\n </ScrollArea>\n </NavigationMenu.Content>\n </>\n ) : (\n <NavigationMenu.Link render={<LinkComponent {...linkProps} />}>\n {item.icon}\n <span>{item.text}</span>\n </NavigationMenu.Link>\n )}\n </NavigationMenu.Item>\n );\n};\n","import { NavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport { useRef, useState } from \"react\";\nimport { Input } from \"../../Input\";\nimport { IconClose, IconSearch } from \"../../icons\";\nimport { ScrollArea } from \"../../ScrollArea\";\nimport { MenuSubitem } from \"../MenuSubitem\";\nimport {\n itemsListClass,\n menuItemWrapperClass,\n menuModalStyleClass,\n modalHeaderClass,\n nothingFoundSpanClass,\n searchContainerClass,\n searchContainerOpenClass,\n} from \"../styles.css\";\nimport type { MenuItemProps } from \"../types\";\n\ninterface MenuSearchProps {\n sideBarOpen: boolean;\n searchInput: string;\n onSearchChange: (value: string) => void;\n onActiveSearchChange: (value: string) => void;\n searchItems: MenuItemProps[];\n searchPlaceholder?: string;\n searchEmptyMessage?: string;\n onInputFocus?: () => void;\n onInputBlur?: (popupHovered: boolean) => void;\n}\n\nexport const SEARCH_NAV_VALUE = \"search\";\n\nexport const MenuSearch = ({\n sideBarOpen,\n searchInput,\n onSearchChange,\n onActiveSearchChange,\n searchItems,\n searchPlaceholder = \"Buscar\",\n searchEmptyMessage = \"Nenhum resultado encontrado\",\n onInputFocus,\n onInputBlur,\n}: MenuSearchProps) => {\n const [innerSearch, setInnerSearch] = useState(\"\");\n const popupHoveredRef = useRef(false);\n\n const filtered = searchItems.filter((item) =>\n item.searchText?.toLowerCase().includes(innerSearch.toLowerCase()),\n );\n\n if (sideBarOpen) {\n return (\n <div\n id=\"menu-item/search\"\n className={`${searchContainerClass} ${searchContainerOpenClass}`}\n >\n <Input\n placeholder={searchPlaceholder}\n iconLeft={<IconSearch />}\n iconRight={\n searchInput.length > 0 && (\n <IconClose onClick={() => onSearchChange(\"\")} />\n )\n }\n value={searchInput}\n onChange={(e) => onSearchChange(e.target.value)}\n onFocus={() => onActiveSearchChange(searchInput)}\n />\n </div>\n );\n }\n\n return (\n <NavigationMenu.Item\n value={SEARCH_NAV_VALUE}\n className={menuItemWrapperClass}\n >\n <NavigationMenu.Trigger\n nativeButton={false}\n render={<div className={searchContainerClass} id=\"menu-item/search\" />}\n >\n <IconSearch />\n </NavigationMenu.Trigger>\n <NavigationMenu.Content\n className={menuModalStyleClass}\n onMouseEnter={() => {\n popupHoveredRef.current = true;\n }}\n onMouseLeave={() => {\n popupHoveredRef.current = false;\n }}\n >\n <span className={modalHeaderClass}>{searchPlaceholder}</span>\n <div className={itemsListClass}>\n <Input\n placeholder={searchPlaceholder}\n iconLeft={<IconSearch />}\n iconRight={\n innerSearch.length > 0 && (\n <IconClose\n style={{ cursor: \"pointer\" }}\n onClick={() => setInnerSearch(\"\")}\n />\n )\n }\n value={innerSearch}\n onChange={(e) => setInnerSearch(e.target.value)}\n onFocus={() => onInputFocus?.()}\n onBlur={() => onInputBlur?.(popupHoveredRef.current)}\n />\n {innerSearch && (\n <ScrollArea maxHeight=\"calc(100vh - 120px)\">\n {filtered.length > 0 ? (\n filtered.map((subitem) => (\n <MenuSubitem key={subitem.key} subitem={subitem} />\n ))\n ) : (\n <span\n className={nothingFoundSpanClass}\n style={{ textAlign: \"center\" }}\n >\n {searchEmptyMessage}\n </span>\n )}\n </ScrollArea>\n )}\n </div>\n </NavigationMenu.Content>\n </NavigationMenu.Item>\n );\n};\n","import { Field } from \"@base-ui/react/field\";\nimport type { InputProps as BaseInputProps } from \"@base-ui/react/input\";\nimport { Input as BaseInput } from \"@base-ui/react/input\";\nimport type React from \"react\";\nimport { type ForwardedRef, forwardRef, useRef, useState } from \"react\";\nimport { NumberFormatBase } from \"react-number-format\";\nimport { vars } from \"../../theme/theme.css\";\nimport { currencyFormatter } from \"../../utils/functions\";\nimport { FieldMessage } from \"../FieldInfo/FieldMessage\";\nimport { IconExclamation, IconEye, IconEyeSlash } from \"../icons\";\nimport { Spinner } from \"../Spinner\";\nimport {\n iconSizeVariants,\n inputClass,\n inputContainerClass,\n inputContainerSizeVariants,\n inputWrapperClass,\n} from \"./styles.css\";\n\nexport type InputSize = \"small\" | \"medium\" | \"large\";\n\ninterface InputProps\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, \"size\"> {\n label?: React.ReactNode;\n info?: React.ReactNode;\n error?: string;\n size?: InputSize;\n isLoading?: boolean;\n mask?: string;\n containerStyles?: React.CSSProperties;\n isCurrency?: boolean;\n hasPrefix?: boolean;\n minimumFractionDigits?: number;\n onChange?: (e: any) => void;\n /** Callback fired when the value changes. Provided by BaseUI Input — works when wrapped in a BaseUI Field.Root. */\n onValueChange?: BaseInputProps[\"onValueChange\"];\n iconLeft?: React.ReactNode;\n iconRight?: React.ReactNode;\n inputBackground?: string;\n inputClassName?: string;\n}\n\nconst maskValue = (value: string, mask: string) => {\n if (!value || value.length === 0) return \"\";\n\n let maskedValue = \"\";\n let valueIndex = 0;\n\n const letterRegex = /^[a-zA-ZÀ-ÿ~^´`]+$/;\n\n for (let i = 0; i < mask.length; i++) {\n const maskChar = mask[i];\n const inputChar = value[valueIndex];\n\n if (!inputChar) break;\n\n if (maskChar === \"9\") {\n if (/\\d/.test(inputChar)) {\n maskedValue += inputChar;\n valueIndex++;\n } else {\n break;\n }\n } else if (maskChar === \"a\") {\n if (letterRegex.test(inputChar)) {\n maskedValue += inputChar;\n valueIndex++;\n } else {\n break;\n }\n } else if (maskChar === \"*\") {\n maskedValue += inputChar;\n valueIndex++;\n } else {\n maskedValue += maskChar;\n if (inputChar === maskChar) {\n valueIndex++;\n }\n }\n }\n\n return maskedValue;\n};\n\nexport const Input = forwardRef(\n (\n {\n label,\n info,\n error,\n size = \"large\",\n isLoading,\n mask,\n containerStyles,\n isCurrency,\n hasPrefix,\n minimumFractionDigits,\n iconLeft,\n iconRight,\n inputBackground,\n inputClassName,\n ...props\n }: InputProps,\n ref: ForwardedRef<HTMLInputElement>,\n ) => {\n const spinnerSize = size === \"large\" ? 18 : 16;\n const [passwordShowing, setPasswordShowing] = useState(false);\n const innerInputRef = useRef<HTMLInputElement | null>(null);\n\n const togglePasswordVisibility = () => {\n setPasswordShowing((prev) => !prev);\n };\n\n const isPasswordField = props.type === \"password\";\n const inputType = isPasswordField && passwordShowing ? \"text\" : props.type;\n\n const passwordIcon = isPasswordField ? (\n <button\n type=\"button\"\n aria-label=\"Toggle password visibility\"\n onClick={togglePasswordVisibility}\n style={{\n background: \"none\",\n border: \"none\",\n padding: 0,\n cursor: \"pointer\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n {passwordShowing ? <IconEyeSlash /> : <IconEye />}\n </button>\n ) : (\n iconRight\n );\n\n const valueFormatted =\n props.value !== undefined\n ? mask\n ? maskValue(props.value.toString(), mask)\n : props.value\n : undefined;\n\n const assignInputRef = (el: HTMLInputElement | null) => {\n innerInputRef.current = el;\n if (typeof ref === \"function\") {\n ref(el);\n } else if (ref) {\n (ref as React.MutableRefObject<HTMLInputElement | null>).current = el;\n }\n };\n\n const handleContainerMouseDown = (e: React.MouseEvent<HTMLDivElement>) => {\n if (e.target === e.currentTarget && innerInputRef.current) {\n e.preventDefault();\n innerInputRef.current.focus();\n }\n };\n\n return (\n <Field.Root\n className={`${inputWrapperClass} ${props.className || \"\"}`}\n style={{ width: props.style?.width, ...containerStyles }}\n invalid={!!error}\n data-slot=\"input-root\"\n >\n {label && (\n <Field.Label data-size={size} data-slot=\"input-label\">\n {label}\n </Field.Label>\n )}\n <div\n className={`${inputContainerClass} ${inputContainerSizeVariants[size]} ${inputClassName || \"\"}`}\n style={{ backgroundColor: inputBackground }}\n data-slot=\"input-container\"\n data-invalid={error ? \"true\" : undefined}\n onMouseDown={handleContainerMouseDown}\n >\n {iconLeft && (\n <span className={`icon-left ${iconSizeVariants[size]}`}>\n {iconLeft}\n </span>\n )}\n {isCurrency ? (\n <CurrencyInput\n hasPrefix={hasPrefix}\n minimumFractionDigits={minimumFractionDigits}\n {...props}\n style={props.style}\n type={inputType}\n ref={assignInputRef}\n />\n ) : (\n <NormalInput\n isLoading={isLoading}\n {...props}\n value={valueFormatted}\n type={inputType}\n ref={assignInputRef}\n mask={mask}\n onChange={(e) => {\n if (mask) {\n const maskedValue = maskValue(e.target.value, mask);\n e.target.value = maskedValue;\n }\n props.onChange?.(e);\n }}\n />\n )}\n {isLoading ? (\n <Spinner size={spinnerSize} color={vars.colors.neutral.light} />\n ) : error ? (\n <IconExclamation\n className={`error-icon ${iconSizeVariants[size]}`}\n />\n ) : (\n passwordIcon && (\n <span className={`icon-right ${iconSizeVariants[size]}`}>\n {passwordIcon}\n </span>\n )\n )}\n </div>\n\n <FieldMessage\n error={error}\n info={info}\n isDisabled={props.disabled || isLoading}\n />\n </Field.Root>\n );\n },\n);\n\nInput.displayName = \"Input\";\n\ninterface NormalInputProps extends React.InputHTMLAttributes<HTMLInputElement> {\n mask?: string;\n isLoading?: boolean;\n onValueChange?: BaseInputProps[\"onValueChange\"];\n}\n\nconst NormalInput = forwardRef(\n (\n { isLoading, mask, ...props }: NormalInputProps,\n ref: ForwardedRef<HTMLInputElement>,\n ) => {\n return (\n <BaseInput\n {...props}\n disabled={isLoading || props.disabled}\n className={inputClass}\n ref={ref}\n />\n );\n },\n);\n\nNormalInput.displayName = \"NormalInput\";\n\ninterface CurrencyInputProps\n extends React.InputHTMLAttributes<HTMLInputElement> {\n hasPrefix?: boolean;\n minimumFractionDigits?: number;\n isLoading?: boolean;\n}\n\nconst CurrencyInput = forwardRef(\n (\n {\n hasPrefix,\n minimumFractionDigits = 2,\n value,\n isLoading,\n ...props\n }: CurrencyInputProps,\n ref: ForwardedRef<HTMLInputElement>,\n ) => {\n const multiplicator = 10 ** minimumFractionDigits;\n const inputElementRef = useRef<HTMLInputElement | null>(null);\n\n const assignInputRef = (el: HTMLInputElement | null) => {\n inputElementRef.current = el;\n if (typeof ref === \"function\") {\n ref(el);\n } else if (ref) {\n (ref as React.MutableRefObject<HTMLInputElement | null>).current = el;\n }\n };\n\n const handleKeyDownCommon = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === \"0\" && e.currentTarget.value.length === 0) {\n setTimeout(() => {\n const el = inputElementRef.current;\n if (el) {\n const end = el.value.length;\n try {\n el.setSelectionRange(end, end);\n } catch {}\n }\n }, 1);\n }\n };\n\n return (\n <NumberFormatBase\n format={(e) =>\n currencyFormatter(\n parseFloat(e),\n hasPrefix,\n minimumFractionDigits,\n Number(props.max),\n Number(props.min),\n )\n }\n {...props}\n value={Number(value) * multiplicator}\n className={inputClass}\n defaultValue={props.defaultValue as string | number | undefined | null}\n disabled={isLoading || props.disabled}\n onKeyDown={(e) => {\n handleKeyDownCommon(e);\n if (e.key === \"Backspace\") {\n const el = inputElementRef.current;\n const digits = (el?.value || \"\").replace(/\\D/g, \"\");\n const numeric = digits.length ? parseInt(digits, 10) : 0;\n\n if (numeric === 0) {\n e.preventDefault();\n const event = new Event(\"change\", { bubbles: true }) as any;\n Object.defineProperty(event, \"target\", {\n value: {\n value: \"\",\n name: props.name ?? \"\",\n type: \"text\",\n },\n enumerable: true,\n });\n Object.defineProperty(event, \"currentTarget\", {\n value: {\n value: \"\",\n name: props.name ?? \"\",\n type: \"text\",\n },\n enumerable: true,\n });\n props.onChange?.(event as React.ChangeEvent<HTMLInputElement>);\n if (el) {\n el.value = \"\";\n try {\n el.setSelectionRange(0, 0);\n } catch {}\n }\n }\n }\n }}\n onChange={undefined}\n onValueChange={(e) => {\n if (e.floatValue === 0) {\n setTimeout(() => {\n const el = inputElementRef.current;\n if (el) {\n el.setSelectionRange(el.value.length, el.value.length);\n }\n }, 1);\n }\n const numericValue =\n e.floatValue || e.floatValue === 0\n ? e.floatValue / multiplicator\n : undefined;\n const valueStr =\n numericValue !== undefined ? numericValue.toString() : \"\";\n const event = new Event(\"change\", { bubbles: true }) as any;\n Object.defineProperty(event, \"target\", {\n value: {\n value: valueStr,\n name: props.name ?? \"\",\n type: \"text\",\n },\n enumerable: true,\n });\n Object.defineProperty(event, \"currentTarget\", {\n value: {\n value: valueStr,\n name: props.name ?? \"\",\n type: \"text\",\n },\n enumerable: true,\n });\n props.onChange?.(event as React.ChangeEvent<HTMLInputElement>);\n }}\n type=\"text\"\n getInputRef={assignInputRef}\n />\n );\n },\n);\n\nCurrencyInput.displayName = \"CurrencyInput\";\n","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nexport var betaTheme = 'theme_betaTheme__14bhs4v65';\nexport var darkTheme = 'theme_darkTheme__14bhs4v64';\nexport var defaultTheme = 'theme_defaultTheme__14bhs4v63';\nexport var vars = {colors:{primary:{lightest:'var(--colors-primary-lightest__14bhs4v0)',lighter:'var(--colors-primary-lighter__14bhs4v1)',light:'var(--colors-primary-light__14bhs4v2)','default':'var(--colors-primary-default__14bhs4v3)',dark:'var(--colors-primary-dark__14bhs4v4)',darker:'var(--colors-primary-darker__14bhs4v5)'},red:{lightest:'var(--colors-red-lightest__14bhs4v6)',lighter:'var(--colors-red-lighter__14bhs4v7)',light:'var(--colors-red-light__14bhs4v8)','default':'var(--colors-red-default__14bhs4v9)',dark:'var(--colors-red-dark__14bhs4va)',darker:'var(--colors-red-darker__14bhs4vb)'},yellow:{lightest:'var(--colors-yellow-lightest__14bhs4vc)',lighter:'var(--colors-yellow-lighter__14bhs4vd)',light:'var(--colors-yellow-light__14bhs4ve)','default':'var(--colors-yellow-default__14bhs4vf)',dark:'var(--colors-yellow-dark__14bhs4vg)',darker:'var(--colors-yellow-darker__14bhs4vh)'},green:{lightest:'var(--colors-green-lightest__14bhs4vi)',lighter:'var(--colors-green-lighter__14bhs4vj)',light:'var(--colors-green-light__14bhs4vk)','default':'var(--colors-green-default__14bhs4vl)',dark:'var(--colors-green-dark__14bhs4vm)',darker:'var(--colors-green-darker__14bhs4vn)'},blue:{lightest:'var(--colors-blue-lightest__14bhs4vo)',lighter:'var(--colors-blue-lighter__14bhs4vp)',light:'var(--colors-blue-light__14bhs4vq)','default':'var(--colors-blue-default__14bhs4vr)',dark:'var(--colors-blue-dark__14bhs4vs)',darker:'var(--colors-blue-darker__14bhs4vt)'},orange:{lightest:'var(--colors-orange-lightest__14bhs4vu)',lighter:'var(--colors-orange-lighter__14bhs4vv)',light:'var(--colors-orange-light__14bhs4vw)','default':'var(--colors-orange-default__14bhs4vx)',dark:'var(--colors-orange-dark__14bhs4vy)',darker:'var(--colors-orange-darker__14bhs4vz)'},second_green:{lightest:'var(--colors-second_green-lightest__14bhs4v10)',lighter:'var(--colors-second_green-lighter__14bhs4v11)',light:'var(--colors-second_green-light__14bhs4v12)','default':'var(--colors-second_green-default__14bhs4v13)',dark:'var(--colors-second_green-dark__14bhs4v14)',darker:'var(--colors-second_green-darker__14bhs4v15)'},neutral:{white:'var(--colors-neutral-white__14bhs4v16)',lightest:'var(--colors-neutral-lightest__14bhs4v17)',lighter:'var(--colors-neutral-lighter__14bhs4v18)',light:'var(--colors-neutral-light__14bhs4v19)','default':'var(--colors-neutral-default__14bhs4v1a)',dark:'var(--colors-neutral-dark__14bhs4v1b)',darker:'var(--colors-neutral-darker__14bhs4v1c)',black:'var(--colors-neutral-black__14bhs4v1d)'},fixed:{white:'var(--colors-fixed-white__14bhs4v1e)',black:'var(--colors-fixed-black__14bhs4v1f)'}},shadows:{lighter:'var(--shadows-lighter__14bhs4v1g)',light:'var(--shadows-light__14bhs4v1h)','default':'var(--shadows-default__14bhs4v1i)',dark:'var(--shadows-dark__14bhs4v1j)',darker:'var(--shadows-darker__14bhs4v1k)'},typography:{family:{'default':'var(--typography-family-default__14bhs4v1l)'},weights:{regular:'var(--typography-weights-regular__14bhs4v1m)',medium:'var(--typography-weights-medium__14bhs4v1n)',semibold:'var(--typography-weights-semibold__14bhs4v1o)',bold:'var(--typography-weights-bold__14bhs4v1p)'},scale:{display:{fontSize:'var(--typography-scale-display-fontSize__14bhs4v1q)',lineHeight:'var(--typography-scale-display-lineHeight__14bhs4v1r)',fontWeight:'var(--typography-scale-display-fontWeight__14bhs4v1s)'},heading:{fontSize:'var(--typography-scale-heading-fontSize__14bhs4v1t)',lineHeight:'var(--typography-scale-heading-lineHeight__14bhs4v1u)',fontWeight:'var(--typography-scale-heading-fontWeight__14bhs4v1v)'},body:{fontSize:'var(--typography-scale-body-fontSize__14bhs4v1w)',lineHeight:'var(--typography-scale-body-lineHeight__14bhs4v1x)',fontWeight:'var(--typography-scale-body-fontWeight__14bhs4v1y)'},caption:{fontSize:'var(--typography-scale-caption-fontSize__14bhs4v1z)',lineHeight:'var(--typography-scale-caption-lineHeight__14bhs4v20)',fontWeight:'var(--typography-scale-caption-fontWeight__14bhs4v21)'},small:{fontSize:'var(--typography-scale-small-fontSize__14bhs4v22)',lineHeight:'var(--typography-scale-small-lineHeight__14bhs4v23)',fontWeight:'var(--typography-scale-small-fontWeight__14bhs4v24)'}}},spacing:{xxs:'var(--spacing-xxs__14bhs4v25)',xs:'var(--spacing-xs__14bhs4v26)',s:'var(--spacing-s__14bhs4v27)',m:'var(--spacing-m__14bhs4v28)',l:'var(--spacing-l__14bhs4v29)',xl:'var(--spacing-xl__14bhs4v2a)',xxl:'var(--spacing-xxl__14bhs4v2b)'},radius:{s:'var(--radius-s__14bhs4v2c)',m:'var(--radius-m__14bhs4v2d)',l:'var(--radius-l__14bhs4v2e)',xl:'var(--radius-xl__14bhs4v2f)',xxl:'var(--radius-xxl__14bhs4v2g)'},semantic:{error:'var(--semantic-error__14bhs4v2h)',success:'var(--semantic-success__14bhs4v2i)',info:'var(--semantic-info__14bhs4v2j)',warning:'var(--semantic-warning__14bhs4v2k)'},zIndex:{dropdown:'var(--zIndex-dropdown__14bhs4v2l)',modal:'var(--zIndex-modal__14bhs4v2m)',tooltip:'var(--zIndex-tooltip__14bhs4v2n)',toast:'var(--zIndex-toast__14bhs4v2o)'},motion:{fast:'var(--motion-fast__14bhs4v2p)',normal:'var(--motion-normal__14bhs4v2q)',slow:'var(--motion-slow__14bhs4v2r)'},components:{fieldInfo:{fontSize:{desktop:'var(--components-fieldInfo-fontSize-desktop__14bhs4v2s)',tablet:'var(--components-fieldInfo-fontSize-tablet__14bhs4v2t)',totem:'var(--components-fieldInfo-fontSize-totem__14bhs4v2u)'}},input:{label:{fontSize:{desktop:'var(--components-input-label-fontSize-desktop__14bhs4v2v)',large:'var(--components-input-label-fontSize-large__14bhs4v2w)',medium:'var(--components-input-label-fontSize-medium__14bhs4v2x)',small:'var(--components-input-label-fontSize-small__14bhs4v2y)',tablet:'var(--components-input-label-fontSize-tablet__14bhs4v2z)','tablet-medium':'var(--components-input-label-fontSize-tablet-medium__14bhs4v30)','tablet-small':'var(--components-input-label-fontSize-tablet-small__14bhs4v31)',totem:'var(--components-input-label-fontSize-totem__14bhs4v32)','totem-medium':'var(--components-input-label-fontSize-totem-medium__14bhs4v33)','totem-small':'var(--components-input-label-fontSize-totem-small__14bhs4v34)'}},input:{fontSize:{desktop:'var(--components-input-input-fontSize-desktop__14bhs4v35)',large:'var(--components-input-input-fontSize-large__14bhs4v36)',medium:'var(--components-input-input-fontSize-medium__14bhs4v37)',small:'var(--components-input-input-fontSize-small__14bhs4v38)',tablet:'var(--components-input-input-fontSize-tablet__14bhs4v39)','tablet-medium':'var(--components-input-input-fontSize-tablet-medium__14bhs4v3a)','tablet-small':'var(--components-input-input-fontSize-tablet-small__14bhs4v3b)',totem:'var(--components-input-input-fontSize-totem__14bhs4v3c)','totem-medium':'var(--components-input-input-fontSize-totem-medium__14bhs4v3d)','totem-small':'var(--components-input-input-fontSize-totem-small__14bhs4v3e)'},height:{desktop:'var(--components-input-input-height-desktop__14bhs4v3f)',large:'var(--components-input-input-height-large__14bhs4v3g)',medium:'var(--components-input-input-height-medium__14bhs4v3h)',small:'var(--components-input-input-height-small__14bhs4v3i)',tablet:'var(--components-input-input-height-tablet__14bhs4v3j)','tablet-medium':'var(--components-input-input-height-tablet-medium__14bhs4v3k)','tablet-small':'var(--components-input-input-height-tablet-small__14bhs4v3l)',totem:'var(--components-input-input-height-totem__14bhs4v3m)','totem-medium':'var(--components-input-input-height-totem-medium__14bhs4v3n)','totem-small':'var(--components-input-input-height-totem-small__14bhs4v3o)'},borderRadius:{desktop:'var(--components-input-input-borderRadius-desktop__14bhs4v3p)',large:'var(--components-input-input-borderRadius-large__14bhs4v3q)',medium:'var(--components-input-input-borderRadius-medium__14bhs4v3r)',small:'var(--components-input-input-borderRadius-small__14bhs4v3s)',tablet:'var(--components-input-input-borderRadius-tablet__14bhs4v3t)','tablet-medium':'var(--components-input-input-borderRadius-tablet-medium__14bhs4v3u)','tablet-small':'var(--components-input-input-borderRadius-tablet-small__14bhs4v3v)',totem:'var(--components-input-input-borderRadius-totem__14bhs4v3w)','totem-medium':'var(--components-input-input-borderRadius-totem-medium__14bhs4v3x)','totem-small':'var(--components-input-input-borderRadius-totem-small__14bhs4v3y)'},padding:{desktop:'var(--components-input-input-padding-desktop__14bhs4v3z)',large:'var(--components-input-input-padding-large__14bhs4v40)',medium:'var(--components-input-input-padding-medium__14bhs4v41)',small:'var(--components-input-input-padding-small__14bhs4v42)',tablet:'var(--components-input-input-padding-tablet__14bhs4v43)','tablet-medium':'var(--components-input-input-padding-tablet-medium__14bhs4v44)','tablet-small':'var(--components-input-input-padding-tablet-small__14bhs4v45)',totem:'var(--components-input-input-padding-totem__14bhs4v46)','totem-medium':'var(--components-input-input-padding-totem-medium__14bhs4v47)','totem-small':'var(--components-input-input-padding-totem-small__14bhs4v48)'}}},select:{padding:{desktop:'var(--components-select-padding-desktop__14bhs4v49)',tablet:'var(--components-select-padding-tablet__14bhs4v4a)',totem:'var(--components-select-padding-totem__14bhs4v4b)'}},button:{fontSize:{medium:'var(--components-button-fontSize-medium__14bhs4v4c)',small:'var(--components-button-fontSize-small__14bhs4v4d)',large:'var(--components-button-fontSize-large__14bhs4v4e)',tablet:'var(--components-button-fontSize-tablet__14bhs4v4f)','tablet-medium':'var(--components-button-fontSize-tablet-medium__14bhs4v4g)','tablet-small':'var(--components-button-fontSize-tablet-small__14bhs4v4h)',totem:'var(--components-button-fontSize-totem__14bhs4v4i)','totem-medium':'var(--components-button-fontSize-totem-medium__14bhs4v4j)','totem-small':'var(--components-button-fontSize-totem-small__14bhs4v4k)'},height:{large:'var(--components-button-height-large__14bhs4v4l)',medium:'var(--components-button-height-medium__14bhs4v4m)',small:'var(--components-button-height-small__14bhs4v4n)',tablet:'var(--components-button-height-tablet__14bhs4v4o)','tablet-medium':'var(--components-button-height-tablet-medium__14bhs4v4p)','tablet-small':'var(--components-button-height-tablet-small__14bhs4v4q)',totem:'var(--components-button-height-totem__14bhs4v4r)','totem-medium':'var(--components-button-height-totem-medium__14bhs4v4s)','totem-small':'var(--components-button-height-totem-small__14bhs4v4t)'},padding:{large:{text:'var(--components-button-padding-large-text__14bhs4v4u)',icon:'var(--components-button-padding-large-icon__14bhs4v4v)',textAndIcon:'var(--components-button-padding-large-textAndIcon__14bhs4v4w)'},medium:{text:'var(--components-button-padding-medium-text__14bhs4v4x)',icon:'var(--components-button-padding-medium-icon__14bhs4v4y)',textAndIcon:'var(--components-button-padding-medium-textAndIcon__14bhs4v4z)'},small:{text:'var(--components-button-padding-small-text__14bhs4v50)',icon:'var(--components-button-padding-small-icon__14bhs4v51)',textAndIcon:'var(--components-button-padding-small-textAndIcon__14bhs4v52)'},tablet:{text:'var(--components-button-padding-tablet-text__14bhs4v53)',icon:'var(--components-button-padding-tablet-icon__14bhs4v54)',textAndIcon:'var(--components-button-padding-tablet-textAndIcon__14bhs4v55)'},'tablet-medium':{text:'var(--components-button-padding-tablet-medium-text__14bhs4v56)',icon:'var(--components-button-padding-tablet-medium-icon__14bhs4v57)',textAndIcon:'var(--components-button-padding-tablet-medium-textAndIcon__14bhs4v58)'},'tablet-small':{text:'var(--components-button-padding-tablet-small-text__14bhs4v59)',icon:'var(--components-button-padding-tablet-small-icon__14bhs4v5a)',textAndIcon:'var(--components-button-padding-tablet-small-textAndIcon__14bhs4v5b)'},totem:{text:'var(--components-button-padding-totem-text__14bhs4v5c)',icon:'var(--components-button-padding-totem-icon__14bhs4v5d)',textAndIcon:'var(--components-button-padding-totem-textAndIcon__14bhs4v5e)'},'totem-medium':{text:'var(--components-button-padding-totem-medium-text__14bhs4v5f)',icon:'var(--components-button-padding-totem-medium-icon__14bhs4v5g)',textAndIcon:'var(--components-button-padding-totem-medium-textAndIcon__14bhs4v5h)'},'totem-small':{text:'var(--components-button-padding-totem-small-text__14bhs4v5i)',icon:'var(--components-button-padding-totem-small-icon__14bhs4v5j)',textAndIcon:'var(--components-button-padding-totem-small-textAndIcon__14bhs4v5k)'}},borderRadius:{large:'var(--components-button-borderRadius-large__14bhs4v5l)',medium:'var(--components-button-borderRadius-medium__14bhs4v5m)',small:'var(--components-button-borderRadius-small__14bhs4v5n)',tablet:'var(--components-button-borderRadius-tablet__14bhs4v5o)','tablet-medium':'var(--components-button-borderRadius-tablet-medium__14bhs4v5p)','tablet-small':'var(--components-button-borderRadius-tablet-small__14bhs4v5q)',totem:'var(--components-button-borderRadius-totem__14bhs4v5r)','totem-medium':'var(--components-button-borderRadius-totem-medium__14bhs4v5s)','totem-small':'var(--components-button-borderRadius-totem-small__14bhs4v5t)'},iconSize:{large:'var(--components-button-iconSize-large__14bhs4v5u)',medium:'var(--components-button-iconSize-medium__14bhs4v5v)',small:'var(--components-button-iconSize-small__14bhs4v5w)',tablet:'var(--components-button-iconSize-tablet__14bhs4v5x)','tablet-medium':'var(--components-button-iconSize-tablet-medium__14bhs4v5y)','tablet-small':'var(--components-button-iconSize-tablet-small__14bhs4v5z)',totem:'var(--components-button-iconSize-totem__14bhs4v60)','totem-medium':'var(--components-button-iconSize-totem-medium__14bhs4v61)','totem-small':'var(--components-button-iconSize-totem-small__14bhs4v62)'}}}};","import type React from \"react\";\nimport { useEffect, useState } from \"react\";\nimport { vars } from \"../../theme/theme.css\";\nimport { fieldInfoContainerClass } from \"./styles.css\";\n\ninterface FieldMessageProps {\n error?: React.ReactNode;\n info?: React.ReactNode;\n isDisabled?: boolean;\n}\n\nfunction useDelayedUnmount(visible: boolean, delay: number) {\n const [mounted, setMounted] = useState(visible);\n useEffect(() => {\n if (visible) {\n setMounted(true);\n return;\n }\n const t = setTimeout(() => setMounted(false), delay);\n return () => clearTimeout(t);\n }, [visible, delay]);\n return mounted;\n}\n\nexport function FieldMessage({ error, info, isDisabled }: FieldMessageProps) {\n const content = error ?? info;\n const visible = !!content;\n const mounted = useDelayedUnmount(visible, 200);\n\n if (!mounted) return null;\n\n const color = error\n ? vars.colors.red.default\n : isDisabled\n ? vars.colors.neutral.light\n : vars.colors.neutral.dark;\n\n return (\n <p\n className={fieldInfoContainerClass}\n data-visible={visible ? \"true\" : \"false\"}\n style={{ color }}\n >\n {content}\n </p>\n );\n}\n","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nimport 'src/theme/sprinkles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA72dTW_6WJaH9_0psuxeUArvoWYz0z2azki9qm6pNi1FNhgwGJsYEyCj_u4jv-Hr834JM6vSX7GfB-79cck5cCq_nI55nO6T6PSxik_HJLh9pFkafayi077Ijh8fw-35bbg4j17-5w8vL80lv76U1_zbH_71h1_w7eskuqLbp_3by2uY2-M0idNoQFLe-hTnUgYWJtlyjzBhH1NdxAA2ebxC90f9-8trwO3HYLWK083H9XpCd2-ru5srfn35CvI_DganY7CM082gvOFjOAm3p8nXaPonDoupe5HqQGccFDNTiekg5xzygJCfEvLQId84ZIKQhYRMOuSCXU3MvIir6UADFkpQv-Wdd7Ahg_1HdiQzNRy56EGRHR8KVoUn6FOVbghYCSfYbxrbELQSjbM2DDW0IXAlGu_kMNLQhuBVq02wt-pqGwJYJ4Wg7_WkGIL456wosgOdxd6xMQirKx-KYyshHJ8WhyGUjYIwFAaDIZqNgEjnxSAwBLQREDv9bRAYYtruAjaMRpZdMIT1nibCMTWlyRDZv0XrggzsqH8EJdG6eCiutYDghzrfENUKT9AjlW6IaQXHIR1tVbghohWc2Nq9CjfEs151gp7qq26IZpMagv9pSI0hlr_Fmy2Ty_4RlJcXPhTMRkEYLgaDIZq1gOB_63xDOGs8Tud4pOMN8azxeIfHUx1vCGiz-gT_zbD6hoi2CSIMoSVBUkgPQb6JUzKe4_rgqa_wy2VLJaBbCSpFsWESyL2AlNLXEIncpQJRClxDJDbqUyBKGWtXkkAW0kpKsbrvOQG9iHuuJ4krYMbfDti_fnHgmD0ZaWw9V3TxMpkqZD1edOkyeVPAesrowmUSKmA9bEzZMom0VdYzxxUtk62aDj16QskycY-IhyqWvoIwpAaDHkO2XJl86nw9jGyxMil0vB5JtlSZXHS8Hky-UJl8G1Zfj6dQpkxHlgTpIWWLlGnvqPGvUVw8QX9T6Xo4mQJlGmpsPZhMeTKNNLQeSqY4mW41tB5IrjSZ7tXV1sPIFibTVE-KHkS-LJn2jpoHqpKegOAXOl8PI1eSTC8qXY8jV5BMv1W4HkiuHJmNVLgeSbYYmU31VddDyZciszdDaqRYbgL6N8dZfbxsAs9fGSsegYtYnBS6kkbAthxMyljJwtma7TmWFKmSRWxGyrGkBFUrRsA-2RWTAlPvJ4Er-P2U8pFnl79yEalf83l2GXjHpMUS1G-RKqWlgWLmfCQxpdA0SJyb-VRCStlpkHiL5m8SUopQu5oEMxRXU0rSfecJaiTvvBSoZZacDymXqXn90q4v8o-VAyfYe40thatDE-RUIUsR68BEyj4VsBS0DkzsYKGApbg5q0yQL9oqS6Fz00Gwv9V0SNFbZ2nx9_g7un8NAX0Roj4nyusGp_g7avHF7Zht8uC4vQ1OyyCJBg1gcCe20uEnK91GQfURNpJOjdIGQEgLVhpmK-JpvhmN5d2E7sLqlsGxiLMUG0OjsQEQ0m9WejoECc7KW2RUVrdj4WgEheW3Yt6j6lcxNkD18VV9f2Ybub-NsRFyqPfnmgtqNkZ7s7oNEqU-C2o6TKnZW8WJkl4FKRupT7O3DRWhHr0KaiZYhVlcR4vSjqH2Eq-KLfmW-FYfqNUFfu-GDZNAfgtI6U2wJmLgYsQDpfe-moff9xZTnie95dU8vGeLN54nvdM1K0gAQ2EFpTe4dp8JZCTts_S-VqeQDM-iPpD6ObWlp6US0L0ElfLTMAlkKiClBDVEIkKfAlHKUEMkNqgQiFKK2pUkkBdpJaUc3fecgH6Ley42qeL0d_YgCppOSZwOHjiMOjRBnipksTHVggnum8wVW1ItFkcrCGWs2IxqsXjfgkjGim2o--oS3K2yumIDqksEQd5riVDC9s6fXEF6Zz9yejlwgv2psZXAvXPnWFAoZCVy79xxFlwUsBK6d-5UC74VsBK7d_ZwC0faKivBe-fPuHCqpkNuxl_5cy5se6rXh865O5oghwpZbsBfuXMujGSu3Hq_cudcuJWxctP9yp1z4V7Gyu32K3vOhamyunKj_cqfc-GnlgglbMI5FxZ39kPnXAcn2BeNrQSOPefCb4WsRI4955YjBayEjj3nllMFrMSOP-eWb9oqK8ETzrllqKZDil6Y5aso_y1YxecTsYvL-tyorxrk1WWtoP6Xu49LkU5s5ValO5u5EunEyuxVurMykUinFj5V8e7Kr2U-JfjUBa5hg_pfSXT9zziPllV7JM8uHTqvW19JdB2s2it-Ldv1GmKQR19Rfoo61IlDtZeKyLpT29EKklZfZQDhh3cWgMwjDJJ4k_53ER1OH6cij4rltsN9VbjqikFcXvLrS3MND6nkpyLIi45zwZzuMh61jNIiyjvMFWPqS5RHE6WrDnJjHkuUwvE6BxMGp6jsW3WYb4xpLwKY3flUxOvbX7K0iNKCWp_VawVrLhws6yuFNQJIsE6rIY0j14p6dO56rUbCY8NrBnDlsRwNwqi4RFGX-9WYZvautoCDPDu7j3UiceuLLdjoK0qTW4edStj6YuLV-nseHD_S7FL-546adS_Q8gfliGv5X-72_s1zeLN2KzogVm8UQji7_r4t__Xx2hEWHeFU_fDXl1f-xmF3Y4BvHBI3_rU8uh1f2N22ybMLbatuclxLeBM0HbNTXJ2kpyIo4mV356q6s_1xed6VP-fuzqMkKOIvZ4EjcH97BUcIwlOWnAuHsAaE9gqOsI6vkfMa2IDbqx_zzz5e7p2kb9GzL38O7s6-onydZJePr_gUh4nz0OPq9vbnv740F3D3b-PVyj0WduD2-ufc3adlniVJd_ce3F3_nLs7OBdZd28C7i1_Cu4somvxH-Vx_1F-2a279VDdWv50UL0b_PpS_py9GZ7VKbqdPKY7QN58ctLcn6H7qwvY25tTrAMcEaC5BH4Ufc5PWQ7Wrfk8vvoRuWrNXatoHZwT52HnvRubH9P3HrO4v2Sn3r3Nj-l706x8Vkl2cV8hRe9-5xKacQli54GfezeXPyM-h_29rmDyaHNOAueRf3WfwV64j8rqH5wG3c3Np4IH6hPfxnSIVvH50IkuHqL7vY0nFTyn6BCHWeIs5tXD5NzduDLB1ffcPDx9x5Fy_FdwiJMbzuV3p1lXlxCa-geD7t5GlBDf3ijzm8eHIL_985ekfHTRqbNFr-33N8os1Z7qH6dBc9PAuae2oA9oSUmXuWhodDhJsyg6wcgm6Eo3BQ_3JBqrArgV6ONkqAjyfcef6Pz6-ho-McDdDZia8M76U1_jyvKPPFpRGZqx-Dxa4fxQX-Tqw52HPjewu8dNfZWrh-7Abzr4jqW-yNViUVYWIhjmhPoq1x3dy0ggc918UF_icqHuAocq1llf6ruDWf5xi8p3LyoaS5Ze34PTgXpalMJ5_CuboXsOqK1FCDp8ZMLf4air1YejsKw1PMwLamsBQS8yG5Xupgb1szDaXfitBe6s-5bGb_IoSqnoxCy_ugUnJzYInMe_M_G7x7_T8R18b4Hf0XsRjUKTKHCYGea3ghbfi8xBY7uJQb8PIrC74KkB7aw3-iWwhofJOaLikrH08g6cFvR7H8Y7j_1ooXePHf3Ch-Ad-tOAvoPRl1ldMApKLqNhTtCXHHvwXkxOCtlNyUnDugtd6GBnndHXbGt0lgfphkzJmcXX9-CcoK9fUgrnCXzZDN1z-DIIOvzFhL_D0ReD-3CUmKuGh5lBXxQFgl5qbirdzc1NR7sL_22BO-uOvr5c40_RMktX7NvSmi-Y3DtxjoZM2UT5ume15msnQucUUEwFRdg6F19GYVdnYoqpvgkGbc1XVD0XqnCZugrY3NSt-eKqr3KzN2RKLOxxN4uvs5DJ3Sum2kqjc5EHyT9_uWxjpzu75sut5o5Be0PDZwquOx-HnK-6WgXON1N7AYuzWnwF1pc4K8UUYn1HZ-BLsZ6h4zPV2J2PYswXZa0BJZgpzjpHL7x8eXYX9HLLVGg9ursJfIHm8t09YAq0uyFMgqXzBPj6rBW0NzR8pj6rPkRArwW-PKuuh68Epjxr2OCR87VZzQaPG3_hIFjuN9Unfn_J5C7cui7UuhsGlNXekFPMzvZv_cVCl072dtbY28q37lgneq3ufKxqP4_39l6_ey-p2OQTje6mJr5OqfMHrXQPcH2wOG3tQMHoPMnUTyj0CHlfZ8u8bHzjkHShpB6tNrWbSPt6Cf00y8QWI2tyNy33cUl9R2hjO5Drk0VpbkbKXueZFt5aoUMpWjvn2dfJty05I4rql4dT7WWy1l5gLz5KscEp-dzNvHoapa4ndLKF5s0itbZCRavzTL99pUJ_VHLejZtXTyPfNGV8MLKbod2odlI5pxvYzchDKLZXBZuziZuxn0_quUIj033dTCxKYyNWcjrPcuqpFLqzgrHzzfx8fMuWtqGYzs0-tY_LGHshfbPrxOYu73I3b-Flkzq-0Mf2fjeBxWluA8te56mG3lqhNyxaO-fS18k3jDkjyuvKw6l2kVlrL7ORj1JsLUs-dzPXnkap3wydSud5Y2oS-DahLQ_Cef6mfoFnZ9rwELoHYGodeLWrZT2KuamL4NnDVh5CL_OmhoJPY1uXuwEw9Rb8ut3wATB9742pxWBtgbNS_LozdRo8-uKK2llsU9fB3iyXxZ3W1H6wdtBZKXplmRoR9rY6L-69nkwtCWOvXVS6G2tqSpgb8Ky239DemHoS1q48lJL9-Y2pJWFr1TNC8BxN_Qhj_74aBNR695umHVFPDf6wb88bnfBc_YRSv571dbabl03o01MudAZ8W216f570uS_97atZJvflOZOzaduhj0vsxzs2uhe_HWkuYx-eNjlPamwXSf130tNZJmaL0HeHDpi87dRi0fvtyNNL3MwkkfvslMHdlLnVIfbXHQvbW9--aSp7X531Oc9s4aWT-umcrXMFPi6hj06YUPRCo0vvn1O2XgCXVpXcN2c87matPExiv9xxcaXxNtJk5j45Z3Oe2dpHJvXHGVdn2niYhL449qAIbm0mvR9OuHoBjI0iuQ9OW9xN2tk9Yv_bMTG97-1eU1n73ozLeVaJh0rqd9OmznOwe4Q-N7Kg2KUmj97fxqZe6DKbRu5rkw53c45mi9jPdjxsL3v7qbnsfWzW5zy13Esn9a85W-c6-biEvjVhQvkrjC69X03Zehk8W1Vyn5rxuJv15WES-9OOS-lNb9Ui2Lsvrcid56vWw779aFndidXS2K8PzWpRbNUq2bf_zKvdDMdqwezVdxalzgbHau3s2W92xEyvOVZLaHOfmZKh10-sVtI-_WVe6SyqWlV79JVZYadTy2tzP5mSwVdIrBbaHn1kUth7Xaglt7V_zKncjVOLbnvfmNL1-6mxWnOb-8WOjOwVx2rJbewTYxF4Tmq9besPr-MkERrDcfN_AIqT5OGGMKVworCyGYQOMCHo8JEJz7d8-3D0Gl1reLXHCwS91-RGpYtNXYx2F35rgUtd3ApPt2_jmIPb2rYQ7TzsnU4W-rQA3GH3KpZvzHZQlI9EwqqdWAfcy8VBpIqt1z7SXdhUg0q91grLNlnjjGObm6uEwHnsRxNf6KZifAf_tMD59mkPjQKSK3C1X9rH92Jy0thigxSB3QUvDGipI1rBuUosPnN0awsU453H_mWhCz1PBO_QFwOab3K6YBSUq4xWu5o9eC8mN4UstjEh1l3obx0s9S0rNNOw3L1ybGOjEsG7x70bGthCZxKiO_BIB_OtSAcLw7Ebi2C19-ii3WjsJjJXbDYCqLvAUxUrdRcrMNtW3M04uLmdSAicBz838YX-IcZ38DcLnG8Y9tAoJQsFrnYI-_heUgKNLbYEEdhd8NCAlnqAFVxp_u3YQse36cfanGfE1jyeXT7O1ZnY8serrUd4ULjYSsizj0e5ekljiyKfxh1jcTeJrY_8OnWViWnR7dgyydqa69NxrNlqyaMXRzmcdWIrJ3vzjTB0fLaEsnbb-nQUXLaYsrfXgKEXV7asMvbTMNtdfLawMjfQ-vx-l2nH1lXWjllFJ1tlO7assrXIXDJ41GxNZeuJnYo820dCV2xXF1b1dQ_3xWiNs7eF1SL0xkhJpzgbFXx_DArQy-tLV6g9MiTpvcIuBoPYJ6Pw7kZcbQKpV9Yo6G7Z7sYLbP0yjHce_reFLvTMEPyO3r8a0HzfzAXD3OyHMlrtnfXgbl72I4Us9s8g1lno_VgHSz20Bs120fYTnm_uo5ES5zlMjQ6hl0YpOsHMJuD7aQCPgjNXBWpPDSp68XnT-WJfjYC7G7Aw4aXeWiPgSp19wBus_TVK4TyH0GYQemyEoMMvTXi-z9aHowCtNLzaawOCXnwilS722zDaXfi1BS713Bo803Xbb3i-se9GCJzHvzXxhd4bxnfw2ALn-289NArNToGrPbg-vheZvcYW-3AI7C54YkBLvbgGznbj9gdeYO7HkRLnSaRGh9CToxSdILMJ-L4cwKP0HFWB2puDil6CPnW-2J8j4O4G5Ca81KNrBEqXbi8UXr59OsHoPDOhBvPs1fG-ziaUY179OtKFQidUZp49O9rXS6BQpPn07ViTu2lCvebXu2tsTPduL5Rt1v4dNODIC9WbRw-P9nRrlgiVnL2PR1o6h1DSWXt50ABDnQjFnb2fhyxulBOhzDP29Ci-uxlCoWfu60FHv0eWCHWetbfXGMjuXiKUebb-Xp8OHr1Q4wk9vn8v_0ZTUP5FsyhKX4J09fJH548vz2fz4_VPFdh5GKv4dEyC20eapdHHIQtj5w-11a-Zl5fmmvKPYJV_tvLl5V80o_xDepAxhozyIoERp-XfxhxQqBlEOdcKxDDJlnvIWkBWdZVA2eTxCkKWEFJeRDCOwWoVp5vqD1kDxLpBNJe0e83-FWuejdCxggZ_xJolI3Aig8HfsGa5B8jNZC74E9YsN4HcXOaCv2DNrzACn5UVBn_AWsgFQl-1XIC_X82x_5EdqdgNX_v8QZEdH85e5cCKsUFhzGBpwIKZLjBmseSjOA4XOt-YyZKPtni41PnGbFY7gAVrww4YM1rnCCtiS46MWf1zVhTZgYwrOHIGYXXpw4ltTViU2UTG3DYerMlNGmN6GwsO8NlkMWa4seAIXE0WY5LbnUGaETyxmJ0x5vmeNSyC5xaXNWOq_1b-GVgi0yN4fJV_D_bhRNcWLIFnGCkxprlyYAU8xiiFMcmVAeV4BM8xymBMcWXAew6PMcpgTHC9E1gBjzByJ4zpbTKFJfD4ojNlTO5vVa1KRRceX9XfEn44u40Ha-D5RWuM6a0tWAKPL1JizG_tQAEew7OLdBgTXDvQ1o_hsUU6jBludgRL4JlF74gxxW2-sAaeWky-tBwfgnwTp1SCx-2hVV_iH90WjclrmayltQFjbixytYA2WBzNRMRqmWyweAczEavFsF1dzM3l1dWSd08EJp-VRNjCxtRb42uP_li55RiQYPKqC2zRI2utyVjF2xJIVlqTmUq3BZGssyYLlW7LI11lTZb6yttiydRYk7UhO7Z08hXWpH-8PFxg9T1Yk5g0tqRy1dUks0hseeVqq0lucdhSy1VWk7PFYcsuW1dNrqYdsSWYr6qmr7Z82XLM1VRTcEw9VlK5DqyYGRS2_NL11HShC2zZpaup6VLn23JL11LTtc63ZZappKaxYQdseeXqqGliyZEtq2wVNQXH1INFVM-CJblFYssrU0FNzwaFLbFM_TS9Ggy2zDLV0-zVYLCllqudZmPLTthyy1ZOs5kpU1pyNwH5W-ysPZo2wQO_vlZQzFwKTC2XJRIT1zxRi2EJRPGbxTxQS10JxLuU8EAtZNUqYmImrKKWqXq3MTOXdluLUJ5d_sqkqD0v8uwyeChJLRujrwpaC1RDRuD5qwzWctVwUbTmY5mrxavhor2bz2SulrJ2hTF4oaywFrZ7LjB6qeVCy9wyS86HlIndvD0W6qseS55jwIJYF2j56_gYn6h4LYUdHQcxU-laFjs63tpcpWuJdFYe48_6ymu5dLODBVdDdrR0rrO0-Hv8Hd2_UgIkb-0ZU144OMXf92_-FLdjtsmD4_Y2OC2DJBo0hMEdef8i0Kdo3kZB_dULYB6bzQ2BMBeiOcxW-AnPzNrydsJ5EZ3L4FjEWYq0C7O2IRDmb9F8OgQJCtHb0uyt7sfW0Yiylt-Beo-q3wi5ZLVHX_V1qW3k_lLIZsvB3p91rvi5fMUe_jZhlP-s-MmUJR7yKmeU-aqYuaxlHvI2bYR_9Kr46cTlHvY6c5R7TLmrLxVS77Nv7WHcfO3Q9y22AWPuVeRq76w1FlEXrxJVe0OtoejNdDGWoNr7aA1Fm7mYSVDt7bNZVUxdiKuqvWu2KcDcpZwC7c2yDiuVr0V7mPXzbA9Yi8bkWCZrEWvAmJuIXC1kDRanLBOxWswaLN65XMRqQWtXF3PP8upqUbsnApOvSiLURl2c_s4dZ8G9MxSngwePtI6P8WMVrzbnWjqGzzS42pZr2Sh9wUJjqw25lo02NFhqbLUVd19xDF-rK6424bq8YHys58WQx3f2_AsSR_DoGegYsCDTBYZMvjOnYZCreEMq35lDMTirdEMu35mzMbiqdEMy37kjMnzVV96QzXf2pAzHhuzoH2tc2dMy7PrP14dPyzsf4xcqXv8o48qcluFSg-sfYlyZ0zJca2z944src1qGscbWP7i4cqdlmKgrrn9kcWVPyzDT82LII39ahrkjePi07AxYcNYFhkxyp2V4VfGGVHKn5fJVpRtyyZ2Wy7FKNySTPS2XM33lDdnkT8vlwpAdLZ31_8H-t2AVn094e5ftmdP8j-7z6rrWUv_L3eClqsB7vDYonF1eqQq8ULFB4SxUpCqIzUgMDnc31rqEsGQWi6vZNBp6-rL7HXA-eyunL-FQ5vB1NNamMosgTKJuBHjYPESvqUzAmECGx1QmQM0hymcqE7ACyDJNZQLICkIMU5kAsel___jhb7Z_YPROQdunMgH4IIPtU5mAe5S59qlMwD3JXI-pTAD-UlbYZyoToG9aLjynMuEre9jnP2MqEyomBoXXVCYUzHWB11Qm5Ac632sqE_JXOt9vKhMKNoYd8JzKhIqdJUf-U5lQA46c501lQtHRJvKdyoSak0njO5UJLV8mi-9UJrTcTBbvqUygGcET62lTmVAEz61nTWVCDzy-njKVCSXwDHvCVCZUwGPs51OZ0ADPsZ9PZUIDPMaeMJUJFfAIe8pUJpTA4-tJU5lQA4-vJ01lQg08v54ylQkl8Ph6xlQmcIzh2fWMqUzogMfWU6YyoQSeWU-ayoQaeGr9fCoTGtpD6-dTmZC8kcnmqUzI3Ylc81QmxB5ErHkqE2KPItY-lQm5J3l1PaYyIflLSYTfVCak33r0J0xlwjbLUBf4TGVC_ETF-0xlQvpcpftMZUJ6oNK9pjIhfqWvvN9UJhRsDNnxnsqEkv7x8rSpTKg5mDSeU5lQcrRIPKcyoeNkcXhOZULHl8XhO5UJJTfTjnhPZQLNdGjLl-dUJrSAY-oZU5lQMTcovKYyoSDQBV5TmZC_0vleU5mQv9H5flOZULAz7IDnVCZUHCw58p3KhBJwTD1nKhNKThaJ31QmVHwZFH5TmdBwMxj8pjKBYTY0GDynMqFiYtkJ36lMKJmbMmWdyoT09mj6yVQmZK4Epm0qExI3PNE2lQmBOx5om8qEwAMPNE5lQuJRWEXrVCZknqTd9pjKhNz2vHjCVCZE3xS0eSoTfvQ8lMHmqUzInchc81Qm5M5lrn0qE4IDZYU9pjIheqXlwm8qE-LbY-FpU5lQsNMFPlOZEH9Q8T5TmZB-VOk-U5mQflLpXlOZEP-lr7zfVCYU3AzZ8Z7KBJK39oz5v5_KhOaJ2fyjqUyonZu1P5rKhNrArP3ZVCb0rszen05lQnN79P1_TWVC_87D_-OpTCg_eMh_PJUJ5UcP-c-nMqH95GF_eCoTStvD-KdTmZB7E7nWqUxAXQwlqnUqE0InEtQ6lQmhcwlqnsqE1EBcVftUJuSu5BR4TGVCcnuY_XwqE5J3Mtk8lQm5B5FrnsqE2KOINU9lQuxJxNqnMiH3S15dj6lMSL4pifCayoRfFL53hp4zlQnxExXvMZUJ4XMN7jGVCdmBxvaYyoTslcb2mcqE8I264l5TmRC_0_PiN5UJBQdH8JSpTCg46gKfqUyIP6l4n6lMSP9S6T5TmZB-U-leU5kAHw71lfebyoSCiSE7XlOZUND1n58ylQnxgYr3mMqE8JUG95jKhOyNxvaYyoTsncb2mcqE8IO64l5TmRB_1PPiN5UJBSdH8JSpTCj40gU-U5kQf1PxPlOZgL4cqnSfqUxIn6h0r6lMiJ_rK-83lQkFgSE7nlOZUNGeOU-cyoSKjUHhOZUJFTuDwncqEzoOBof_VCa0HC0WcirzfwEZHmviUh4BAA';\nimport 'src/components/FieldInfo/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA7WTQW_bMAyF7_kVRE4JNhl25xWDgp1y6rmnYSgMxaYTobJoUIzTdOh_H2SvTtskQJBiJxuU9L33RCoJsncYitqiq-58TUvyYqxHXjoTQlFkXf54-6PL4M8EoCYvKthn1NAZnilVUtOSRy9BjQQVd93bZ1QVhkehtiiyfLUJeXcT5ouREnU1eOLGuLG6Q7veiIY8TWPNWY9q869WGlfOrpSFL5C3T726QxFkFVpTWr_WkCZ5-xQXKFZkr6GXFjY-1MSNHn6dEfw1U6-UvmbFktevByFNbkJv2fDXw_m35cXkZZJceuO_KyNGdTbYlcOfU-EtTh_6NoxOs_NO03kUGxgVdraMCLNyKNMHuNjDNV0fVA63L_PrW3nMGjt5FI4Em_-eLYoc7Gw_E-0j6k2yyzOEbj3ksM5pKLfM6GVJjnjxPl12G6f8gEZm4ntH8p6Y97TKhtaZvYY12yqC4lcJNm0cLsW0CxrSmj--hONtkCbfTk3_OfnzQ3_KQlafht75o6v6PrycDrl2tNOwsVWFfjF5-Quom_k9AgUAAA';\nexport var errorSlotClass = 'styles_errorSlotClass__1v4k68v4';\nexport var errorSlotInnerClass = 'styles_errorSlotInnerClass__1v4k68v5';\nexport var fieldInfoClass = 'styles_fieldInfoClass__1v4k68v3 sprinkles_display_flex_desktop__1hu819u5 sprinkles_alignItems_center__1hu819ucx sprinkles_gap_xxs_desktop__1hu819u6b';\nexport var fieldInfoContainerClass = 'styles_fieldInfoContainerClass__1v4k68v1 sprinkles_display_flex_desktop__1hu819u5 sprinkles_alignItems_center__1hu819ucx sprinkles_gap_xxs_desktop__1hu819u6b';","import { Progress } from \"@base-ui/react/progress\";\nimport clsx from \"clsx\";\nimport type React from \"react\";\nimport { forwardRef } from \"react\";\nimport { vars } from \"../../theme/theme.css\";\nimport { spinnerStyles } from \"./styles.css\";\n\ninterface SpinnerProps extends React.HTMLAttributes<HTMLDivElement> {\n color?: string;\n size?: number;\n /** When provided, renders a determinate progress bar with role=\"progressbar\" and aria-valuenow. */\n value?: number;\n max?: number;\n}\n\nconst SVG_MASK =\n \"url(\\\"data:image/svg+xml, <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'><path d='M9.249 0.645999C9.63764 0.588245 10.0334 0.685283 10.3513 0.916254C10.6691 1.14722 10.8837 1.49369 10.9488 1.88116C11.0139 2.26864 10.9243 2.66619 10.6994 2.98835C10.4745 3.31051 10.1322 3.53157 9.746 3.604C7.99897 3.90027 6.41326 4.80555 5.26996 6.15934C4.12666 7.51314 3.49963 9.22802 3.5 11C3.5 12.9891 4.29018 14.8968 5.6967 16.3033C7.10322 17.7098 9.01088 18.5 11 18.5V21.5C5.201 21.5 0.5 16.8 0.5 11C0.5 5.855 4.226 1.49 9.249 0.645999ZM15.892 3.29799C16.0235 3.15124 16.1827 3.03185 16.3604 2.94664C16.5381 2.86143 16.7309 2.81208 16.9277 2.8014C17.1245 2.79072 17.3214 2.81892 17.5073 2.8844C17.6932 2.94987 17.8643 3.05134 18.011 3.18299C19.11 4.16702 19.9888 5.37197 20.59 6.71901C21.1913 8.06606 21.5013 9.52486 21.5 11C21.5 16.8 16.799 21.5 11 21.5V18.5C12.5182 18.5 14.0006 18.0393 15.2513 17.1788C16.502 16.3182 17.4621 15.0984 18.0047 13.6805C18.5473 12.2626 18.6469 10.7135 18.2902 9.23782C17.9335 7.76216 17.1373 6.42949 16.007 5.41599C15.7109 5.15036 15.5325 4.778 15.5109 4.38081C15.4893 3.98361 15.6264 3.59412 15.892 3.29799Z'/></svg>\\\")\";\n\nexport const Spinner = forwardRef(function Spinner(\n { color, size, value, max = 100, className, ...props }: SpinnerProps,\n ref: React.Ref<HTMLDivElement>,\n) {\n const resolvedColor = color || vars.colors.primary.default;\n const resolvedSize = size || 22;\n\n const spinnerDiv = (\n <div\n ref={ref}\n className={clsx(spinnerStyles, className)}\n {...props}\n style={{\n width: `${resolvedSize}px`,\n height: `${resolvedSize}px`,\n backgroundImage: `conic-gradient(${resolvedColor} 0%, transparent 5%, transparent 10%, ${resolvedColor} 100%)`,\n maskImage: SVG_MASK,\n maskSize: \"contain\",\n maskRepeat: \"no-repeat\",\n maskPosition: \"center\",\n ...props.style,\n }}\n />\n );\n\n if (value !== undefined) {\n return (\n <Progress.Root value={value} max={max}>\n <Progress.Track style={{ display: \"contents\" }}>\n <Progress.Indicator style={{ display: \"contents\" }}>\n {spinnerDiv}\n </Progress.Indicator>\n </Progress.Track>\n </Progress.Root>\n );\n }\n\n return spinnerDiv;\n});\n\nSpinner.displayName = \"Spinner\";\n","import 'src/components/Spinner/styles.css.ts.vanilla.css?source=QGtleWZyYW1lcyBzdHlsZXNfc3BpbkFuaW1hdGlvbl9fMTV5ZGdleTAgewogIDAlIHsKICAgIHJvdGF0ZTogMGRlZzsKICB9CiAgMTAwJSB7CiAgICByb3RhdGU6IDM2MGRlZzsKICB9Cn0KLnN0eWxlc19zcGlubmVyU3R5bGVzX18xNXlkZ2V5MSB7CiAgd2lkdGg6IDIycHg7CiAgaGVpZ2h0OiAyMnB4OwogIGFuaW1hdGlvbjogc3R5bGVzX3NwaW5BbmltYXRpb25fXzE1eWRnZXkwIDJzIGxpbmVhciBpbmZpbml0ZTsKfQ';\nexport var spinnerStyles = 'styles_spinnerStyles__15ydgey1';","import 'src/theme/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAA-1d247buhV9P19BHL80QBzofjtPMxkEzVvRFuhjQEmUrRlZ8kjy2J6i_15QtiVeNmlppiiKghEmQaK1Nvfa2hJphQv-1m_JjvzKSYEPVf_34S-_bC_ddt5b4KJ__obQep01VdN2631b7nB7XlflZtuTrh-BVoJWxMc29v5Q49sRbidolacBCR01fAQ7FGy7heeD4GviI9xN0CqLbNdOYThuX0asl6BV7FmxVSixTNZ-glaBbTlWwKFbkssFCeCCTNgpbAgXY4SOwAguBAWKRYjhIgxQtgAYLsANx2SZwuLPpKqao6w_S9CqKEiaRWr4FDwf0HkUe0r0iCUDNvMDG8KKhSgGdOo6BYhma7GhNcuizM5VUCbjLS1cHIRC4TYtIbVcjTJBqzQjbk6U6Cn0c4JWUZzHmTL0CH1J0MqPsyKzAahYiipBK4dkcRpCYLYSuwSt7DwOokiBZLKtE7SyisD1MYdNqwOR69AMVcuLolCBp8B72nBBpsaOyNcErVw3BZFiEVqaro1hLFuDbgBGWZbBQCbTfoAGcRxz0KbF9QYowiFBqx8_nqLHJzV8Cv42oB_j6EGJHrHHARs_-iGEFUtxGtDhk-OBaLYY5wStvn_3f9hKKJPx-3CRPc_iy9GRrKnzX4o7xKYzyIP_PXz4cY_FTCN0HgnDx6fo8Q5potDZxHt6dIIHNUWslE3nFCd8iLzvGhJbMJvOLHYQ-q6jZ7Bq6PxiPXiOzadWk0Pf4mp93Jb9NDXbwfBkK8ROvqHlCtN5pgjooSEw6dDphuT0UOMn9DDjBPQA0VJJ6cwTYnrAeK6adPLxPXoowWzmdPJxhl8gPK1wxgSnk481_OLQRXkiuVh0Ahf9ghXiFkLcbovz5tjJhd4kyNqfhh_n-ueVaP_4OvzVlk853h9A2Cno9m5Q-s_enaDSZSvvhqUho3thuav7fDcmjWcHM4KyZX2Zwgr5uO61rMOQviJuf943mxbvt-d1gXdlJS817SpBv_-l2e_Luvv9K-pwTe_wtiykAEdCrw5dWG0OFWaS3CXIuzUIgN-RvDzsJnidIF8D78iuTJsqnwhNggINgQfvExQC4C7DFVnnZbev8HldNHX_t_KduSleE-R4-9MdXlXW5M-Eb9I2QU50l0lH_IfA7HSpbgnOy3oDpNonyLGUA954UKoHrUh2RDHVN12qaZNDJT0myFaPNpCgJE9aeeNYYoZnuAkvrAzv-7KpgSTfE2Q7ytFuPCBPx0qG23nGiEKqjg3fABdit8NVJSfqOMlwq2tZUJqu9ipMo4lJekw9uz3OaGecTt0E8BM0xh0BzPkgQZF4njkdsuW7nZ-eEk7E9urtfDWdjxPkOtL4DABTARKARaQJ8sYUW5yXh47NMGMEXs8y-eWMvOtZJjRh2-p6mh26YNXfzrOADSef7HDdl9matG0zPXidrfAJecR1hywjHaOlFD43jciyLpoJ9ix8shhhR9zWZb2ZkC_CZ9L3n3VOTuu8bfZ5c6wnYEX79tZIV9SuyTGjdZcg2xYgfdNUfbmfQDWtqATCzOLQaRJkuzfIrrncfxxinyDbt3YdB6mbdsem85og1xJBXdUcJ0g73ME3SNbs9k1N6p4uokiV_6yLZryD1znpXvqGUdKxvaHn9jitCJN_z97Md6hNT5h2PbANxzDLen_o1xVOSaVJ-W0Ju8LthnlwHZdwhbWCc1IIBsnDw2zinhV1Brlipem8EC0ji8m71hLl1xi8BtdeFIK75K7DTqSzuJICd1EVhhCCAE8r4PK7su9cX3v5BTbfd26whCsKD5eQBcmRtu8ErtB3brykXoq-wx-IIWhIF4Xg-y7TNg3ElRTki4cXBZAZEbbDkkfuuoJdOei5Qs9t5jNFyVt2PaOnClJLdqmgZ4rd9syugOZQpbRf5iuGO62ar1vos12C_JmXGO6yeoF6qMeaGdrTps1J-9fLCk_qtD2ziJwTQGi314V0sQDtQr6gv2MWyHPoYvf1Mx6UQABJxmGhDLgR35aq4btRv8xR8SUtp6VaoMY83w-yx_nwYV9qyfdkfFM1KwDfkp61kC7o9-zhKtzvixufV-45ye3d3Sy20JGeuzB7uCE97ypiYRhBi7-wFHxDesFVyyK6JCX8UBRBSaRR0pGKZOp-9GJNLQWueDXxAipfu1STcHroe-ZVklSxTLF0FHlCjXLFw1CkCfcbmTmaWJtC8biCeZLIzTK6oHU7N2n-qqgWOiBNSvl5EVvI-CVBjubqgKtBr1KsD3iSmOdOsSDiWUJ-tV4cvPzzGsUCCGJJee5nqYMb4HWWRuHyt4r1HkCSku3mKYUufa_Xyc2D656cmPoeEmRprwtPLrNmenHmvd3IyNLea3ICD3X-kwt1XBjqUj1BzIkG0T2iBDav5nxjIwucndUZSGrel4W6vOLmtPhWsoTLKfHtKxdZ4HpRObqow3cWBbreSLwOd26DXdm8Em9hWzApSGL8j8WCOs0P5nYaH4QXFy7rEjkfSWL0oYhQ-8Uz248LwcvDH2keTTOmy-IND0peVDa7FwcyLydf2j5jApIS8qFQYCMWsxuRjcEr2yzsGjEbSd_2IwGhLizndiETgdf2_IGm0fTgy6xwmhcifqVfROtehvg7-EMzROVXCH4NvzmAmMIKzG8WJAyvw3zFOyRNBCH91wXpcysyv12SPbQu87sFyQOLM7_X8mm3Ah-a_IN-tTzSxGzfFP-jIvKEJFWvhkSa2BynmWkqGuM8M1u4K97nJs21RGAlyJ1NE1MObP3nAoHNZxw4t404__rt29UPgNsXwQzgLTADuLkVWPz2YZ0ZANhZrjYD6Hbsf9IMoPMZyGYA3a590QwAFERlBtB5DEZgpNm5_wkzgMpfIJsBAPE6M4CHHSLssNSYAYLAzTXoEUv3Y8Yk8GDsJ80ARZG7IRxYNgMUBYkwX2CNGcAKXMuBdtdDZgBge73KDKDetf8pM4DaYyCbAQDrgtoMQPdierEKzJsBgC32CjOAct_-Z8wASoeBbAYAbAs6M4Cb22IDa8wAwNZ6pRkgy_xCsWcfMAMURZjPNAMURZwqXAayGaAo0jji-3eGGcAKbF94YN43A1jYc-x7Q00UZ84ufdgMgCMv05AkM4CXp06gyQwyA4Rhmkf8M0VjBrByeoBo2AxgB_TQEAQzgF3QQ42f0HTGcTE9QDRoBogwPWC8ZAbQOQ0AM4DGxgCYAZQb_P-LZgD7uimd_rSbFP_J8f2vtx_rmxV8kZ0BA876OhzffP8LMNI0znbZOKxZgBsnsIRxVJaBeyOFX2T_AD-SqAh0EcwdhrMUcOOEkiLYWHBvpOgL5DLgh7pJMl4D4zWYmMZrYLwGxmswIozXwHgNjNfAeA2M18B4DYzXwHgNblzjNTBeA-M1MF4D4zWYEcB4DYzXwHgNjNfAeA2M18B4DYzXwHgNjNfAeA2M18B4DS4xjNfAeA2M18B4DWbQjNfgP-w1SEmPBa-Bv8BrkBXEL2A_AOQ1iHEW6-DTfy7Snc8pjhRgyGtg41DcDqj0GtieX6Szv3jAyt0i4jcJmy8eMF88YL54wHzxgPnigQvYfPGA-eIBCW2-eMB88YD54gFjBjBmAGMGMGYAYwb4_zQDsO8djBnAmAGMGcCYARaEMGYAYwYwZoD7TGMGuAQwZoAFAYwZwJgBjBnAmAGMGcCYAS40YwYwZgBjBjBmAGMGMGYAYwYwZgBjBjBmAGMGmEM1ZoBrAGMGUNGMGWAG-3_QDPBvr-DT6oiQAAA';\nimport 'src/components/Input/styles.css.ts.vanilla.css?source=#H4sIAAAAAAAAA8VY3Y6bOBi9n6ewRqrUSOsoECaTUs1V36CVdi9WVeSAE9wxNmub_Ey1776ygQQMSQgm2ptEGHO-42N8bM5UqiPFckVYlqu_BMoyLL5RJOVqtZMcBa8z8PsJgIxLoghnIRCYIkV2-OsTADGRGUXHEGwoPugG_Q9jInBUdI44zVOm72xRFoIdEp8hlBmKCNvCw0GuVl6wTmSw818mulfEKRdVP3MhIcO5EojCGIn3U39vbfpvOFNQkg8cAi_IDucmPagQMC5SRE-te0y2iQpBMJvpNkoYhknZ5s-KxylWCouKYwhmU0_f-PdpelsoitaYGrl6kFh0kQgukngp7jgIVD2TZpxhpiQ0I4GGNNT9fpAPDCkSW3yelv1Ej_3vGCkEY7wjEX57VmhNsXr-CQZIcgeTosyZyscYVIrHNY23Z5kiSp9_urCDBuPEce6NzTHFMclTR5IFyJnlrIslVzh9_JzqKmci_ghExptRXdie0GBkho7zaSja0znv4Bhj-a549n_o2FTQP47Ozk1DSz3_MOnn7mGC5GdzO4yJ1AsrntSWwjVjptrdz878xb2i3G2L0RNKBxf9xplChFllPQN8c2cXfK-bESVbBonCqQxBhJnC4rTbL4sta09ilYTAm80-6cs1FzEWIfCyA5Cckrj_ZrZG0ftW8JzF8Jrc-4So8xbmLYafLDYoJfRYPaWOGd8KlCXH8gaM8QbltKYynTzuCAKAEohVx7BCxmIkYDb1pRlkLqQepcIH1Xe6w4TvsDCTXse8IhUW5wFHvV-r2tu84VEu4Y5IsqZ4YkrzXGktQuB3vxaZICkSbcXnRvDyacg3G4mVAelLqzAWwnaIkvjtWYkcl85yRQ2B4xaT_gusc13_rk1fCX3rte1Y4b3mcLgz9LCd9lpyEGVcm9P2_ycSBDElV-U5t6jumyrVOrywjxS_RSfrmDzfGu0zFMdmxV5FKHtZEMGsPn0CxSSXN4CKvt9NV5vQPz1P_8XvhdP_fNH7OPsQka0vgPmvASpbGMHcTWabkhqmsw3zpe8x8zE6N0_l6RCZGxDBwlHlJqH9QJGbKNe2qoaa1QmxkHN-t5z2-TwZoKeFEXhugtqUxDBFbZhXR39wVfrC9-37YJ9o6R6MYRctgrmLa7TQkJt5OE9C50cpG2oirSl4HcFLWvQODpbSAov7Okv5aVwoHdyttJVNkAESNyEC301bi5AcJqqFsnQ0FUeRu4M9OtxSLMlfRnEUi97OyVAssLWbn7jq3xXD8cFuYqm_HMNMLHJHFy-xsHDTSiLOLh_0Xoy2ZbxShQfNMOH2Orqjgm9V8Dsr2C_KHQUCq0BgfcbbUM2da_EIOa6VGEePARUuYjWW3msdyls0oYrr-_W4UmFpVVgOkuP-Ak1LqocKyyI8oPgQAk8_mhIGS7RZRzR5QraiSsYZ_loPqaqGkyEZtBSJLWHlRTurNOldhgRm9WSHsAQLolqRo91eOEurtQgZ7eYqZay1N5LGersVNp5uXRU2DDOKIpxwGpfZ4dXQ0I5JUceBqYlfZUAj5WL9it03quEx2lS_9ZDijfrjwoba-YDQBZvpPGFmXquQ_kIa_yuXimyOMOJMYabqt0ysLxNB2Lt5ce8egc7oBoyiSvZurMAHBI1gioXgAmoyJ3-oS9BZ9WLi-x9d7rYiQCEAAA';\nexport var iconSizeVariants = {large:'styles_iconSizeVariants_large__vsoa475',medium:'styles_iconSizeVariants_medium__vsoa476',small:'styles_iconSizeVariants_small__vsoa477'};\nexport var inputClass = 'styles_inputClass__vsoa478';\nexport var inputContainerClass = 'styles_inputContainerClass__vsoa471';\nexport var inputContainerSizeVariants = {large:'styles_inputContainerSizeVariants_large__vsoa472',medium:'styles_inputContainerSizeVariants_medium__vsoa473',small:'styles_inputContainerSizeVariants_small__vsoa474'};\nexport var inputWrapperClass = 'styles_inputWrapperClass__vsoa470';"],"mappings":"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","names":["NavigationMenu","forwardRef","useCallback","useRef","useState","ScrollArea","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsx","forwardRef","useEffect","jsx","forwardRef","Image","useEffect","jsx","jsxs","NavigationMenu","useRef","jsx","jsxs","useRef","NavigationMenu","NavigationMenu","useRef","useState","forwardRef","useRef","useState","useEffect","useState","jsx","useState","useEffect","forwardRef","jsx","forwardRef","Spinner","jsx","jsxs","forwardRef","useState","useRef","_a","jsx","jsxs","useState","useRef","NavigationMenu","jsx","jsxs","useState","useRef","useCallback","NavigationMenu","forwardRef"]}