@brainfish-ai/components 0.22.6 → 0.22.8

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar.kcc3uFga.js","sources":["../../../src/layouts/sidebar/context.tsx","../../../src/layouts/sidebar/app-nav/app-nav.tsx","../../../src/layouts/sidebar/article-nav/article-search.tsx","../../../src/layouts/sidebar/article-nav/article-item.tsx","../../../src/layouts/sidebar/article-nav/article-tree.tsx","../../../src/layouts/sidebar/article-nav/article-nav.tsx","../../../src/layouts/sidebar/section-nav/section-nav.tsx","../../../src/layouts/sidebar/sidebar.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { ArticleNavItem, ItemLinkComponent } from './types';\n\nexport interface SidebarContextProps {\n collapsed: boolean;\n ItemLinkComponent: ItemLinkComponent;\n activeArticleId?: string;\n onSelectArticle?: (id: string) => void;\n onSearchArticles?: (value: string) => void;\n onAddArticle?: (parentId: string | null) => Promise<ArticleNavItem>;\n onMoreActions?: (articleId: string) => void;\n canMoveArticle?: (move: { id: string; parentId: string | null; index: number }) => boolean;\n onMoveArticle?: (moved: { id: string; parentId: string | null; index: number }) => void | Promise<void>;\n}\n\nexport interface SidebarContextValue extends SidebarContextProps {\n handleSearchArticles: (value: string) => void;\n isSearching: boolean;\n searchValue: string;\n setSearchValue: React.Dispatch<React.SetStateAction<string>>;\n /** Set when user selects from search results; tree uses this until activeArticleId catches up */\n lastSelectedArticleId: string | null;\n setLastSelectedArticleId: React.Dispatch<React.SetStateAction<string | null>>;\n}\n\nconst SidebarContext = React.createContext<SidebarContextValue | null>(null);\n\nexport function SidebarProvider({\n collapsed,\n ItemLinkComponent,\n activeArticleId,\n onSelectArticle,\n onSearchArticles,\n onAddArticle,\n onMoreActions,\n canMoveArticle,\n onMoveArticle,\n children,\n}: React.PropsWithChildren<SidebarContextProps>) {\n const [isSearching, setIsSearching] = React.useState<boolean>(false);\n const [searchValue, setSearchValue] = React.useState<string>('');\n const [lastSelectedArticleId, setLastSelectedArticleId] = React.useState<string | null>(null);\n\n const handleSearchArticles = React.useCallback(\n (value: string) => {\n const trimmedValue = value.trim();\n setIsSearching(trimmedValue !== '');\n onSearchArticles?.(value);\n },\n [onSearchArticles],\n );\n\n const contextValue = React.useMemo<SidebarContextValue>(\n () => ({\n collapsed,\n ItemLinkComponent,\n activeArticleId,\n onSearchArticles,\n onSelectArticle,\n onAddArticle,\n onMoreActions,\n canMoveArticle,\n onMoveArticle,\n isSearching,\n searchValue,\n setSearchValue,\n lastSelectedArticleId,\n setLastSelectedArticleId,\n handleSearchArticles,\n }),\n [\n isSearching,\n searchValue,\n lastSelectedArticleId,\n collapsed,\n ItemLinkComponent,\n activeArticleId,\n onSelectArticle,\n onSearchArticles,\n onAddArticle,\n onMoreActions,\n canMoveArticle,\n onMoveArticle,\n handleSearchArticles,\n ],\n );\n\n return <SidebarContext.Provider value={contextValue}>{children}</SidebarContext.Provider>;\n}\n\nexport function useSidebar() {\n const sidebarContext = React.useContext(SidebarContext);\n\n if (!sidebarContext) throw new Error('useSidebar must be used within SidebarProvider');\n\n return sidebarContext;\n}\n","import * as React from 'react';\nimport { ArrowBendUpLeft } from '@phosphor-icons/react';\n\nimport type { SidebarNavItem } from '../types';\nimport { useSidebar } from '../context';\n\nimport { Button } from '@/components/ui/button';\nimport { cn } from '@/lib/utils';\n\nexport interface AppNavProps {\n className?: string;\n items?: SidebarNavItem[];\n activeId?: string;\n showBack?: boolean;\n onBack?: () => void;\n}\n\nexport function AppNav({ className, items, activeId, showBack, onBack }: AppNavProps) {\n const { collapsed, ItemLinkComponent } = useSidebar();\n\n const hasBack = !!showBack && !!onBack;\n\n return (\n <nav className={cn('flex flex-col gap-2', className)} aria-label=\"App navigation\">\n {hasBack && (\n <Button\n variant=\"link\"\n className={cn('py-2 text-base text-default w-full', collapsed ? 'justify-center' : 'justify-start')}\n size=\"icon\"\n onClick={onBack}\n >\n <ArrowBendUpLeft aria-hidden=\"true\" />\n <span className={cn(collapsed && 'sr-only')}>back to Brainfish</span>\n </Button>\n )}\n {items?.map((item) => (\n <ItemLinkComponent\n key={item.id}\n className={cn(\n 'flex p-2 rounded-lg gap-1 text-base text-default items-center hover:text-primary-foreground focus:text-primary-foreground',\n item.id === activeId\n ? 'bg-primary text-primary-foreground font-bold'\n : 'hover:bg-lime-100 focus:bg-lime-100',\n )}\n href={item.href}\n data-sidebar-item-id={item.id}\n data-sidebar-item-type=\"app\"\n data-sidebar-app-nav-item-selected={item.id === activeId}\n >\n {item.Icon ? <item.Icon weight={item.id === activeId ? 'fill' : 'regular'} size={16} /> : null}\n <span className={cn('transition-opacity duration-200', collapsed && 'opacity-0 sr-only')}>{item.label}</span>\n </ItemLinkComponent>\n ))}\n </nav>\n );\n}\n","import * as React from 'react';\nimport { MagnifyingGlass, X } from '@phosphor-icons/react';\n\nimport { useSidebar } from '../context';\n\nimport { useDebounce } from '@/lib/hooks';\nimport { Input } from '@/components/ui/input';\n\nexport function ArticleSearch() {\n const { handleSearchArticles, searchValue, setSearchValue } = useSidebar();\n const [searchInteracted, setSearchInteracted] = React.useState(false);\n const debouncedSearchValue = useDebounce(searchValue, 300);\n const searchInputRef = React.useRef<HTMLInputElement>(null);\n\n React.useEffect(() => {\n if (searchInteracted) handleSearchArticles?.(debouncedSearchValue);\n }, [debouncedSearchValue, handleSearchArticles, searchInteracted]);\n\n return (\n <div className=\"mb-2\">\n <Input\n ref={searchInputRef}\n className=\"h-auto text-subtlest border-border-subtle\"\n startIcon={MagnifyingGlass}\n endIcon={searchValue ? X : undefined}\n onEndIconClick={() => {\n setSearchValue('');\n handleSearchArticles?.('');\n }}\n value={searchValue}\n onChange={(e) => {\n const value = e.target.value;\n if (!searchInteracted) setSearchInteracted(true);\n setSearchValue(value);\n if (value.trim() === '') handleSearchArticles('');\n }}\n placeholder=\"Find an article\"\n aria-label=\"Find an article\"\n type=\"search\"\n />\n </div>\n );\n}\n","import * as React from 'react';\nimport { Folder, FolderDashed, FolderOpen, File, FileDashed, DotsThree, Lightning, Plus } from '@phosphor-icons/react';\nimport { Key, TreeItemContentRenderProps, TreeStateContext, Button as AriaButton } from 'react-aria-components';\n\nimport { ArticleNavItem, ItemLinkComponent } from '../types';\n\nimport { cn } from '@/lib/utils';\nimport { Button } from '@/components/ui/button';\nimport { ButtonGroup } from '@/components/ui/button-group';\n\ntype ArticleItemTreeNode = {\n key: Key;\n value: ArticleNavItem;\n children: ArticleItemTreeNode[] | null;\n};\n\nfunction FolderSlotButton({ children }: { children: React.ReactNode }) {\n return (\n <AriaButton slot=\"chevron\" className=\"relative z-30 flex p-0\">\n <span className=\"relative inline-flex size-4 items-center justify-center\">{children}</span>\n </AriaButton>\n );\n}\n\nexport interface ArticleItemProps extends TreeItemContentRenderProps {\n ItemLinkComponent: ItemLinkComponent;\n item: ArticleItemTreeNode;\n onAddArticle?: (parentId: string) => void;\n isAddingArticle?: boolean;\n onMoreActions?: (articleId: string) => void;\n isSearching?: boolean;\n}\n\nexport function ArticleItem({\n item,\n hasChildItems,\n isSelected,\n isExpanded,\n ItemLinkComponent,\n onAddArticle,\n isAddingArticle,\n onMoreActions,\n isSearching,\n}: ArticleItemProps) {\n const treeState = React.useContext(TreeStateContext);\n\n const handleAddClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n onAddArticle?.(item.value.id);\n };\n\n const handleMoreClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n onMoreActions?.(item.value.id);\n };\n\n const showActions = !!((onAddArticle && !isAddingArticle) || onMoreActions);\n\n const isDraft = item.value.status === 'draft';\n\n let statusLabel: string;\n switch (item.value.status) {\n case 'draft':\n statusLabel = '(draft)';\n break;\n case 'unpublished':\n statusLabel = '(unpublished changes)';\n break;\n default:\n statusLabel = '';\n }\n\n const folderIcon = (\n <FolderSlotButton>\n <Folder\n aria-hidden=\"true\"\n weight=\"fill\"\n className={cn(\n 'absolute size-4 transition-opacity duration-200 ease-out',\n isExpanded ? 'opacity-0' : 'opacity-100',\n )}\n />\n <FolderOpen\n aria-hidden=\"true\"\n weight=\"fill\"\n className={cn(\n 'absolute size-4 transition-opacity duration-200 ease-out',\n isExpanded ? 'opacity-100' : 'opacity-0',\n )}\n />\n </FolderSlotButton>\n );\n\n const folderWithChangesIcon = (\n <FolderSlotButton>\n <FolderDashed\n aria-hidden=\"true\"\n weight=\"fill\"\n className={cn(\n 'absolute size-4 transition-opacity duration-200 ease-out',\n isExpanded ? 'opacity-0' : 'opacity-100',\n )}\n />\n <FolderOpen\n aria-hidden=\"true\"\n weight=\"fill\"\n className={cn(\n 'absolute size-4 transition-opacity duration-200 ease-out',\n isExpanded ? 'opacity-100' : 'opacity-0',\n )}\n />\n </FolderSlotButton>\n );\n\n const discoveryIconContent = (\n <>\n <span className=\"sr-only\">Knowledge Discovery</span>\n <Lightning aria-hidden=\"true\" weight=\"fill\" className=\"size-4 shrink-0 text-blue-600\" />\n </>\n );\n\n const discoveryIcon = hasChildItems ? (\n <FolderSlotButton>\n <span className=\"text-blue-600\">{discoveryIconContent}</span>\n </FolderSlotButton>\n ) : (\n <span className=\"flex size-4 shrink-0 items-center justify-center text-blue-600\">{discoveryIconContent}</span>\n );\n\n const fileIcon = (\n <span className=\"flex size-4 shrink-0 items-center justify-center\">\n <File aria-hidden=\"true\" className=\"size-4\" />\n </span>\n );\n\n const fileWithChangesIcon = (\n <span className=\"flex size-4 shrink-0 items-center justify-center\">\n <span className=\"sr-only\">Unpublished Changes</span>\n <FileDashed aria-hidden=\"true\" className=\"size-4\" />\n </span>\n );\n\n const renderStatusIcon = (status: ArticleNavItem['status'], hasChildItems: boolean) => {\n if (status === 'discovery') {\n return discoveryIcon;\n }\n\n const hasChanges = status === 'unpublished' || status === 'draft';\n\n if (hasChildItems) {\n return hasChanges ? folderWithChangesIcon : folderIcon;\n } else {\n return hasChanges ? fileWithChangesIcon : fileIcon;\n }\n };\n\n return (\n <div\n className={cn(\n 'group relative flex items-center gap-1 rounded-md py-1 pl-[calc(var(--tree-item-level)*0.5rem)] pr-4 h-9',\n isDraft && 'text-subtlest italic',\n isSelected\n ? 'bg-lime-100 text-primary-foreground font-bold after:absolute after:-right-0.5 after:top-1/2 after:h-1/2 after:w-1 after:-translate-y-1/2 after:bg-lime-400'\n : 'hover:bg-dark-200 hover:text-accent-foreground',\n )}\n >\n <AriaButton slot=\"drag\" className=\"sr-only\">\n Drag {item.value.label}\n </AriaButton>\n\n {isSearching ? null : renderStatusIcon(item.value.status, hasChildItems)}\n\n <ItemLinkComponent\n href={item.value.href}\n title={`${item.value.label} ${statusLabel}`}\n data-sidebar-item-id={item.value.id}\n data-sidebar-item-type=\"article\"\n className={cn(\n 'min-w-0 text-inherit text-sm truncate flex-1 after:absolute after:inset-0 after:z-10 pr-1',\n isSelected && 'text-primary-foreground',\n )}\n onClick={\n hasChildItems && treeState\n ? () => {\n treeState.toggleKey(item.key);\n }\n : undefined\n }\n onKeyDown={\n hasChildItems && treeState\n ? (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n treeState?.toggleKey(item.key);\n }\n }\n : undefined\n }\n >\n {item.value.label}\n </ItemLinkComponent>\n\n {showActions && (\n <ButtonGroup\n orientation=\"horizontal\"\n className={cn(\n 'absolute h-4 my-auto right-0.5 top-0 bottom-0 z-20 hidden items-center rounded-xl',\n 'group-hover:flex group-focus-within:flex',\n isSelected ? 'bg-lime-100 text-primary-foreground' : 'bg-dark-200',\n )}\n >\n {onMoreActions && (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n aria-label={`More actions for ${item.value.label}`}\n className=\"size-4 [&_svg]:size-3.5\"\n onClick={handleMoreClick}\n >\n <DotsThree aria-hidden=\"true\" weight=\"bold\" />\n </Button>\n )}\n\n {onAddArticle && !isAddingArticle && (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n aria-label={`Add article to ${item.value.label}`}\n className=\"size-4 [&_svg]:size-3.5\"\n onClick={handleAddClick}\n >\n <Plus aria-hidden=\"true\" />\n </Button>\n )}\n </ButtonGroup>\n )}\n </div>\n );\n}\n","import * as React from 'react';\nimport {\n useDragAndDrop,\n useTreeData,\n Tree,\n TreeItem,\n TreeItemContent,\n Collection,\n DropIndicator,\n type Key,\n} from 'react-aria-components';\n\nimport { ArticleNavItem } from '../types';\nimport { ArticleItem } from './article-item';\nimport { useSidebar } from '../context';\n\nlet placeholderCounter = 0;\n\ninterface ArticleTreeProps {\n articles: ArticleNavItem[];\n isSearching?: boolean;\n}\n\nfunction getParentKeys(items: ArticleNavItem[], targetId: string, parents: string[] = []): string[] | null {\n for (const item of items) {\n if (item.id === targetId) {\n return parents;\n }\n if (item.items && item.items.length > 0) {\n const result = getParentKeys(item.items, targetId, [...parents, item.id]);\n if (result) return result;\n }\n }\n\n return null;\n}\n\nexport function ArticleTree({ articles, isSearching }: ArticleTreeProps) {\n const {\n ItemLinkComponent,\n activeArticleId,\n lastSelectedArticleId,\n setLastSelectedArticleId,\n onSelectArticle,\n handleSearchArticles,\n setSearchValue,\n canMoveArticle,\n onMoveArticle,\n onAddArticle,\n onMoreActions,\n } = useSidebar();\n\n const effectiveActiveId = activeArticleId ?? lastSelectedArticleId ?? undefined;\n\n const articlesTree = useTreeData({\n initialItems: articles,\n getKey: (articleItem) => articleItem.id,\n getChildren: (articleItem) => articleItem.items ?? [],\n });\n\n const { dragAndDropHooks } = useDragAndDrop({\n getItems: (_keys, items: typeof articlesTree.items) =>\n items.map((item) => ({\n 'text/plain': item.value.label,\n })),\n onMove: (e) => {\n if (isSearching) return;\n const movedArticleId = Array.from(e.keys)[0];\n if (!movedArticleId) return;\n\n const targetItem = articlesTree.getItem(e.target.key);\n if (!targetItem) return;\n\n let movedToParentId: string | null;\n let movedToIndex: number;\n\n if (e.target.dropPosition === 'on') {\n movedToParentId = e.target.key.toString();\n movedToIndex = targetItem.children?.length ?? 0;\n } else {\n movedToParentId = targetItem.parentKey?.toString() ?? null;\n const siblings = movedToParentId ? (articlesTree.getItem(movedToParentId)?.children ?? []) : articlesTree.items;\n const targetIndex = siblings.findIndex((i) => i.key === e.target.key);\n movedToIndex = e.target.dropPosition === 'before' ? targetIndex : targetIndex + 1;\n }\n\n const moveDetails = {\n id: movedArticleId.toString(),\n parentId: movedToParentId,\n index: movedToIndex,\n };\n\n if (canMoveArticle && !canMoveArticle(moveDetails)) {\n return;\n }\n\n const movedItem = articlesTree.getItem(movedArticleId);\n const originalParentId = movedItem?.parentKey?.toString() ?? null;\n const originalSiblings = originalParentId\n ? (articlesTree.getItem(originalParentId)?.children ?? [])\n : articlesTree.items;\n const originalIndex = originalSiblings.findIndex((i) => i.key === movedArticleId);\n\n if (e.target.dropPosition === 'on') {\n articlesTree.move(movedArticleId, movedToParentId, movedToIndex);\n } else if (e.target.dropPosition === 'before') {\n articlesTree.moveBefore(e.target.key, e.keys);\n } else {\n articlesTree.moveAfter(e.target.key, e.keys);\n }\n\n const result = onMoveArticle?.(moveDetails);\n\n if (result && typeof result.then === 'function') {\n result.catch(() => {\n articlesTree.move(movedArticleId, originalParentId, originalIndex);\n });\n }\n },\n renderDropIndicator: (target) => (\n <DropIndicator\n target={target}\n className=\"outline outline-1 outline-lime-200 ml-[calc(var(--tree-item-level)*0.5rem)]\"\n />\n ),\n });\n\n // Selection when there's no active article from URL/context; used so the tree can show a selection before navigation.\n const [localSelectedKeys, setLocalSelectedKeys] = React.useState<Set<Key>>(new Set());\n const selectedKeys = effectiveActiveId != null ? new Set<Key>([effectiveActiveId]) : localSelectedKeys;\n\n const pathToActive = React.useMemo(() => {\n if (!effectiveActiveId || isSearching || !articlesTree?.items?.length) return [];\n const path = getParentKeys(\n articlesTree.items.map((node) => node.value),\n effectiveActiveId,\n );\n\n return path ?? [];\n }, [effectiveActiveId, isSearching, articlesTree.items]);\n\n const [expandedKeysState, setExpandedKeysState] = React.useState<Set<Key>>(new Set());\n const expandedKeys = React.useMemo(\n () => new Set<Key>([...pathToActive, ...expandedKeysState]),\n [pathToActive, expandedKeysState],\n );\n\n React.useEffect(() => {\n if (activeArticleId) setLastSelectedArticleId(null);\n }, [activeArticleId, setLastSelectedArticleId]);\n\n const pendingAddIdsRef = React.useRef<Set<string>>(new Set());\n const [pendingAddIds, setPendingAddIds] = React.useState<Set<string>>(new Set());\n\n const handleAddArticle = React.useCallback(\n (parentId: string) => {\n if (isSearching || !onAddArticle || pendingAddIdsRef.current.has(parentId)) return;\n\n pendingAddIdsRef.current.add(parentId);\n setPendingAddIds(new Set(pendingAddIdsRef.current));\n\n const tempId = `__placeholder_${++placeholderCounter}`;\n const placeholder: ArticleNavItem = { id: tempId, label: 'Untitled', href: '', status: 'draft' };\n\n articlesTree.append(parentId, placeholder);\n setExpandedKeysState((prev) => new Set([...prev, parentId]));\n\n onAddArticle(parentId).then(\n (created) => {\n articlesTree.remove(tempId);\n articlesTree.append(parentId, created);\n // Highlight the newly created article in the tree.\n setLocalSelectedKeys(new Set([created.id]));\n onSelectArticle?.(created.id);\n pendingAddIdsRef.current.delete(parentId);\n setPendingAddIds(new Set(pendingAddIdsRef.current));\n },\n () => {\n articlesTree.remove(tempId);\n pendingAddIdsRef.current.delete(parentId);\n setPendingAddIds(new Set(pendingAddIdsRef.current));\n },\n );\n },\n [isSearching, onAddArticle, articlesTree, onSelectArticle],\n );\n\n return (\n <Tree\n aria-label={isSearching ? 'Search results' : 'Articles tree'}\n items={articlesTree.items}\n dragAndDropHooks={isSearching ? undefined : dragAndDropHooks}\n className=\"flex flex-col gap-0.5\"\n selectionBehavior=\"toggle\"\n selectionMode=\"single\"\n expandedKeys={expandedKeys}\n onExpandedChange={setExpandedKeysState}\n selectedKeys={selectedKeys}\n disallowEmptySelection\n onSelectionChange={(selection) => {\n if (selection !== 'all') {\n // Keep local selection in sync when we're not driven by URL/active article.\n if (effectiveActiveId == null) setLocalSelectedKeys(selection);\n const selected = Array.from(selection)?.[0];\n\n if (selected) {\n const selectedId = selected.toString();\n onSelectArticle?.(selectedId);\n\n if (isSearching) {\n setLastSelectedArticleId(selectedId);\n setSearchValue('');\n handleSearchArticles?.('');\n }\n }\n }\n }}\n >\n {function renderItem(item) {\n return (\n <TreeItem className=\"list-none\" textValue={item.value.label} id={item.value.id}>\n <TreeItemContent>\n {(props) => (\n <ArticleItem\n ItemLinkComponent={ItemLinkComponent}\n item={item}\n onAddArticle={!isSearching && onAddArticle ? handleAddArticle : undefined}\n isAddingArticle={!isSearching && pendingAddIds.has(item.value.id)}\n onMoreActions={onMoreActions ? (articleId) => onMoreActions(articleId) : undefined}\n isSearching={isSearching}\n {...props}\n />\n )}\n </TreeItemContent>\n\n {!isSearching && item.children && <Collection items={item.children}>{renderItem}</Collection>}\n </TreeItem>\n );\n }}\n </Tree>\n );\n}\n","import * as React from 'react';\nimport { Article } from '@phosphor-icons/react';\n\nimport { useSidebar } from '../context';\nimport { ArticleNavItem } from '../types';\nimport { ArticleSearch } from './article-search';\nimport { ArticleTree } from './article-tree';\n\nimport { cn } from '@/lib/utils';\nimport { Button } from '@/components/ui/button';\n\nexport interface ArticleNavProps {\n className?: string;\n articles?: ArticleNavItem[];\n}\n\nfunction flattenAndFilterArticles(articles: ArticleNavItem[], query: string): ArticleNavItem[] {\n const result: ArticleNavItem[] = [];\n const queryWords = query.toLowerCase().split(/\\s+/).filter(Boolean);\n\n const traverse = (items: ArticleNavItem[]) => {\n items.forEach((item) => {\n const label = item.label.toLowerCase();\n const isMatch = queryWords.every((word) => label.includes(word));\n\n if (isMatch) {\n // Keep the original item but without its children for the flat view\n result.push({ ...item, items: [] });\n }\n if (item.items) {\n traverse(item.items);\n }\n });\n };\n\n traverse(articles);\n\n return result;\n}\n\nexport function ArticleNav({ articles, className }: ArticleNavProps) {\n const { isSearching, searchValue, onAddArticle } = useSidebar();\n\n const filteredArticles = React.useMemo(() => {\n if (!isSearching || !articles) return [];\n\n return flattenAndFilterArticles(articles, searchValue);\n }, [articles, isSearching, searchValue]);\n\n return (\n <div className={cn('flex flex-col gap-0.5 px-4', className)}>\n {!isSearching && (!articles || articles.length === 0) ? (\n <Button variant=\"ghost\" className=\"text-subtlest\" onClick={() => onAddArticle?.(null).catch(() => {})}>\n <Article aria-hidden=\"true\" />\n Create first article or folder\n </Button>\n ) : (\n <>\n <ArticleSearch />\n {isSearching ? (\n filteredArticles.length > 0 ? (\n <ArticleTree key={searchValue} articles={filteredArticles} isSearching />\n ) : (\n <span className=\"text-subtlest text-sm px-2\">No articles found</span>\n )\n ) : articles?.length ? (\n <nav aria-label=\"Articles navigation\">\n <ArticleTree articles={articles} />\n </nav>\n ) : null}\n </>\n )}\n </div>\n );\n}\n","import * as React from 'react';\n\nimport { SidebarNavItem } from '../types';\nimport { useSidebar } from '../context';\n\nimport { cn } from '@/lib/utils';\n\nexport interface SectionNavProps {\n className?: string;\n items: SidebarNavItem[];\n activeId?: string;\n}\n\nexport function SectionNav({ className, items, activeId }: SectionNavProps) {\n const { ItemLinkComponent } = useSidebar();\n\n return (\n <nav className={cn('flex flex-col', className)} aria-label=\"App section navigation\">\n {items.map((item) => (\n <ItemLinkComponent\n key={item.id}\n href={item.href}\n data-sidebar-item-id={item.id}\n data-sidebar-item-type=\"section\"\n data-sidebar-section-nav-item-selected={item.id === activeId}\n className={cn(\n 'flex p-2 mx-4 text-base text-default relative rounded-lg',\n 'after:transition-opacity after:absolute after:top-0 after:bottom-0 after:-right-4 after:w-2 after:bg-primary after:rounded-l-md after:opacity-0',\n 'hover:bg-lime-100 focus:bg-lime-100 hover:text-primary-foreground focus:text-primary-foreground',\n item.id === activeId && 'font-bold after:opacity-100',\n )}\n >\n {item.label}\n </ItemLinkComponent>\n ))}\n </nav>\n );\n}\n","import * as React from 'react';\n\nimport { SidebarNavItem, ArticleNavItem } from './types';\nimport { SidebarContextProps, SidebarProvider } from './context';\nimport { AppNav } from './app-nav';\nimport { ArticleNav } from './article-nav';\nimport { SectionNav } from './section-nav';\n\nimport { ScrollArea } from '@/components/ui/scroll-area';\nimport { cn } from '@/lib/utils';\n\nexport interface SidebarProps extends React.ComponentPropsWithoutRef<'aside'>, SidebarContextProps {\n showAppBack?: boolean;\n onAppBack?: () => void;\n appNavItems?: SidebarNavItem[];\n appNavActiveId?: string;\n showArticles?: boolean;\n articles?: ArticleNavItem[];\n sectionNavItems?: SidebarNavItem[];\n sectionNavActiveId?: string;\n}\n\nexport const Sidebar = React.forwardRef<HTMLElement, SidebarProps>(function Sidebar(\n {\n className,\n ItemLinkComponent,\n collapsed,\n showAppBack,\n onAppBack,\n appNavItems,\n appNavActiveId,\n sectionNavItems,\n sectionNavActiveId,\n activeArticleId,\n showArticles,\n articles,\n onSelectArticle,\n onSearchArticles,\n onAddArticle,\n onMoreActions,\n canMoveArticle,\n onMoveArticle,\n ...props\n },\n ref,\n) {\n // indicates if the scroll area is at the bottom\n const [atScrollBottom, setAtScrollBottom] = React.useState(false);\n\n // detect if the scroll area is at the bottom\n const handleScroll = (event: React.UIEvent<HTMLDivElement>) => {\n const { scrollHeight, scrollTop, clientHeight } = event.currentTarget;\n setAtScrollBottom(scrollTop + clientHeight >= scrollHeight);\n };\n\n return (\n <SidebarProvider\n collapsed={!!collapsed}\n ItemLinkComponent={ItemLinkComponent}\n activeArticleId={activeArticleId}\n onSelectArticle={onSelectArticle}\n onSearchArticles={onSearchArticles}\n onAddArticle={onAddArticle}\n onMoreActions={onMoreActions}\n canMoveArticle={canMoveArticle}\n onMoveArticle={onMoveArticle}\n >\n <aside\n ref={ref}\n {...props}\n className={cn(\n 'py-4 transition-width duration-200 ease-in-out flex flex-col h-dvh',\n collapsed ? 'w-[64px]' : 'w-[260px]',\n className,\n )}\n aria-label=\"Application navigation\"\n >\n <AppNav\n className={cn(\n 'px-4 flex-shrink-0',\n appNavItems && appNavItems.length > 0 && 'pb-4',\n !collapsed && 'border-b border-border-subtle',\n )}\n showBack={showAppBack}\n items={appNavItems}\n activeId={appNavActiveId}\n onBack={onAppBack}\n />\n\n {!collapsed && (\n <>\n {showArticles && (\n <ScrollArea onScroll={handleScroll}>\n <ArticleNav className=\"py-4 max-w-[var(--left-nav-width,inherit)]\" articles={articles} />\n </ScrollArea>\n )}\n {sectionNavItems && sectionNavItems.length > 0 && (\n <SectionNav\n className={cn('pt-4 flex-shrink-0', !collapsed && !atScrollBottom && 'border-t border-subtle')}\n items={sectionNavItems}\n activeId={sectionNavActiveId}\n />\n )}\n </>\n )}\n </aside>\n </SidebarProvider>\n );\n});\n"],"names":["ItemLinkComponent","AriaButton","hasChildItems","Sidebar"],"mappings":";;;;;;;;;;AA0BA,MAAM,cAAA,GAAiB,KAAA,CAAM,aAAA,CAA0C,IAAI,CAAA;AAEpE,SAAS,eAAA,CAAgB;AAAA,EAC9B,SAAA;AAAA,EACA,iBAAA,EAAAA,kBAAAA;AAAA,EACA,eAAA;AAAA,EACA,eAAA;AAAA,EACA,gBAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA,EACA,cAAA;AAAA,EACA,aAAA;AAAA,EACA;AACF,CAAA,EAAiD;AAC/C,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,KAAA,CAAM,SAAkB,KAAK,CAAA;AACnE,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,KAAA,CAAM,SAAiB,EAAE,CAAA;AAC/D,EAAA,MAAM,CAAC,qBAAA,EAAuB,wBAAwB,CAAA,GAAI,KAAA,CAAM,SAAwB,IAAI,CAAA;AAE5F,EAAA,MAAM,uBAAuB,KAAA,CAAM,WAAA;AAAA,IACjC,CAAC,KAAA,KAAkB;AACjB,MAAA,MAAM,YAAA,GAAe,MAAM,IAAA,EAAK;AAChC,MAAA,cAAA,CAAe,iBAAiB,EAAE,CAAA;AAClC,MAAA,gBAAA,GAAmB,KAAK,CAAA;AAAA,IAC1B,CAAA;AAAA,IACA,CAAC,gBAAgB;AAAA,GACnB;AAEA,EAAA,MAAM,eAAe,KAAA,CAAM,OAAA;AAAA,IACzB,OAAO;AAAA,MACL,SAAA;AAAA,MACA,iBAAA,EAAAA,kBAAAA;AAAA,MACA,eAAA;AAAA,MACA,gBAAA;AAAA,MACA,eAAA;AAAA,MACA,YAAA;AAAA,MACA,aAAA;AAAA,MACA,cAAA;AAAA,MACA,aAAA;AAAA,MACA,WAAA;AAAA,MACA,WAAA;AAAA,MACA,cAAA;AAAA,MACA,qBAAA;AAAA,MACA,wBAAA;AAAA,MACA;AAAA,KACF,CAAA;AAAA,IACA;AAAA,MACE,WAAA;AAAA,MACA,WAAA;AAAA,MACA,qBAAA;AAAA,MACA,SAAA;AAAA,MACAA,kBAAAA;AAAA,MACA,eAAA;AAAA,MACA,eAAA;AAAA,MACA,gBAAA;AAAA,MACA,YAAA;AAAA,MACA,aAAA;AAAA,MACA,cAAA;AAAA,MACA,aAAA;AAAA,MACA;AAAA;AACF,GACF;AAEA,EAAA,2CAAQ,cAAA,CAAe,QAAA,EAAf,EAAwB,KAAA,EAAO,gBAAe,QAAS,CAAA;AACjE;AAEO,SAAS,UAAA,GAAa;AAC3B,EAAA,MAAM,cAAA,GAAiB,KAAA,CAAM,UAAA,CAAW,cAAc,CAAA;AAEtD,EAAA,IAAI,CAAC,cAAA,EAAgB,MAAM,IAAI,MAAM,gDAAgD,CAAA;AAErF,EAAA,OAAO,cAAA;AACT;;AChFO,SAAS,OAAO,EAAE,SAAA,EAAW,OAAO,QAAA,EAAU,QAAA,EAAU,QAAO,EAAgB;AACpF,EAAA,MAAM,EAAE,SAAA,EAAW,iBAAA,EAAkB,GAAI,UAAA,EAAW;AAEpD,EAAA,MAAM,OAAA,GAAU,CAAC,CAAC,QAAA,IAAY,CAAC,CAAC,MAAA;AAEhC,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,SAAI,SAAA,EAAW,EAAA,CAAG,uBAAuB,SAAS,CAAA,EAAG,YAAA,EAAW,gBAAA,EAAA,EAC9D,OAAA,oBACC,KAAA,CAAA,aAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,OAAA,EAAQ,MAAA;AAAA,MACR,SAAA,EAAW,EAAA,CAAG,oCAAA,EAAsC,SAAA,GAAY,mBAAmB,eAAe,CAAA;AAAA,MAClG,IAAA,EAAK,MAAA;AAAA,MACL,OAAA,EAAS;AAAA,KAAA;AAAA,oBAET,KAAA,CAAA,aAAA,CAAC,eAAA,EAAA,EAAgB,aAAA,EAAY,MAAA,EAAO,CAAA;AAAA,wCACnC,MAAA,EAAA,EAAK,SAAA,EAAW,GAAG,SAAA,IAAa,SAAS,KAAG,mBAAiB;AAAA,GAChE,EAED,KAAA,EAAO,GAAA,CAAI,CAAC,IAAA,qBACX,KAAA,CAAA,aAAA;AAAA,IAAC,iBAAA;AAAA,IAAA;AAAA,MACC,KAAK,IAAA,CAAK,EAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,2HAAA;AAAA,QACA,IAAA,CAAK,EAAA,KAAO,QAAA,GACR,8CAAA,GACA;AAAA,OACN;AAAA,MACA,MAAM,IAAA,CAAK,IAAA;AAAA,MACX,wBAAsB,IAAA,CAAK,EAAA;AAAA,MAC3B,wBAAA,EAAuB,KAAA;AAAA,MACvB,oCAAA,EAAoC,KAAK,EAAA,KAAO;AAAA,KAAA;AAAA,IAE/C,IAAA,CAAK,IAAA,mBAAO,KAAA,CAAA,aAAA,CAAC,IAAA,CAAK,MAAL,EAAU,MAAA,EAAQ,IAAA,CAAK,EAAA,KAAO,QAAA,GAAW,MAAA,GAAS,SAAA,EAAW,IAAA,EAAM,IAAI,CAAA,GAAK,IAAA;AAAA,oBAC1F,KAAA,CAAA,aAAA,CAAC,UAAK,SAAA,EAAW,EAAA,CAAG,mCAAmC,SAAA,IAAa,mBAAmB,CAAA,EAAA,EAAI,IAAA,CAAK,KAAM;AAAA,GAEzG,CACH,CAAA;AAEJ;;AC/CO,SAAS,aAAA,GAAgB;AAC9B,EAAA,MAAM,EAAE,oBAAA,EAAsB,WAAA,EAAa,cAAA,KAAmB,UAAA,EAAW;AACzE,EAAA,MAAM,CAAC,gBAAA,EAAkB,mBAAmB,CAAA,GAAI,KAAA,CAAM,SAAS,KAAK,CAAA;AACpE,EAAA,MAAM,oBAAA,GAAuB,WAAA,CAAY,WAAA,EAAa,GAAG,CAAA;AACzD,EAAA,MAAM,cAAA,GAAiB,KAAA,CAAM,MAAA,CAAyB,IAAI,CAAA;AAE1D,EAAA,KAAA,CAAM,UAAU,MAAM;AACpB,IAAA,IAAI,gBAAA,yBAAyC,oBAAoB,CAAA;AAAA,EACnE,CAAA,EAAG,CAAC,oBAAA,EAAsB,oBAAA,EAAsB,gBAAgB,CAAC,CAAA;AAEjE,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EAAA,kBACb,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,GAAA,EAAK,cAAA;AAAA,MACL,SAAA,EAAU,2CAAA;AAAA,MACV,SAAA,EAAW,eAAA;AAAA,MACX,OAAA,EAAS,cAAc,CAAA,GAAI,MAAA;AAAA,MAC3B,gBAAgB,MAAM;AACpB,QAAA,cAAA,CAAe,EAAE,CAAA;AACjB,QAAA,oBAAA,GAAuB,EAAE,CAAA;AAAA,MAC3B,CAAA;AAAA,MACA,KAAA,EAAO,WAAA;AAAA,MACP,QAAA,EAAU,CAAC,CAAA,KAAM;AACf,QAAA,MAAM,KAAA,GAAQ,EAAE,MAAA,CAAO,KAAA;AACvB,QAAA,IAAI,CAAC,gBAAA,EAAkB,mBAAA,CAAoB,IAAI,CAAA;AAC/C,QAAA,cAAA,CAAe,KAAK,CAAA;AACpB,QAAA,IAAI,KAAA,CAAM,IAAA,EAAK,KAAM,EAAA,uBAAyB,EAAE,CAAA;AAAA,MAClD,CAAA;AAAA,MACA,WAAA,EAAY,iBAAA;AAAA,MACZ,YAAA,EAAW,iBAAA;AAAA,MACX,IAAA,EAAK;AAAA;AAAA,GAET,CAAA;AAEJ;;AC1BA,SAAS,gBAAA,CAAiB,EAAE,QAAA,EAAS,EAAkC;AACrE,EAAA,uBACE,KAAA,CAAA,aAAA,CAACC,QAAA,EAAA,EAAW,IAAA,EAAK,SAAA,EAAU,SAAA,EAAU,wBAAA,EAAA,kBACnC,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,yDAAA,EAAA,EAA2D,QAAS,CACtF,CAAA;AAEJ;AAWO,SAAS,WAAA,CAAY;AAAA,EAC1B,IAAA;AAAA,EACA,aAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,iBAAA,EAAAD,kBAAAA;AAAA,EACA,YAAA;AAAA,EACA,eAAA;AAAA,EACA,aAAA;AAAA,EACA;AACF,CAAA,EAAqB;AACnB,EAAA,MAAM,SAAA,GAAY,KAAA,CAAM,UAAA,CAAW,gBAAgB,CAAA;AAEnD,EAAA,MAAM,cAAA,GAAiB,CAAC,CAAA,KAAwB;AAC9C,IAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,IAAA,YAAA,GAAe,IAAA,CAAK,MAAM,EAAE,CAAA;AAAA,EAC9B,CAAA;AAEA,EAAA,MAAM,eAAA,GAAkB,CAAC,CAAA,KAAwB;AAC/C,IAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,IAAA,aAAA,GAAgB,IAAA,CAAK,MAAM,EAAE,CAAA;AAAA,EAC/B,CAAA;AAEA,EAAA,MAAM,WAAA,GAAc,CAAC,EAAG,YAAA,IAAgB,CAAC,eAAA,IAAoB,aAAA,CAAA;AAE7D,EAAA,MAAM,OAAA,GAAU,IAAA,CAAK,KAAA,CAAM,MAAA,KAAW,OAAA;AAEtC,EAAA,IAAI,WAAA;AACJ,EAAA,QAAQ,IAAA,CAAK,MAAM,MAAA;AAAQ,IACzB,KAAK,OAAA;AACH,MAAA,WAAA,GAAc,SAAA;AACd,MAAA;AAAA,IACF,KAAK,aAAA;AACH,MAAA,WAAA,GAAc,uBAAA;AACd,MAAA;AAAA,IACF;AACE,MAAA,WAAA,GAAc,EAAA;AAAA;AAGlB,EAAA,MAAM,UAAA,uCACH,gBAAA,EAAA,IAAA,kBACC,KAAA,CAAA,aAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,aAAA,EAAY,MAAA;AAAA,MACZ,MAAA,EAAO,MAAA;AAAA,MACP,SAAA,EAAW,EAAA;AAAA,QACT,0DAAA;AAAA,QACA,aAAa,WAAA,GAAc;AAAA;AAC7B;AAAA,GACF,kBACA,KAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,aAAA,EAAY,MAAA;AAAA,MACZ,MAAA,EAAO,MAAA;AAAA,MACP,SAAA,EAAW,EAAA;AAAA,QACT,0DAAA;AAAA,QACA,aAAa,aAAA,GAAgB;AAAA;AAC/B;AAAA,GAEJ,CAAA;AAGF,EAAA,MAAM,qBAAA,uCACH,gBAAA,EAAA,IAAA,kBACC,KAAA,CAAA,aAAA;AAAA,IAAC,YAAA;AAAA,IAAA;AAAA,MACC,aAAA,EAAY,MAAA;AAAA,MACZ,MAAA,EAAO,MAAA;AAAA,MACP,SAAA,EAAW,EAAA;AAAA,QACT,0DAAA;AAAA,QACA,aAAa,WAAA,GAAc;AAAA;AAC7B;AAAA,GACF,kBACA,KAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,aAAA,EAAY,MAAA;AAAA,MACZ,MAAA,EAAO,MAAA;AAAA,MACP,SAAA,EAAW,EAAA;AAAA,QACT,0DAAA;AAAA,QACA,aAAa,aAAA,GAAgB;AAAA;AAC/B;AAAA,GAEJ,CAAA;AAGF,EAAA,MAAM,uCACJ,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,kBACE,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,aAAU,qBAAmB,CAAA,kBAC7C,KAAA,CAAA,aAAA,CAAC,SAAA,EAAA,EAAU,eAAY,MAAA,EAAO,MAAA,EAAO,MAAA,EAAO,SAAA,EAAU,iCAAgC,CACxF,CAAA;AAGF,EAAA,MAAM,aAAA,GAAgB,aAAA,mBACpB,KAAA,CAAA,aAAA,CAAC,gBAAA,EAAA,IAAA,sCACE,MAAA,EAAA,EAAK,SAAA,EAAU,eAAA,EAAA,EAAiB,oBAAqB,CACxD,CAAA,mBAEA,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,oEAAkE,oBAAqB,CAAA;AAGzG,EAAA,MAAM,QAAA,mBACJ,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,kDAAA,EAAA,kBACd,KAAA,CAAA,aAAA,CAAC,IAAA,EAAA,EAAK,aAAA,EAAY,MAAA,EAAO,SAAA,EAAU,QAAA,EAAS,CAC9C,CAAA;AAGF,EAAA,MAAM,sCACJ,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,kDAAA,EAAA,sCACb,MAAA,EAAA,EAAK,SAAA,EAAU,SAAA,EAAA,EAAU,qBAAmB,mBAC7C,KAAA,CAAA,aAAA,CAAC,UAAA,EAAA,EAAW,eAAY,MAAA,EAAO,SAAA,EAAU,UAAS,CACpD,CAAA;AAGF,EAAA,MAAM,gBAAA,GAAmB,CAAC,MAAA,EAAkCE,cAAAA,KAA2B;AACrF,IAAA,IAAI,WAAW,WAAA,EAAa;AAC1B,MAAA,OAAO,aAAA;AAAA,IACT;AAEA,IAAA,MAAM,UAAA,GAAa,MAAA,KAAW,aAAA,IAAiB,MAAA,KAAW,OAAA;AAE1D,IAAA,IAAIA,cAAAA,EAAe;AACjB,MAAA,OAAO,aAAa,qBAAA,GAAwB,UAAA;AAAA,IAC9C,CAAA,MAAO;AACL,MAAA,OAAO,aAAa,mBAAA,GAAsB,QAAA;AAAA,IAC5C;AAAA,EACF,CAAA;AAEA,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,0GAAA;AAAA,QACA,OAAA,IAAW,sBAAA;AAAA,QACX,aACI,4JAAA,GACA;AAAA;AACN,KAAA;AAAA,oBAEA,KAAA,CAAA,aAAA,CAACD,YAAW,IAAA,EAAK,MAAA,EAAO,WAAU,SAAA,EAAA,EAAU,OAAA,EACpC,IAAA,CAAK,KAAA,CAAM,KACnB,CAAA;AAAA,IAEC,cAAc,IAAA,GAAO,gBAAA,CAAiB,IAAA,CAAK,KAAA,CAAM,QAAQ,aAAa,CAAA;AAAA,oBAEvE,KAAA,CAAA,aAAA;AAAA,MAACD,kBAAAA;AAAA,MAAA;AAAA,QACC,IAAA,EAAM,KAAK,KAAA,CAAM,IAAA;AAAA,QACjB,OAAO,CAAA,EAAG,IAAA,CAAK,KAAA,CAAM,KAAK,IAAI,WAAW,CAAA,CAAA;AAAA,QACzC,sBAAA,EAAsB,KAAK,KAAA,CAAM,EAAA;AAAA,QACjC,wBAAA,EAAuB,SAAA;AAAA,QACvB,SAAA,EAAW,EAAA;AAAA,UACT,2FAAA;AAAA,UACA,UAAA,IAAc;AAAA,SAChB;AAAA,QACA,OAAA,EACE,aAAA,IAAiB,SAAA,GACb,MAAM;AACJ,UAAA,SAAA,CAAU,SAAA,CAAU,KAAK,GAAG,CAAA;AAAA,QAC9B,CAAA,GACA,MAAA;AAAA,QAEN,SAAA,EACE,aAAA,IAAiB,SAAA,GACb,CAAC,CAAA,KAAM;AACL,UAAA,IAAI,CAAA,CAAE,GAAA,KAAQ,OAAA,IAAW,CAAA,CAAE,QAAQ,GAAA,EAAK;AACtC,YAAA,SAAA,EAAW,SAAA,CAAU,KAAK,GAAG,CAAA;AAAA,UAC/B;AAAA,QACF,CAAA,GACA;AAAA,OAAA;AAAA,MAGL,KAAK,KAAA,CAAM;AAAA,KACd;AAAA,IAEC,WAAA,oBACC,KAAA,CAAA,aAAA;AAAA,MAAC,WAAA;AAAA,MAAA;AAAA,QACC,WAAA,EAAY,YAAA;AAAA,QACZ,SAAA,EAAW,EAAA;AAAA,UACT,mFAAA;AAAA,UACA,0CAAA;AAAA,UACA,aAAa,qCAAA,GAAwC;AAAA;AACvD,OAAA;AAAA,MAEC,aAAA,oBACC,KAAA,CAAA,aAAA;AAAA,QAAC,MAAA;AAAA,QAAA;AAAA,UACC,OAAA,EAAQ,OAAA;AAAA,UACR,IAAA,EAAK,MAAA;AAAA,UACL,YAAA,EAAY,CAAA,iBAAA,EAAoB,IAAA,CAAK,KAAA,CAAM,KAAK,CAAA,CAAA;AAAA,UAChD,SAAA,EAAU,yBAAA;AAAA,UACV,OAAA,EAAS;AAAA,SAAA;AAAA,wBAET,KAAA,CAAA,aAAA,CAAC,SAAA,EAAA,EAAU,aAAA,EAAY,MAAA,EAAO,QAAO,MAAA,EAAO;AAAA,OAC9C;AAAA,MAGD,YAAA,IAAgB,CAAC,eAAA,oBAChB,KAAA,CAAA,aAAA;AAAA,QAAC,MAAA;AAAA,QAAA;AAAA,UACC,OAAA,EAAQ,OAAA;AAAA,UACR,IAAA,EAAK,MAAA;AAAA,UACL,YAAA,EAAY,CAAA,eAAA,EAAkB,IAAA,CAAK,KAAA,CAAM,KAAK,CAAA,CAAA;AAAA,UAC9C,SAAA,EAAU,yBAAA;AAAA,UACV,OAAA,EAAS;AAAA,SAAA;AAAA,wBAET,KAAA,CAAA,aAAA,CAAC,IAAA,EAAA,EAAK,aAAA,EAAY,MAAA,EAAO;AAAA;AAC3B;AAEJ,GAEJ;AAEJ;;AC7NA,IAAI,kBAAA,GAAqB,CAAA;AAOzB,SAAS,aAAA,CAAc,KAAA,EAAyB,QAAA,EAAkB,OAAA,GAAoB,EAAC,EAAoB;AACzG,EAAA,KAAA,MAAW,QAAQ,KAAA,EAAO;AACxB,IAAA,IAAI,IAAA,CAAK,OAAO,QAAA,EAAU;AACxB,MAAA,OAAO,OAAA;AAAA,IACT;AACA,IAAA,IAAI,IAAA,CAAK,KAAA,IAAS,IAAA,CAAK,KAAA,CAAM,SAAS,CAAA,EAAG;AACvC,MAAA,MAAM,MAAA,GAAS,aAAA,CAAc,IAAA,CAAK,KAAA,EAAO,QAAA,EAAU,CAAC,GAAG,OAAA,EAAS,IAAA,CAAK,EAAE,CAAC,CAAA;AACxE,MAAA,IAAI,QAAQ,OAAO,MAAA;AAAA,IACrB;AAAA,EACF;AAEA,EAAA,OAAO,IAAA;AACT;AAEO,SAAS,WAAA,CAAY,EAAE,QAAA,EAAU,WAAA,EAAY,EAAqB;AACvE,EAAA,MAAM;AAAA,IACJ,iBAAA;AAAA,IACA,eAAA;AAAA,IACA,qBAAA;AAAA,IACA,wBAAA;AAAA,IACA,eAAA;AAAA,IACA,oBAAA;AAAA,IACA,cAAA;AAAA,IACA,cAAA;AAAA,IACA,aAAA;AAAA,IACA,YAAA;AAAA,IACA;AAAA,MACE,UAAA,EAAW;AAEf,EAAA,MAAM,iBAAA,GAAoB,mBAAmB,qBAAA,IAAyB,MAAA;AAEtE,EAAA,MAAM,eAAe,WAAA,CAAY;AAAA,IAC/B,YAAA,EAAc,QAAA;AAAA,IACd,MAAA,EAAQ,CAAC,WAAA,KAAgB,WAAA,CAAY,EAAA;AAAA,IACrC,WAAA,EAAa,CAAC,WAAA,KAAgB,WAAA,CAAY,SAAS;AAAC,GACrD,CAAA;AAED,EAAA,MAAM,EAAE,gBAAA,EAAiB,GAAI,cAAA,CAAe;AAAA,IAC1C,UAAU,CAAC,KAAA,EAAO,UAChB,KAAA,CAAM,GAAA,CAAI,CAAC,IAAA,MAAU;AAAA,MACnB,YAAA,EAAc,KAAK,KAAA,CAAM;AAAA,KAC3B,CAAE,CAAA;AAAA,IACJ,MAAA,EAAQ,CAAC,CAAA,KAAM;AACb,MAAA,IAAI,WAAA,EAAa;AACjB,MAAA,MAAM,iBAAiB,KAAA,CAAM,IAAA,CAAK,CAAA,CAAE,IAAI,EAAE,CAAC,CAAA;AAC3C,MAAA,IAAI,CAAC,cAAA,EAAgB;AAErB,MAAA,MAAM,UAAA,GAAa,YAAA,CAAa,OAAA,CAAQ,CAAA,CAAE,OAAO,GAAG,CAAA;AACpD,MAAA,IAAI,CAAC,UAAA,EAAY;AAEjB,MAAA,IAAI,eAAA;AACJ,MAAA,IAAI,YAAA;AAEJ,MAAA,IAAI,CAAA,CAAE,MAAA,CAAO,YAAA,KAAiB,IAAA,EAAM;AAClC,QAAA,eAAA,GAAkB,CAAA,CAAE,MAAA,CAAO,GAAA,CAAI,QAAA,EAAS;AACxC,QAAA,YAAA,GAAe,UAAA,CAAW,UAAU,MAAA,IAAU,CAAA;AAAA,MAChD,CAAA,MAAO;AACL,QAAA,eAAA,GAAkB,UAAA,CAAW,SAAA,EAAW,QAAA,EAAS,IAAK,IAAA;AACtD,QAAA,MAAM,QAAA,GAAW,kBAAmB,YAAA,CAAa,OAAA,CAAQ,eAAe,CAAA,EAAG,QAAA,IAAY,EAAC,GAAK,YAAA,CAAa,KAAA;AAC1G,QAAA,MAAM,WAAA,GAAc,SAAS,SAAA,CAAU,CAAC,MAAM,CAAA,CAAE,GAAA,KAAQ,CAAA,CAAE,MAAA,CAAO,GAAG,CAAA;AACpE,QAAA,YAAA,GAAe,CAAA,CAAE,MAAA,CAAO,YAAA,KAAiB,QAAA,GAAW,cAAc,WAAA,GAAc,CAAA;AAAA,MAClF;AAEA,MAAA,MAAM,WAAA,GAAc;AAAA,QAClB,EAAA,EAAI,eAAe,QAAA,EAAS;AAAA,QAC5B,QAAA,EAAU,eAAA;AAAA,QACV,KAAA,EAAO;AAAA,OACT;AAEA,MAAA,IAAI,cAAA,IAAkB,CAAC,cAAA,CAAe,WAAW,CAAA,EAAG;AAClD,QAAA;AAAA,MACF;AAEA,MAAA,MAAM,SAAA,GAAY,YAAA,CAAa,OAAA,CAAQ,cAAc,CAAA;AACrD,MAAA,MAAM,gBAAA,GAAmB,SAAA,EAAW,SAAA,EAAW,QAAA,EAAS,IAAK,IAAA;AAC7D,MAAA,MAAM,gBAAA,GAAmB,mBACpB,YAAA,CAAa,OAAA,CAAQ,gBAAgB,CAAA,EAAG,QAAA,IAAY,EAAC,GACtD,YAAA,CAAa,KAAA;AACjB,MAAA,MAAM,gBAAgB,gBAAA,CAAiB,SAAA,CAAU,CAAC,CAAA,KAAM,CAAA,CAAE,QAAQ,cAAc,CAAA;AAEhF,MAAA,IAAI,CAAA,CAAE,MAAA,CAAO,YAAA,KAAiB,IAAA,EAAM;AAClC,QAAA,YAAA,CAAa,IAAA,CAAK,cAAA,EAAgB,eAAA,EAAiB,YAAY,CAAA;AAAA,MACjE,CAAA,MAAA,IAAW,CAAA,CAAE,MAAA,CAAO,YAAA,KAAiB,QAAA,EAAU;AAC7C,QAAA,YAAA,CAAa,UAAA,CAAW,CAAA,CAAE,MAAA,CAAO,GAAA,EAAK,EAAE,IAAI,CAAA;AAAA,MAC9C,CAAA,MAAO;AACL,QAAA,YAAA,CAAa,SAAA,CAAU,CAAA,CAAE,MAAA,CAAO,GAAA,EAAK,EAAE,IAAI,CAAA;AAAA,MAC7C;AAEA,MAAA,MAAM,MAAA,GAAS,gBAAgB,WAAW,CAAA;AAE1C,MAAA,IAAI,MAAA,IAAU,OAAO,MAAA,CAAO,IAAA,KAAS,UAAA,EAAY;AAC/C,QAAA,MAAA,CAAO,MAAM,MAAM;AACjB,UAAA,YAAA,CAAa,IAAA,CAAK,cAAA,EAAgB,gBAAA,EAAkB,aAAa,CAAA;AAAA,QACnE,CAAC,CAAA;AAAA,MACH;AAAA,IACF,CAAA;AAAA,IACA,mBAAA,EAAqB,CAAC,MAAA,qBACpB,KAAA,CAAA,aAAA;AAAA,MAAC,aAAA;AAAA,MAAA;AAAA,QACC,MAAA;AAAA,QACA,SAAA,EAAU;AAAA;AAAA;AACZ,GAEH,CAAA;AAGD,EAAA,MAAM,CAAC,mBAAmB,oBAAoB,CAAA,GAAI,MAAM,QAAA,iBAAmB,IAAI,KAAK,CAAA;AACpF,EAAA,MAAM,YAAA,GAAe,qBAAqB,IAAA,mBAAO,IAAI,IAAS,CAAC,iBAAiB,CAAC,CAAA,GAAI,iBAAA;AAErF,EAAA,MAAM,YAAA,GAAe,KAAA,CAAM,OAAA,CAAQ,MAAM;AACvC,IAAA,IAAI,CAAC,qBAAqB,WAAA,IAAe,CAAC,cAAc,KAAA,EAAO,MAAA,SAAe,EAAC;AAC/E,IAAA,MAAM,IAAA,GAAO,aAAA;AAAA,MACX,aAAa,KAAA,CAAM,GAAA,CAAI,CAAC,IAAA,KAAS,KAAK,KAAK,CAAA;AAAA,MAC3C;AAAA,KACF;AAEA,IAAA,OAAO,QAAQ,EAAC;AAAA,EAClB,GAAG,CAAC,iBAAA,EAAmB,WAAA,EAAa,YAAA,CAAa,KAAK,CAAC,CAAA;AAEvD,EAAA,MAAM,CAAC,mBAAmB,oBAAoB,CAAA,GAAI,MAAM,QAAA,iBAAmB,IAAI,KAAK,CAAA;AACpF,EAAA,MAAM,eAAe,KAAA,CAAM,OAAA;AAAA,IACzB,0BAAU,GAAA,CAAS,CAAC,GAAG,YAAA,EAAc,GAAG,iBAAiB,CAAC,CAAA;AAAA,IAC1D,CAAC,cAAc,iBAAiB;AAAA,GAClC;AAEA,EAAA,KAAA,CAAM,UAAU,MAAM;AACpB,IAAA,IAAI,eAAA,2BAA0C,IAAI,CAAA;AAAA,EACpD,CAAA,EAAG,CAAC,eAAA,EAAiB,wBAAwB,CAAC,CAAA;AAE9C,EAAA,MAAM,gBAAA,GAAmB,KAAA,CAAM,MAAA,iBAAoB,IAAI,KAAK,CAAA;AAC5D,EAAA,MAAM,CAAC,eAAe,gBAAgB,CAAA,GAAI,MAAM,QAAA,iBAAsB,IAAI,KAAK,CAAA;AAE/E,EAAA,MAAM,mBAAmB,KAAA,CAAM,WAAA;AAAA,IAC7B,CAAC,QAAA,KAAqB;AACpB,MAAA,IAAI,eAAe,CAAC,YAAA,IAAgB,iBAAiB,OAAA,CAAQ,GAAA,CAAI,QAAQ,CAAA,EAAG;AAE5E,MAAA,gBAAA,CAAiB,OAAA,CAAQ,IAAI,QAAQ,CAAA;AACrC,MAAA,gBAAA,CAAiB,IAAI,GAAA,CAAI,gBAAA,CAAiB,OAAO,CAAC,CAAA;AAElD,MAAA,MAAM,MAAA,GAAS,CAAA,cAAA,EAAiB,EAAE,kBAAkB,CAAA,CAAA;AACpD,MAAA,MAAM,WAAA,GAA8B,EAAE,EAAA,EAAI,MAAA,EAAQ,OAAO,UAAA,EAAY,IAAA,EAAM,EAAA,EAAI,MAAA,EAAQ,OAAA,EAAQ;AAE/F,MAAA,YAAA,CAAa,MAAA,CAAO,UAAU,WAAW,CAAA;AACzC,MAAA,oBAAA,CAAqB,CAAC,yBAAS,IAAI,GAAA,CAAI,CAAC,GAAG,IAAA,EAAM,QAAQ,CAAC,CAAC,CAAA;AAE3D,MAAA,YAAA,CAAa,QAAQ,CAAA,CAAE,IAAA;AAAA,QACrB,CAAC,OAAA,KAAY;AACX,UAAA,YAAA,CAAa,OAAO,MAAM,CAAA;AAC1B,UAAA,YAAA,CAAa,MAAA,CAAO,UAAU,OAAO,CAAA;AAErC,UAAA,oBAAA,qBAAyB,GAAA,CAAI,CAAC,OAAA,CAAQ,EAAE,CAAC,CAAC,CAAA;AAC1C,UAAA,eAAA,GAAkB,QAAQ,EAAE,CAAA;AAC5B,UAAA,gBAAA,CAAiB,OAAA,CAAQ,OAAO,QAAQ,CAAA;AACxC,UAAA,gBAAA,CAAiB,IAAI,GAAA,CAAI,gBAAA,CAAiB,OAAO,CAAC,CAAA;AAAA,QACpD,CAAA;AAAA,QACA,MAAM;AACJ,UAAA,YAAA,CAAa,OAAO,MAAM,CAAA;AAC1B,UAAA,gBAAA,CAAiB,OAAA,CAAQ,OAAO,QAAQ,CAAA;AACxC,UAAA,gBAAA,CAAiB,IAAI,GAAA,CAAI,gBAAA,CAAiB,OAAO,CAAC,CAAA;AAAA,QACpD;AAAA,OACF;AAAA,IACF,CAAA;AAAA,IACA,CAAC,WAAA,EAAa,YAAA,EAAc,YAAA,EAAc,eAAe;AAAA,GAC3D;AAEA,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAY,cAAc,gBAAA,GAAmB,eAAA;AAAA,MAC7C,OAAO,YAAA,CAAa,KAAA;AAAA,MACpB,gBAAA,EAAkB,cAAc,MAAA,GAAY,gBAAA;AAAA,MAC5C,SAAA,EAAU,uBAAA;AAAA,MACV,iBAAA,EAAkB,QAAA;AAAA,MAClB,aAAA,EAAc,QAAA;AAAA,MACd,YAAA;AAAA,MACA,gBAAA,EAAkB,oBAAA;AAAA,MAClB,YAAA;AAAA,MACA,sBAAA,EAAsB,IAAA;AAAA,MACtB,iBAAA,EAAmB,CAAC,SAAA,KAAc;AAChC,QAAA,IAAI,cAAc,KAAA,EAAO;AAEvB,UAAA,IAAI,iBAAA,IAAqB,IAAA,EAAM,oBAAA,CAAqB,SAAS,CAAA;AAC7D,UAAA,MAAM,QAAA,GAAW,KAAA,CAAM,IAAA,CAAK,SAAS,IAAI,CAAC,CAAA;AAE1C,UAAA,IAAI,QAAA,EAAU;AACZ,YAAA,MAAM,UAAA,GAAa,SAAS,QAAA,EAAS;AACrC,YAAA,eAAA,GAAkB,UAAU,CAAA;AAE5B,YAAA,IAAI,WAAA,EAAa;AACf,cAAA,wBAAA,CAAyB,UAAU,CAAA;AACnC,cAAA,cAAA,CAAe,EAAE,CAAA;AACjB,cAAA,oBAAA,GAAuB,EAAE,CAAA;AAAA,YAC3B;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,KAAA;AAAA,IAEC,SAAS,WAAW,IAAA,EAAM;AACzB,MAAA,uBACE,KAAA,CAAA,aAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,WAAA,EAAY,WAAW,IAAA,CAAK,KAAA,CAAM,KAAA,EAAO,EAAA,EAAI,KAAK,KAAA,CAAM,EAAA,EAAA,kBAC1E,KAAA,CAAA,aAAA,CAAC,eAAA,EAAA,IAAA,EACE,CAAC,KAAA,qBACA,KAAA,CAAA,aAAA;AAAA,QAAC,WAAA;AAAA,QAAA;AAAA,UACC,iBAAA;AAAA,UACA,IAAA;AAAA,UACA,YAAA,EAAc,CAAC,WAAA,IAAe,YAAA,GAAe,gBAAA,GAAmB,MAAA;AAAA,UAChE,iBAAiB,CAAC,WAAA,IAAe,cAAc,GAAA,CAAI,IAAA,CAAK,MAAM,EAAE,CAAA;AAAA,UAChE,eAAe,aAAA,GAAgB,CAAC,SAAA,KAAc,aAAA,CAAc,SAAS,CAAA,GAAI,MAAA;AAAA,UACzE,WAAA;AAAA,UACC,GAAG;AAAA;AAAA,OAGV,CAAA,EAEC,CAAC,WAAA,IAAe,IAAA,CAAK,QAAA,oBAAY,KAAA,CAAA,aAAA,CAAC,UAAA,EAAA,EAAW,KAAA,EAAO,IAAA,CAAK,QAAA,EAAA,EAAW,UAAW,CAClF,CAAA;AAAA,IAEJ;AAAA,GACF;AAEJ;;ACjOA,SAAS,wBAAA,CAAyB,UAA4B,KAAA,EAAiC;AAC7F,EAAA,MAAM,SAA2B,EAAC;AAClC,EAAA,MAAM,UAAA,GAAa,MAAM,WAAA,EAAY,CAAE,MAAM,KAAK,CAAA,CAAE,OAAO,OAAO,CAAA;AAElE,EAAA,MAAM,QAAA,GAAW,CAAC,KAAA,KAA4B;AAC5C,IAAA,KAAA,CAAM,OAAA,CAAQ,CAAC,IAAA,KAAS;AACtB,MAAA,MAAM,KAAA,GAAQ,IAAA,CAAK,KAAA,CAAM,WAAA,EAAY;AACrC,MAAA,MAAM,OAAA,GAAU,WAAW,KAAA,CAAM,CAAC,SAAS,KAAA,CAAM,QAAA,CAAS,IAAI,CAAC,CAAA;AAE/D,MAAA,IAAI,OAAA,EAAS;AAEX,QAAA,MAAA,CAAO,KAAK,EAAE,GAAG,MAAM,KAAA,EAAO,IAAI,CAAA;AAAA,MACpC;AACA,MAAA,IAAI,KAAK,KAAA,EAAO;AACd,QAAA,QAAA,CAAS,KAAK,KAAK,CAAA;AAAA,MACrB;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,QAAA,CAAS,QAAQ,CAAA;AAEjB,EAAA,OAAO,MAAA;AACT;AAEO,SAAS,UAAA,CAAW,EAAE,QAAA,EAAU,SAAA,EAAU,EAAoB;AACnE,EAAA,MAAM,EAAE,WAAA,EAAa,WAAA,EAAa,YAAA,KAAiB,UAAA,EAAW;AAE9D,EAAA,MAAM,gBAAA,GAAmB,KAAA,CAAM,OAAA,CAAQ,MAAM;AAC3C,IAAA,IAAI,CAAC,WAAA,IAAe,CAAC,QAAA,SAAiB,EAAC;AAEvC,IAAA,OAAO,wBAAA,CAAyB,UAAU,WAAW,CAAA;AAAA,EACvD,CAAA,EAAG,CAAC,QAAA,EAAU,WAAA,EAAa,WAAW,CAAC,CAAA;AAEvC,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,4BAAA,EAA8B,SAAS,CAAA,EAAA,EACvD,CAAC,WAAA,KAAgB,CAAC,QAAA,IAAY,QAAA,CAAS,MAAA,KAAW,qBACjD,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,EAAO,OAAA,EAAQ,OAAA,EAAQ,SAAA,EAAU,eAAA,EAAgB,OAAA,EAAS,MAAM,YAAA,GAAe,IAAI,CAAA,CAAE,KAAA,CAAM,MAAM;AAAA,EAAC,CAAC,qBAClG,KAAA,CAAA,aAAA,CAAC,OAAA,EAAA,EAAQ,eAAY,MAAA,EAAO,CAAA,EAAE,gCAEhC,CAAA,mBAEA,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,sCACG,aAAA,EAAA,IAAc,CAAA,EACd,cACC,gBAAA,CAAiB,MAAA,GAAS,oBACxB,KAAA,CAAA,aAAA,CAAC,WAAA,EAAA,EAAY,KAAK,WAAA,EAAa,QAAA,EAAU,kBAAkB,WAAA,EAAW,IAAA,EAAC,oBAEvE,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,EAAK,WAAU,4BAAA,EAAA,EAA6B,mBAAiB,IAE9D,QAAA,EAAU,MAAA,uCACX,KAAA,EAAA,EAAI,YAAA,EAAW,yCACd,KAAA,CAAA,aAAA,CAAC,WAAA,EAAA,EAAY,UAAoB,CACnC,CAAA,GACE,IACN,CAEJ,CAAA;AAEJ;;AC7DO,SAAS,UAAA,CAAW,EAAE,SAAA,EAAW,KAAA,EAAO,UAAS,EAAoB;AAC1E,EAAA,MAAM,EAAE,iBAAA,EAAkB,GAAI,UAAA,EAAW;AAEzC,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,eAAA,EAAiB,SAAS,CAAA,EAAG,YAAA,EAAW,wBAAA,EAAA,EACxD,KAAA,CAAM,GAAA,CAAI,CAAC,IAAA,qBACV,KAAA,CAAA,aAAA;AAAA,IAAC,iBAAA;AAAA,IAAA;AAAA,MACC,KAAK,IAAA,CAAK,EAAA;AAAA,MACV,MAAM,IAAA,CAAK,IAAA;AAAA,MACX,wBAAsB,IAAA,CAAK,EAAA;AAAA,MAC3B,wBAAA,EAAuB,SAAA;AAAA,MACvB,wCAAA,EAAwC,KAAK,EAAA,KAAO,QAAA;AAAA,MACpD,SAAA,EAAW,EAAA;AAAA,QACT,0DAAA;AAAA,QACA,iJAAA;AAAA,QACA,iGAAA;AAAA,QACA,IAAA,CAAK,OAAO,QAAA,IAAY;AAAA;AAC1B,KAAA;AAAA,IAEC,IAAA,CAAK;AAAA,GAET,CACH,CAAA;AAEJ;;ACfO,MAAM,OAAA,GAAU,KAAA,CAAM,UAAA,CAAsC,SAASG,QAAAA,CAC1E;AAAA,EACE,SAAA;AAAA,EACA,iBAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,cAAA;AAAA,EACA,eAAA;AAAA,EACA,kBAAA;AAAA,EACA,eAAA;AAAA,EACA,YAAA;AAAA,EACA,QAAA;AAAA,EACA,eAAA;AAAA,EACA,gBAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA,EACA,cAAA;AAAA,EACA,aAAA;AAAA,EACA,GAAG;AACL,CAAA,EACA,GAAA,EACA;AAEA,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAI,KAAA,CAAM,SAAS,KAAK,CAAA;AAGhE,EAAA,MAAM,YAAA,GAAe,CAAC,KAAA,KAAyC;AAC7D,IAAA,MAAM,EAAE,YAAA,EAAc,SAAA,EAAW,YAAA,KAAiB,KAAA,CAAM,aAAA;AACxD,IAAA,iBAAA,CAAkB,SAAA,GAAY,gBAAgB,YAAY,CAAA;AAAA,EAC5D,CAAA;AAEA,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAAC,eAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,CAAC,CAAC,SAAA;AAAA,MACb,iBAAA;AAAA,MACA,eAAA;AAAA,MACA,eAAA;AAAA,MACA,gBAAA;AAAA,MACA,YAAA;AAAA,MACA,aAAA;AAAA,MACA,cAAA;AAAA,MACA;AAAA,KAAA;AAAA,oBAEA,KAAA,CAAA,aAAA;AAAA,MAAC,OAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,SAAA,EAAW,EAAA;AAAA,UACT,oEAAA;AAAA,UACA,YAAY,UAAA,GAAa,WAAA;AAAA,UACzB;AAAA,SACF;AAAA,QACA,YAAA,EAAW;AAAA,OAAA;AAAA,sBAEX,KAAA,CAAA,aAAA;AAAA,QAAC,MAAA;AAAA,QAAA;AAAA,UACC,SAAA,EAAW,EAAA;AAAA,YACT,oBAAA;AAAA,YACA,WAAA,IAAe,WAAA,CAAY,MAAA,GAAS,CAAA,IAAK,MAAA;AAAA,YACzC,CAAC,SAAA,IAAa;AAAA,WAChB;AAAA,UACA,QAAA,EAAU,WAAA;AAAA,UACV,KAAA,EAAO,WAAA;AAAA,UACP,QAAA,EAAU,cAAA;AAAA,UACV,MAAA,EAAQ;AAAA;AAAA,OACV;AAAA,MAEC,CAAC,SAAA,oBACA,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,EACG,gCACC,KAAA,CAAA,aAAA,CAAC,UAAA,EAAA,EAAW,UAAU,YAAA,EAAA,kBACpB,KAAA,CAAA,aAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,8CAA6C,QAAA,EAAoB,CACzF,GAED,eAAA,IAAmB,eAAA,CAAgB,SAAS,CAAA,oBAC3C,KAAA,CAAA,aAAA;AAAA,QAAC,UAAA;AAAA,QAAA;AAAA,UACC,WAAW,EAAA,CAAG,oBAAA,EAAsB,CAAC,SAAA,IAAa,CAAC,kBAAkB,wBAAwB,CAAA;AAAA,UAC7F,KAAA,EAAO,eAAA;AAAA,UACP,QAAA,EAAU;AAAA;AAAA,OAGhB;AAAA;AAEJ,GACF;AAEJ,CAAC;;;;"}
@@ -2,15 +2,25 @@ import React__default from 'react';
2
2
  import { c as cn } from '../../chunks/utils.Cwtlq8dh.js';
3
3
 
4
4
  const Input = React__default.forwardRef(
5
- ({ className, type, startIcon, endIcon, ...props }, ref) => {
5
+ ({ className, type, startIcon, endIcon, onStartIconClick, onEndIconClick, ...props }, ref) => {
6
6
  const StartIcon = startIcon;
7
7
  const EndIcon = endIcon;
8
- return /* @__PURE__ */ React__default.createElement("div", { className: "w-full relative" }, StartIcon && /* @__PURE__ */ React__default.createElement("div", { className: "absolute left-1.5 top-1/2 transform -translate-y-1/2" }, /* @__PURE__ */ React__default.createElement(StartIcon, { size: 18, className: "text-muted-foreground" })), /* @__PURE__ */ React__default.createElement(
8
+ return /* @__PURE__ */ React__default.createElement("div", { className: "w-full relative" }, StartIcon && /* @__PURE__ */ React__default.createElement("div", { className: "absolute left-2 top-1/2 transform -translate-y-1/2" }, onStartIconClick ? /* @__PURE__ */ React__default.createElement(
9
+ "button",
10
+ {
11
+ type: "button",
12
+ onClick: onStartIconClick,
13
+ className: "flex items-center justify-center cursor-pointer hover:opacity-70 transition-opacity",
14
+ "aria-label": "Clear start icon"
15
+ },
16
+ /* @__PURE__ */ React__default.createElement(StartIcon, { size: 18, className: "text-muted-foreground" })
17
+ ) : /* @__PURE__ */ React__default.createElement(StartIcon, { size: 18, className: "text-muted-foreground" })), /* @__PURE__ */ React__default.createElement(
9
18
  "input",
10
19
  {
11
20
  type,
12
21
  className: cn(
13
22
  "flex h-12 w-full rounded-md border border-border bg-transparent py-3 text-base transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
23
+ type === "search" && !!endIcon && "appearance-none [&::-webkit-search-cancel-button]:hidden [&::-webkit-search-decoration]:hidden [&::-webkit-search-results-button]:hidden [&::-webkit-search-results-decoration]:hidden",
14
24
  startIcon && "pl-8 pr-4",
15
25
  endIcon && "pl-4 pr-8",
16
26
  startIcon && endIcon && "px-8",
@@ -20,7 +30,16 @@ const Input = React__default.forwardRef(
20
30
  ref,
21
31
  ...props
22
32
  }
23
- ), EndIcon && /* @__PURE__ */ React__default.createElement("div", { className: "absolute right-3 top-1/2 transform -translate-y-1/2" }, /* @__PURE__ */ React__default.createElement(EndIcon, { className: "text-muted-foreground", size: 18 })));
33
+ ), EndIcon && /* @__PURE__ */ React__default.createElement("div", { className: "absolute right-3 top-1/2 transform -translate-y-1/2" }, onEndIconClick ? /* @__PURE__ */ React__default.createElement(
34
+ "button",
35
+ {
36
+ type: "button",
37
+ onClick: onEndIconClick,
38
+ className: "flex items-center justify-center cursor-pointer hover:opacity-70 transition-opacity",
39
+ "aria-label": "Clear input"
40
+ },
41
+ /* @__PURE__ */ React__default.createElement(EndIcon, { className: "text-muted-foreground", size: 18 })
42
+ ) : /* @__PURE__ */ React__default.createElement(EndIcon, { className: "text-muted-foreground", size: 18 })));
24
43
  }
25
44
  );
26
45
  Input.displayName = "Input";
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sources":["../../../../src/components/ui/input.tsx"],"sourcesContent":["import React from 'react';\nimport { type Icon } from '@phosphor-icons/react';\n\nimport { cn } from '@/lib/utils';\n\nexport interface InputProps extends React.InputHTMLAttributes<HTMLInputElement> {\n startIcon?: Icon;\n endIcon?: Icon;\n}\n\nconst Input = React.forwardRef<HTMLInputElement, InputProps>(\n ({ className, type, startIcon, endIcon, ...props }, ref) => {\n const StartIcon = startIcon;\n const EndIcon = endIcon;\n\n return (\n <div className=\"w-full relative\">\n {StartIcon && (\n <div className=\"absolute left-1.5 top-1/2 transform -translate-y-1/2\">\n <StartIcon size={18} className=\"text-muted-foreground\" />\n </div>\n )}\n <input\n type={type}\n className={cn(\n 'flex h-12 w-full rounded-md border border-border bg-transparent py-3 text-base transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',\n startIcon && 'pl-8 pr-4',\n endIcon && 'pl-4 pr-8',\n startIcon && endIcon && 'px-8',\n !startIcon && !endIcon && 'px-4',\n className,\n )}\n ref={ref}\n {...props}\n />\n {EndIcon && (\n <div className=\"absolute right-3 top-1/2 transform -translate-y-1/2\">\n <EndIcon className=\"text-muted-foreground\" size={18} />\n </div>\n )}\n </div>\n );\n },\n);\nInput.displayName = 'Input';\n\nexport { Input };\n"],"names":["React"],"mappings":";;;AAUA,MAAM,QAAQA,cAAA,CAAM,UAAA;AAAA,EAClB,CAAC,EAAE,SAAA,EAAW,IAAA,EAAM,WAAW,OAAA,EAAS,GAAG,KAAA,EAAM,EAAG,GAAA,KAAQ;AAC1D,IAAA,MAAM,SAAA,GAAY,SAAA;AAClB,IAAA,MAAM,OAAA,GAAU,OAAA;AAEhB,IAAA,oDACG,KAAA,EAAA,EAAI,SAAA,EAAU,iBAAA,EAAA,EACZ,SAAA,iDACE,KAAA,EAAA,EAAI,SAAA,EAAU,sDAAA,EAAA,kBACbA,cAAA,CAAA,aAAA,CAAC,aAAU,IAAA,EAAM,EAAA,EAAI,SAAA,EAAU,uBAAA,EAAwB,CACzD,CAAA,kBAEFA,cAAA,CAAA,aAAA;AAAA,MAAC,OAAA;AAAA,MAAA;AAAA,QACC,IAAA;AAAA,QACA,SAAA,EAAW,EAAA;AAAA,UACT,4VAAA;AAAA,UACA,SAAA,IAAa,WAAA;AAAA,UACb,OAAA,IAAW,WAAA;AAAA,UACX,aAAa,OAAA,IAAW,MAAA;AAAA,UACxB,CAAC,SAAA,IAAa,CAAC,OAAA,IAAW,MAAA;AAAA,UAC1B;AAAA,SACF;AAAA,QACA,GAAA;AAAA,QACC,GAAG;AAAA;AAAA,KACN,EACC,OAAA,oBACCA,cAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,qDAAA,EAAA,kBACbA,cAAA,CAAA,aAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,uBAAA,EAAwB,IAAA,EAAM,EAAA,EAAI,CACvD,CAEJ,CAAA;AAAA,EAEJ;AACF;AACA,KAAA,CAAM,WAAA,GAAc,OAAA;;;;"}
1
+ {"version":3,"file":"input.js","sources":["../../../../src/components/ui/input.tsx"],"sourcesContent":["import React from 'react';\nimport { type Icon } from '@phosphor-icons/react';\n\nimport { cn } from '@/lib/utils';\n\nexport interface InputProps extends React.InputHTMLAttributes<HTMLInputElement> {\n startIcon?: Icon;\n endIcon?: Icon;\n onStartIconClick?: () => void;\n onEndIconClick?: () => void;\n}\n\nconst Input = React.forwardRef<HTMLInputElement, InputProps>(\n ({ className, type, startIcon, endIcon, onStartIconClick, onEndIconClick, ...props }, ref) => {\n const StartIcon = startIcon;\n const EndIcon = endIcon;\n\n return (\n <div className=\"w-full relative\">\n {StartIcon && (\n <div className=\"absolute left-2 top-1/2 transform -translate-y-1/2\">\n {onStartIconClick ? (\n <button\n type=\"button\"\n onClick={onStartIconClick}\n className=\"flex items-center justify-center cursor-pointer hover:opacity-70 transition-opacity\"\n aria-label=\"Clear start icon\"\n >\n <StartIcon size={18} className=\"text-muted-foreground\" />\n </button>\n ) : (\n <StartIcon size={18} className=\"text-muted-foreground\" />\n )}\n </div>\n )}\n <input\n type={type}\n className={cn(\n 'flex h-12 w-full rounded-md border border-border bg-transparent py-3 text-base transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',\n type === 'search' &&\n !!endIcon &&\n 'appearance-none [&::-webkit-search-cancel-button]:hidden [&::-webkit-search-decoration]:hidden [&::-webkit-search-results-button]:hidden [&::-webkit-search-results-decoration]:hidden',\n startIcon && 'pl-8 pr-4',\n endIcon && 'pl-4 pr-8',\n startIcon && endIcon && 'px-8',\n !startIcon && !endIcon && 'px-4',\n className,\n )}\n ref={ref}\n {...props}\n />\n {EndIcon && (\n <div className=\"absolute right-3 top-1/2 transform -translate-y-1/2\">\n {onEndIconClick ? (\n <button\n type=\"button\"\n onClick={onEndIconClick}\n className=\"flex items-center justify-center cursor-pointer hover:opacity-70 transition-opacity\"\n aria-label=\"Clear input\"\n >\n <EndIcon className=\"text-muted-foreground\" size={18} />\n </button>\n ) : (\n <EndIcon className=\"text-muted-foreground\" size={18} />\n )}\n </div>\n )}\n </div>\n );\n },\n);\nInput.displayName = 'Input';\n\nexport { Input };\n"],"names":["React"],"mappings":";;;AAYA,MAAM,QAAQA,cAAA,CAAM,UAAA;AAAA,EAClB,CAAC,EAAE,SAAA,EAAW,IAAA,EAAM,SAAA,EAAW,OAAA,EAAS,gBAAA,EAAkB,cAAA,EAAgB,GAAG,KAAA,EAAM,EAAG,GAAA,KAAQ;AAC5F,IAAA,MAAM,SAAA,GAAY,SAAA;AAClB,IAAA,MAAM,OAAA,GAAU,OAAA;AAEhB,IAAA,uBACEA,cAAA,CAAA,aAAA,CAAC,SAAI,SAAA,EAAU,iBAAA,EAAA,EACZ,6BACCA,cAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,oDAAA,EAAA,EACZ,gBAAA,mBACCA,cAAA,CAAA,aAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,IAAA,EAAK,QAAA;AAAA,QACL,OAAA,EAAS,gBAAA;AAAA,QACT,SAAA,EAAU,qFAAA;AAAA,QACV,YAAA,EAAW;AAAA,OAAA;AAAA,sBAEXA,cAAA,CAAA,aAAA,CAAC,SAAA,EAAA,EAAU,IAAA,EAAM,EAAA,EAAI,WAAU,uBAAA,EAAwB;AAAA,KACzD,gDAEC,SAAA,EAAA,EAAU,IAAA,EAAM,IAAI,SAAA,EAAU,uBAAA,EAAwB,CAE3D,CAAA,kBAEFA,cAAA,CAAA,aAAA;AAAA,MAAC,OAAA;AAAA,MAAA;AAAA,QACC,IAAA;AAAA,QACA,SAAA,EAAW,EAAA;AAAA,UACT,4VAAA;AAAA,UACA,IAAA,KAAS,QAAA,IACP,CAAC,CAAC,OAAA,IACF,wLAAA;AAAA,UACF,SAAA,IAAa,WAAA;AAAA,UACb,OAAA,IAAW,WAAA;AAAA,UACX,aAAa,OAAA,IAAW,MAAA;AAAA,UACxB,CAAC,SAAA,IAAa,CAAC,OAAA,IAAW,MAAA;AAAA,UAC1B;AAAA,SACF;AAAA,QACA,GAAA;AAAA,QACC,GAAG;AAAA;AAAA,OAEL,OAAA,oBACCA,cAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yDACZ,cAAA,mBACCA,cAAA,CAAA,aAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,IAAA,EAAK,QAAA;AAAA,QACL,OAAA,EAAS,cAAA;AAAA,QACT,SAAA,EAAU,qFAAA;AAAA,QACV,YAAA,EAAW;AAAA,OAAA;AAAA,sBAEXA,cAAA,CAAA,aAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,uBAAA,EAAwB,MAAM,EAAA,EAAI;AAAA,KACvD,gDAEC,OAAA,EAAA,EAAQ,SAAA,EAAU,yBAAwB,IAAA,EAAM,EAAA,EAAI,CAEzD,CAEJ,CAAA;AAAA,EAEJ;AACF;AACA,KAAA,CAAM,WAAA,GAAc,OAAA;;;;"}
@@ -1 +1 @@
1
- @import"https://fonts.googleapis.com/css2?family=Fraunces:wght@700&family=Inter:wght@400;700&display=swap";*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(147 197 253 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(147 197 253 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--bfc-font-family),system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}ul{list-style-type:disc}ol{list-style-type:decimal}*,:before,:after{--tw-ring-color: color-mix(in srgb, var(--bfc-primary) 85%, transparent)}*:focus-visible:not([contenteditable]){--tw-ring-offset-width: 0px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);outline:2px solid transparent;outline-offset:2px}[contenteditable]:focus,[contenteditable]:focus-visible{box-shadow:none;outline:none;caret-color:currentColor}:root{--bfc-white: #fff;--bfc-v2-color-mono-100: #fafafa;--bfc-v2-color-mono-200: #f5f5f5;--bfc-v2-color-mono-300: #e5e5e5;--bfc-v2-color-mono-400: #d4d4d4;--bfc-v2-color-mono-500: #a3a3a3;--bfc-v2-color-mono-600: #737373;--bfc-v2-color-mono-700: #525252;--bfc-v2-color-mono-800: #404040;--bfc-v2-color-mono-900: #262626;--bfc-v2-color-mono-1000: #171717;--bfc-v2-color-red-100: #ffeceb;--bfc-v2-color-red-200: #ffd5d2;--bfc-v2-color-red-300: #fd9891;--bfc-v2-color-red-400: #f87168;--bfc-v2-color-red-500: #f15b50;--bfc-v2-color-red-600: #e2483d;--bfc-v2-color-red-700: #c9372c;--bfc-v2-color-red-800: #ae2e24;--bfc-v2-color-red-900: #5d1f1a;--bfc-v2-color-red-1000: #42221f;--bfc-v2-color-orange-100: #fff3eb;--bfc-v2-color-orange-200: #fedec8;--bfc-v2-color-orange-300: #fec195;--bfc-v2-color-orange-400: #fea362;--bfc-v2-color-orange-500: #f38a3f;--bfc-v2-color-orange-600: #e56910;--bfc-v2-color-orange-700: #c25100;--bfc-v2-color-orange-800: #a54800;--bfc-v2-color-orange-900: #702e00;--bfc-v2-color-orange-1000: #38291e;--bfc-v2-color-yellow-100: #fef7c8;--bfc-v2-color-yellow-200: #ffdf84;--bfc-v2-color-yellow-300: #fed153;--bfc-v2-color-yellow-400: #fbbf25;--bfc-v2-color-yellow-500: #e5ad1d;--bfc-v2-color-yellow-600: #c59109;--bfc-v2-color-yellow-700: #977007;--bfc-v2-color-yellow-800: #7f5f01;--bfc-v2-color-yellow-900: #533f04;--bfc-v2-color-yellow-1000: #332e1b;--bfc-v2-color-lime-100: #e9fec8;--bfc-v2-color-lime-200: #d6f589;--bfc-v2-color-lime-300: #b3ee2b;--bfc-v2-color-lime-400: #a3e635;--bfc-v2-color-lime-500: #91cf02;--bfc-v2-color-lime-600: #83b300;--bfc-v2-color-lime-700: #647f01;--bfc-v2-color-lime-800: #546c00;--bfc-v2-color-lime-900: #3f5304;--bfc-v2-color-lime-1000: #2b331b;--bfc-v2-color-green-100: #dcfff1;--bfc-v2-color-green-200: #baf3db;--bfc-v2-color-green-300: #7ee2b8;--bfc-v2-color-green-400: #4bce97;--bfc-v2-color-green-500: #2abb7f;--bfc-v2-color-green-600: #22a06b;--bfc-v2-color-green-700: #1f845a;--bfc-v2-color-green-800: #216e4e;--bfc-v2-color-green-900: #164b35;--bfc-v2-color-green-1000: #1c3329;--bfc-v2-color-blue-100: #e9f2fe;--bfc-v2-color-blue-200: #cfe1fd;--bfc-v2-color-blue-300: #8fb8f6;--bfc-v2-color-blue-400: #669df1;--bfc-v2-color-blue-500: #4688ec;--bfc-v2-color-blue-600: #357de8;--bfc-v2-color-blue-700: #1868db;--bfc-v2-color-blue-800: #1558bc;--bfc-v2-color-blue-900: #123263;--bfc-v2-color-blue-1000: #1c2b42;--bfc-v2-color-teal-100: #e7f9ff;--bfc-v2-color-teal-200: #c6edfb;--bfc-v2-color-teal-300: #9dd9ee;--bfc-v2-color-teal-400: #6cc3e0;--bfc-v2-color-teal-500: #42b2d7;--bfc-v2-color-teal-600: #2898bd;--bfc-v2-color-teal-700: #227d9b;--bfc-v2-color-teal-800: #206a83;--bfc-v2-color-teal-900: #164555;--bfc-v2-color-teal-1000: #1e3137;--bfc-v2-color-purple-100: #f8eefe;--bfc-v2-color-purple-200: #dfd8fd;--bfc-v2-color-purple-300: #b8acf6;--bfc-v2-color-purple-400: #9f8fef;--bfc-v2-color-purple-500: #8f7ee7;--bfc-v2-color-purple-600: #8270db;--bfc-v2-color-purple-700: #6e5dc6;--bfc-v2-color-purple-800: #5e4db2;--bfc-v2-color-purple-900: #352c63;--bfc-v2-color-purple-1000: #2b273f;--bfc-v2-color-magenta-100: #ffecf8;--bfc-v2-color-magenta-200: #fdd0ec;--bfc-v2-color-magenta-300: #f797d2;--bfc-v2-color-magenta-400: #e774bb;--bfc-v2-color-magenta-500: #da62ac;--bfc-v2-color-magenta-600: #cd519d;--bfc-v2-color-magenta-700: #ae4787;--bfc-v2-color-magenta-800: #943d73;--bfc-v2-color-magenta-900: #50253f;--bfc-v2-color-magenta-1000: #3d2232;--bfc-font-family: "Inter", "Satoshi", sans-serif;--font-fraunces: "Fraunces", serif;--font-inter: "Inter", sans-serif;--bfc-v2-font-family: "Inter", sans-serif;--bfc-heading-xxl-font-family: "Fraunces", serif;--bfc-background: var(--bfc-v2-color-mono-100);--bfc-foreground: var(--bfc-v2-color-mono-1000);--bfc-link: var(--bfc-v2-color-green-700);--bfc-card: var(--bfc-surface);--bfc-card-foreground: var(--bfc-v2-color-mono-900);--bfc-popover: var(--bfc-v2-color-mono-100);--bfc-primary: #a3e635;--bfc-primary-foreground: #262626;--bfc-secondary: var(--bfc-v2-color-mono-200);--bfc-secondary-foreground: var(--bfc-v2-color-mono-900);--bfc-muted: var(--bfc-v2-color-mono-200);--bfc-muted-foreground: var(--bfc-v2-color-mono-600);--bfc-accent: var(--bfc-v2-color-mono-300);--bfc-accent-foreground: var(--bfc-v2-color-mono-900);--bfc-border: var(--bfc-v2-color-mono-1000);--bfc-border-subtle: rgb(from var(--bfc-v2-color-mono-1000) r g b / .15);--bfc-input: var(--bfc-v2-color-mono-300);--bfc-ring: var(--bfc-v2-color-mono-1000);--bfc-radius: .5rem;--bfc-feedback-positive: var(--bfc-v2-color-green-500);--bfc-feedback-negative: var(--bfc-v2-color-red-600);--bfc-surface: var(--bfc-white);--bfc-surface-border: var(--bfc-v2-color-mono-300);--bfc-white: #ffffff;--bcf-shimmer-outer: var(--bfc-v2-color-mono-200);--bcf-shimmer-inner: var(--bfc-v2-color-mono-300);--bfc-text-default: var(--bfc-v2-color-mono-900);--bfc-text-subtle: var(--bfc-v2-color-mono-700);--bfc-text-subtlest: var(--bfc-v2-color-mono-600);--bfc-success-bg: var(--bfc-v2-color-green-100);--bfc-success-text: var(--bfc-v2-color-green-700);--bfc-success-border: var(--bfc-v2-color-green-300);--bfc-destructive-bg: var(--bfc-v2-color-red-100);--bfc-destructive-text: var(--bfc-v2-color-red-600);--bfc-destructive-border: var(--bfc-v2-color-red-300);--bfc-warning-bg: var(--bfc-v2-color-yellow-100);--bfc-warning-text: var(--bfc-v2-color-yellow-800);--bfc-warning-border: var(--bfc-v2-color-yellow-300)}.dark{--bfc-white: #000;--bfc-v2-color-mono-100: #171717;--bfc-v2-color-mono-200: #262626;--bfc-v2-color-mono-300: #404040;--bfc-v2-color-mono-400: #525252;--bfc-v2-color-mono-500: #737373;--bfc-v2-color-mono-600: #a3a3a3;--bfc-v2-color-mono-700: #d4d4d4;--bfc-v2-color-mono-800: #e5e5e5;--bfc-v2-color-mono-900: #f5f5f5;--bfc-v2-color-mono-1000: #fafafa;--bfc-v2-color-red-100: #42221f;--bfc-v2-color-red-200: #5d1f1a;--bfc-v2-color-red-300: #ae2e24;--bfc-v2-color-red-400: #c9372c;--bfc-v2-color-red-500: #e2483d;--bfc-v2-color-red-600: #f15b50;--bfc-v2-color-red-700: #f87168;--bfc-v2-color-red-800: #fd9891;--bfc-v2-color-red-900: #ffd5d2;--bfc-v2-color-red-1000: #ffeceb;--bfc-v2-color-orange-100: #38291e;--bfc-v2-color-orange-200: #702e00;--bfc-v2-color-orange-300: #a54800;--bfc-v2-color-orange-400: #c25100;--bfc-v2-color-orange-500: #e56910;--bfc-v2-color-orange-600: #f38a3f;--bfc-v2-color-orange-700: #fea362;--bfc-v2-color-orange-800: #fec195;--bfc-v2-color-orange-900: #fedec8;--bfc-v2-color-orange-1000: #fff3eb;--bfc-v2-color-yellow-100: #332e1b;--bfc-v2-color-yellow-200: #533f04;--bfc-v2-color-yellow-300: #7f5f01;--bfc-v2-color-yellow-400: #946f00;--bfc-v2-color-yellow-500: #b38600;--bfc-v2-color-yellow-600: #cf9f02;--bfc-v2-color-yellow-700: #ddb30e;--bfc-v2-color-yellow-800: #eed12b;--bfc-v2-color-yellow-900: #f5e989;--bfc-v2-color-yellow-1000: #fef7c8;--bfc-v2-color-lime-100: #2b331b;--bfc-v2-color-lime-200: #3f5304;--bfc-v2-color-lime-300: #546c00;--bfc-v2-color-lime-400: #647f01;--bfc-v2-color-lime-500: #83b300;--bfc-v2-color-lime-600: #91cf02;--bfc-v2-color-lime-700: #a3e635;--bfc-v2-color-lime-800: #b3ee2b;--bfc-v2-color-lime-900: #d6f589;--bfc-v2-color-lime-1000: #e9fec8;--bfc-v2-color-green-100: #1c3329;--bfc-v2-color-green-200: #164b35;--bfc-v2-color-green-300: #216e4e;--bfc-v2-color-green-400: #1f845a;--bfc-v2-color-green-500: #22a06b;--bfc-v2-color-green-600: #2abb7f;--bfc-v2-color-green-700: #4bce97;--bfc-v2-color-green-800: #7ee2b8;--bfc-v2-color-green-900: #baf3db;--bfc-v2-color-green-1000: #dcfff1;--bfc-v2-color-blue-100: #1c2b42;--bfc-v2-color-blue-200: #123263;--bfc-v2-color-blue-300: #1558bc;--bfc-v2-color-blue-400: #1868db;--bfc-v2-color-blue-500: #357de8;--bfc-v2-color-blue-600: #4688ec;--bfc-v2-color-blue-700: #669df1;--bfc-v2-color-blue-800: #8fb8f6;--bfc-v2-color-blue-900: #cfe1fd;--bfc-v2-color-blue-1000: #e9f2fe;--bfc-v2-color-teal-100: #1e3137;--bfc-v2-color-teal-200: #164555;--bfc-v2-color-teal-300: #206a83;--bfc-v2-color-teal-400: #227d9b;--bfc-v2-color-teal-500: #2898bd;--bfc-v2-color-teal-600: #42b2d7;--bfc-v2-color-teal-700: #6cc3e0;--bfc-v2-color-teal-800: #9dd9ee;--bfc-v2-color-teal-900: #c6edfb;--bfc-v2-color-teal-1000: #e7f9ff;--bfc-v2-color-purple-100: #2b273f;--bfc-v2-color-purple-200: #352c63;--bfc-v2-color-purple-300: #5e4db2;--bfc-v2-color-purple-400: #6e5dc6;--bfc-v2-color-purple-500: #8270db;--bfc-v2-color-purple-600: #8f7ee7;--bfc-v2-color-purple-700: #9f8fef;--bfc-v2-color-purple-800: #b8acf6;--bfc-v2-color-purple-900: #dfd8fd;--bfc-v2-color-purple-1000: #f8eefe;--bfc-v2-color-magenta-100: #3d2232;--bfc-v2-color-magenta-200: #50253f;--bfc-v2-color-magenta-300: #943d73;--bfc-v2-color-magenta-400: #ae4787;--bfc-v2-color-magenta-500: #cd519d;--bfc-v2-color-magenta-600: #da62ac;--bfc-v2-color-magenta-700: #e774bb;--bfc-v2-color-magenta-800: #f797d2;--bfc-v2-color-magenta-900: #fdd0ec;--bfc-v2-color-magenta-1000: #ffecf8}.\!container{width:100%!important;margin-right:auto!important;margin-left:auto!important;padding-right:2rem!important;padding-left:2rem!important}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media (min-width: 1400px){.\!container{max-width:1400px!important}.container{max-width:1400px}}.link{color:var(--bfc-link);text-decoration-line:underline;text-decoration-color:var(--bfc-link);text-decoration-thickness:2px;text-underline-offset:2px;opacity:.9;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.link:hover{text-decoration-thickness:3px;opacity:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-left-\[6px\]{left:-6px}.-right-1{right:-.25rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.bottom-0\.5{bottom:.125rem}.bottom-12{bottom:3rem}.bottom-2{bottom:.5rem}.bottom-20{bottom:5rem}.bottom-3{bottom:.75rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\.5{left:.375rem}.left-1\/2{left:50%}.left-2{left:.5rem}.left-4{left:1rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-0\.5{right:.125rem}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-4{top:1rem}.top-\[50\%\]{top:50%}.top-\[var\(--header-nav-height\)\]{top:var(--header-nav-height)}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1000\]{z-index:1000}.z-\[1001\]{z-index:1001}.z-\[1\]{z-index:1}.z-\[9999\]{z-index:9999}.\!m-0{margin:0!important}.m-0{margin:0}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-auto{margin-top:auto;margin-bottom:auto}.\!mb-1{margin-bottom:.25rem!important}.\!mt-0{margin-top:0!important}.-mt-1{margin-top:-.25rem}.-mt-px{margin-top:-1px}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-\[calc\(var\(--tree-item-level\)\*0\.5rem\)\]{margin-left:calc(var(--tree-item-level) * .5rem)}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-40{margin-top:10rem}.mt-6{margin-top:1.5rem}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.\!inline{display:inline!important}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[2\/1\]{aspect-ratio:2/1}.aspect-video{aspect-ratio:16 / 9}.\!size-2{width:.5rem!important;height:.5rem!important}.size-10{width:2.5rem;height:2.5rem}.size-12{width:3rem;height:3rem}.size-20{width:5rem;height:5rem}.size-3{width:.75rem;height:.75rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.\!h-5{height:1.25rem!important}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-44{height:11rem}.h-5{height:1.25rem}.h-52{height:13rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[18px\]{height:18px}.h-\[1px\]{height:1px}.h-\[26px\]{height:26px}.h-\[50dvh\]{height:50dvh}.h-\[calc\(100dvh-var\(--header-nav-height\)\)\]{height:calc(100dvh - var(--header-nav-height))}.h-\[calc\(100dvh-var\(--header-nav-height\,0\)\)\]{height:calc(100dvh - var(--header-nav-height,0))}.h-\[calc\(100vh-4rem\)\]{height:calc(100vh - 4rem)}.h-\[calc\(100vh-8rem\)\]{height:calc(100vh - 8rem)}.h-\[calc\(var\(--knowledge-review-scroll-height\)\)\]{height:calc(var(--knowledge-review-scroll-height))}.h-\[calc\(var\(--knowledge-review-scroll-height\)-50px\)\]{height:calc(var(--knowledge-review-scroll-height) - 50px)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.max-h-\[300px\]{max-height:300px}.max-h-\[80vh\]{max-height:80vh}.min-h-0{min-height:0px}.min-h-4{min-height:1rem}.min-h-9{min-height:2.25rem}.min-h-96{min-height:24rem}.min-h-\[100px\]{min-height:100px}.min-h-\[44px\]{min-height:44px}.min-h-\[60px\]{min-height:60px}.min-h-screen{min-height:100vh}.\!w-5{width:1.25rem!important}.w-0{width:0px}.w-1{width:.25rem}.w-11{width:2.75rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-5\/6{width:83.333333%}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[1px\]{width:1px}.w-\[260px\]{width:260px}.w-\[64px\]{width:64px}.w-\[var\(--left-nav-width\)\]{width:var(--left-nav-width)}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.min-w-0{min-width:0px}.min-w-5{min-width:1.25rem}.min-w-60{min-width:15rem}.min-w-80{min-width:20rem}.min-w-\[200px\]{min-width:200px}.min-w-\[20px\]{min-width:20px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-32{max-width:8rem}.max-w-52{max-width:13rem}.max-w-56{max-width:14rem}.max-w-\[100vw\]{max-width:100vw}.max-w-\[300px\]{max-width:300px}.max-w-\[400px\]{max-width:400px}.max-w-\[95vw\]{max-width:95vw}.max-w-\[var\(--left-nav-width\,inherit\)\]{max-width:var(--left-nav-width,inherit)}.max-w-lg{max-width:32rem}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.basis-0{flex-basis:0px}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-center{transform-origin:center}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0\.5{--tw-translate-y: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-125{--tw-scale-x: 1.25;--tw-scale-y: 1.25;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-ew-resize{cursor:ew-resize}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.cursor-zoom-out{cursor:zoom-out}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.list-outside{list-style-position:outside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.\!justify-start{justify-content:flex-start!important}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-stretch{justify-content:stretch}.justify-items-start{justify-items:start}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-\[2px\]{gap:2px}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-x-2>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(2px * var(--tw-divide-x-reverse));border-left-width:calc(2px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-dark-300>:not([hidden])~:not([hidden]){border-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.divide-dark-500>:not([hidden])~:not([hidden]){border-color:var(--bfc-v2-color-mono-500, #A3A3A3)}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-b-lg{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-b-md{border-bottom-right-radius:.375rem;border-bottom-left-radius:.375rem}.rounded-l-full{border-top-left-radius:9999px;border-bottom-left-radius:9999px}.rounded-r-full{border-top-right-radius:9999px;border-bottom-right-radius:9999px}.rounded-r-md{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-s{border-start-start-radius:.25rem;border-end-start-radius:.25rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-\[1\.5px\]{border-width:1.5px}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-0{border-top-width:0px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[--color-border\]{border-color:var(--color-border)}.border-background{border-color:var(--bfc-background)}.border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity, 1))}.border-blue{border-color:var(--bfc-v2-color-blue-700, #1868db)}.border-blue-600{border-color:var(--bfc-v2-color-blue-600, #357de8)}.border-blue-700{border-color:var(--bfc-v2-color-blue-700, #1868db)}.border-border{border-color:var(--bfc-border)}.border-border-subtle{border-color:var(--bfc-border-subtle)}.border-dark{border-color:var(--bfc-v2-color-mono-900, #262626)}.border-dark-200{border-color:var(--bfc-v2-color-mono-200, #F5F5F5)}.border-dark-300{border-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.border-dark-400{border-color:var(--bfc-v2-color-mono-400, #D4D4D4)}.border-destructive{border-color:var(--bfc-destructive-border)}.border-foreground{border-color:var(--bfc-foreground)}.border-green{border-color:var(--bfc-v2-color-green-700, #1f845a)}.border-input{border-color:var(--bfc-input)}.border-primary{border-color:var(--bfc-primary)}.border-red{border-color:var(--bfc-v2-color-red-700, #c9372c)}.border-red-600{border-color:var(--bfc-v2-color-red-600, #e2483d)}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.border-success{border-color:var(--bfc-success-border)}.border-transparent{border-color:transparent}.border-warning{border-color:var(--bfc-warning-border)}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-yellow{border-color:var(--bfc-v2-color-yellow-700, #946f00)}.\!border-t-foreground{border-top-color:var(--bfc-foreground)!important}.border-b-dark-300{border-bottom-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.\!bg-transparent{background-color:transparent!important}.bg-\[--color-bg\]{background-color:var(--color-bg)}.bg-background{background-color:var(--bfc-background)}.bg-black\/50{background-color:#00000080}.bg-black\/80{background-color:#000c}.bg-blue-100{background-color:var(--bfc-v2-color-blue-100, #e9f2fe)}.bg-blue-200{background-color:var(--bfc-v2-color-blue-200, #cfe1fd)}.bg-blue-300{background-color:var(--bfc-v2-color-blue-300, #8fb8f6)}.bg-blue-600{background-color:var(--bfc-v2-color-blue-600, #357de8)}.bg-border{background-color:var(--bfc-border)}.bg-card{background-color:var(--bfc-card)}.bg-dark{background-color:var(--bfc-v2-color-mono-900, #262626)}.bg-dark-100{background-color:var(--bfc-v2-color-mono-100, #FAFAFA)}.bg-dark-200{background-color:var(--bfc-v2-color-mono-200, #F5F5F5)}.bg-dark-300{background-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.bg-dark-400{background-color:var(--bfc-v2-color-mono-400, #D4D4D4)}.bg-dark-600{background-color:var(--bfc-v2-color-mono-600, #737373)}.bg-dark-700{background-color:var(--bfc-v2-color-mono-700, #525252)}.bg-destructive{background-color:var(--bfc-destructive-bg)}.bg-emerald-400{--tw-bg-opacity: 1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}.bg-foreground{background-color:var(--bfc-foreground)}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-green-100{background-color:var(--bfc-v2-color-green-100, #dcfff1)}.bg-green-600{background-color:var(--bfc-v2-color-green-600, #22a06b)}.bg-input{background-color:var(--bfc-input)}.bg-lime-100{--tw-bg-opacity: 1;background-color:rgb(236 252 203 / var(--tw-bg-opacity, 1))}.bg-muted{background-color:var(--bfc-muted)}.bg-popover{background-color:var(--bfc-popover)}.bg-primary{background-color:var(--bfc-primary)}.bg-red-100{background-color:var(--bfc-v2-color-red-100, #ffeceb)}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-600{background-color:var(--bfc-v2-color-red-600, #e2483d)}.bg-secondary{background-color:var(--bfc-secondary)}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.bg-stone-300{--tw-bg-opacity: 1;background-color:rgb(214 211 209 / var(--tw-bg-opacity, 1))}.bg-success{background-color:var(--bfc-success-bg)}.bg-surface{background-color:var(--bfc-white)}.bg-transparent{background-color:transparent}.bg-warning{background-color:var(--bfc-warning-bg)}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/30{background-color:#ffffff4d}.bg-yellow-100{background-color:var(--bfc-v2-color-yellow-100, #fef7c8)}.bg-yellow-400{background-color:var(--bfc-v2-color-yellow-400, #fbbf25)}.bg-zinc-800\/80{background-color:#27272acc}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-background{--tw-gradient-from: var(--bfc-background) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.\!fill-dark-900{fill:var(--bfc-v2-color-mono-900, #262626)!important}.fill-foreground{fill:var(--bfc-foreground)}.stroke-card{stroke:var(--bfc-card)}.stroke-2{stroke-width:2}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[1px\]{padding:1px}.p-\[6px\]{padding:6px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[6px\]{padding-left:6px;padding-right:6px}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-\[1px\]{padding-top:1px;padding-bottom:1px}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pl-\[calc\(var\(--tree-item-level\)\*0\.5rem\)\]{padding-left:calc(var(--tree-item-level) * .5rem)}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-inter{font-family:var(--font-inter),sans-serif}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:var(--bfc-font-family),system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[15px\]{font-size:15px}.text-\[2rem\]{font-size:2rem}.text-\[64px\]{font-size:64px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-10{line-height:2.5rem}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-\[72px\]{line-height:72px}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-normal{letter-spacing:0em}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-background{color:var(--bfc-background)}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-blue{color:var(--bfc-v2-color-blue-700, #1868db)}.text-blue-600{color:var(--bfc-v2-color-blue-600, #357de8)}.text-blue-700{color:var(--bfc-v2-color-blue-700, #1868db)}.text-card-foreground{color:var(--bfc-card-foreground)}.text-current{color:currentColor}.text-dark{color:var(--bfc-v2-color-mono-900, #262626)}.text-dark-100{color:var(--bfc-v2-color-mono-100, #FAFAFA)}.text-dark-500{color:var(--bfc-v2-color-mono-500, #A3A3A3)}.text-dark-600{color:var(--bfc-v2-color-mono-600, #737373)}.text-dark-700{color:var(--bfc-v2-color-mono-700, #525252)}.text-dark-900{color:var(--bfc-v2-color-mono-900, #262626)}.text-default{color:var(--bfc-text-default)}.text-destructive{color:var(--bfc-destructive-text)}.text-feedback-positive{color:var(--bfc-feedback-positive)}.text-foreground{color:var(--bfc-foreground)}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-green-400{color:var(--bfc-v2-color-green-400, #4bce97)}.text-green-500{color:var(--bfc-v2-color-green-500, #2abb7f)}.text-green-600{color:var(--bfc-v2-color-green-600, #22a06b)}.text-inherit{color:inherit}.text-link{color:var(--bfc-link)}.text-muted-foreground{color:var(--bfc-muted-foreground)}.text-popover-foreground{color:var(--bfc-foreground)}.text-primary,.text-primary-foreground{color:var(--bfc-primary-foreground)}.text-red-400{color:var(--bfc-v2-color-red-400, #f87168)}.text-red-500{color:var(--bfc-v2-color-red-500, #f15b50)}.text-red-600{color:var(--bfc-v2-color-red-600, #e2483d)}.text-rose-500{--tw-text-opacity: 1;color:rgb(244 63 94 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:var(--bfc-secondary-foreground)}.text-subtle{color:var(--bfc-text-subtle)}.text-subtlest{color:var(--bfc-text-subtlest)}.text-success{color:var(--bfc-success-text)}.text-warning{color:var(--bfc-warning-text)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.text-zinc-800{--tw-text-opacity: 1;color:rgb(39 39 42 / var(--tw-text-opacity, 1))}.underline-offset-4{text-underline-offset:4px}.\!opacity-100{opacity:1!important}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0px_1px_3px_0px_rgba\(95\,95\,95\,0\.26\)\]{--tw-shadow: 0px 1px 3px 0px rgba(95,95,95,.26);--tw-shadow-colored: 0px 1px 3px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[2px_2px_0_0_\#0A0A0D\]{--tw-shadow: 2px 2px 0 0 #0A0A0D;--tw-shadow-colored: 2px 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[4px_4px_0_0_\#171717\]{--tw-shadow: 4px 4px 0 0 #171717;--tw-shadow-colored: 4px 4px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 2px 4px 12px 0 rgba(0,0,0,.14);--tw-shadow-colored: 2px 4px 12px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-dark-300{--tw-shadow-color: var(--bfc-v2-color-mono-300, #E5E5E5);--tw-shadow: var(--tw-shadow-colored)}.\!outline-none{outline:2px solid transparent!important;outline-offset:2px!important}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-1{outline-width:1px}.outline-lime-200{outline-color:#d9f99d}.\!ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)!important}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-primary{--tw-ring-color: var(--bfc-primary)}.ring-offset-background{--tw-ring-offset-color: var(--bfc-background)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.\!transition-shadow{transition-property:box-shadow!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important;transition-duration:.15s!important}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[grid-template-columns\]{transition-property:grid-template-columns;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[grid-template-rows\]{transition-property:grid-template-rows;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in-0{--tw-enter-opacity: 0}.zoom-in-95{--tw-enter-scale: .95}.duration-100{animation-duration:.1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{animation-timing-function:linear}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\@container{container-type:inline-size}.heading-lg{font-family:var(--bfc-v2-font-family);font-size:1.5rem;font-style:normal;font-weight:700;line-height:1.75rem}.heading-sm{font-family:var(--bfc-v2-font-family);font-size:1rem;font-style:normal;font-weight:700;line-height:1.25rem}.heading-xs{font-family:var(--bfc-v2-font-family);font-size:.875rem;font-style:normal;font-weight:700;line-height:1.25rem}.heading-xxxs{font-family:var(--bfc-v2-font-family);font-size:.625rem;font-style:normal;font-weight:700;line-height:.875rem}.text-subtlest{font-weight:400}.custom-dashed-border{position:relative;border:none}.custom-dashed-border:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px),repeating-linear-gradient(90deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px),repeating-linear-gradient(180deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px),repeating-linear-gradient(270deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px);background-position:0 0,0 0,100% 0,0 100%;background-size:1px 100%,100% 1px,1px 100%,100% 1px;background-repeat:no-repeat;pointer-events:none;border-radius:inherit;z-index:0}.custom-dashed-border-b{position:relative;border:none}.custom-dashed-border-b:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(90deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(180deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(270deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px);background-position:0 0,0 0,100% 0,0 100%;background-size:1px 100%,100% 1px,1px 100%,100% 1px;background-repeat:no-repeat;pointer-events:none;border-radius:inherit;z-index:0}.custom-dashed-border-t-dark-300{position:relative;border:none}.custom-dashed-border-t-dark-300:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(90deg,var(--bfc-v2-color-mono-300, #E5E5E5),var(--bfc-v2-color-mono-300, #E5E5E5) 8px,transparent 8px,transparent 16px),repeating-linear-gradient(180deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(270deg,transparent,transparent 8px,transparent 8px,transparent 16px);background-position:0 0,0 0,100% 0,0 100%;background-size:1px 100%,100% 1px,1px 100%,100% 1px;background-repeat:no-repeat;pointer-events:none;border-radius:inherit;z-index:0}.shimmer{animation:shimmer 3s infinite linear;background:linear-gradient(90deg,var(--bcf-shimmer-outer) 0%,var(--bcf-shimmer-inner) 20%,var(--bcf-shimmer-outer) 40%);background-size:200% 100%}.modern-spinner{position:relative;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem}.modern-spinner:before,.modern-spinner:after{content:"";position:absolute;border-radius:9999px}.modern-spinner:before{inset:0;border-width:1.5px}.modern-spinner:after{inset:0;border-width:1.5px;border-color:var(--bfc-primary);border-top-color:transparent;animation:spin 1s linear infinite}.animate-spin{animation:rotate 2s linear infinite;transform-box:fill-box;transform-origin:center;transform:none}.custom-dashed-border{--dashed-border-bg: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='8' ry='8' stroke='%23${dark[900].replace('#', '')}' stroke-width='2' stroke-dasharray='5%2c 10' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e")}.animate-original-pulse{animation:original-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.sparkle{&.gradient{background:conic-gradient(from 90deg,#e87af9,#fbbf25 51.9231deg,#fb923d,#f4405e 183.462deg,#8c5df6 244.038deg,#3c82f6 299.423deg,#e87af9 360deg)}height:100%;width:100%;opacity:1}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.1)}}@keyframes original-pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:var(--bfc-foreground)}.placeholder\:text-gray-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-gray-400::placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-muted-foreground::-moz-placeholder{color:var(--bfc-muted-foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--bfc-muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:0}.after\:-bottom-\[10px\]:after{content:var(--tw-content);bottom:-10px}.after\:-right-0\.5:after{content:var(--tw-content);right:-.125rem}.after\:-right-4:after{content:var(--tw-content);right:-1rem}.after\:bottom-0:after{content:var(--tw-content);bottom:0}.after\:left-\[35px\]:after{content:var(--tw-content);left:35px}.after\:right-\[-2px\]:after{content:var(--tw-content);right:-2px}.after\:top-0:after{content:var(--tw-content);top:0}.after\:top-1\/2:after{content:var(--tw-content);top:50%}.after\:top-\[38px\]:after{content:var(--tw-content);top:38px}.after\:z-10:after{content:var(--tw-content);z-index:10}.after\:block:after{content:var(--tw-content);display:block}.after\:h-1\/2:after{content:var(--tw-content);height:50%}.after\:h-14:after{content:var(--tw-content);height:3.5rem}.after\:w-1:after{content:var(--tw-content);width:.25rem}.after\:w-2:after{content:var(--tw-content);width:.5rem}.after\:w-\[1px\]:after{content:var(--tw-content);width:1px}.after\:-translate-y-1\/2:after{content:var(--tw-content);--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\:rounded-sm:after{content:var(--tw-content);border-radius:.125rem}.after\:rounded-l-md:after{content:var(--tw-content);border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--bfc-foreground)}.after\:bg-lime-400:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(163 230 53 / var(--tw-bg-opacity, 1))}.after\:bg-primary:after{content:var(--tw-content);background-color:var(--bfc-primary)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:opacity-100:after{content:var(--tw-content);opacity:1}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:content-\[\"\"\]:after{--tw-content: "";content:var(--tw-content)}.first\:pl-4:first-child{padding-left:1rem}.last\:\!mb-8:last-child{margin-bottom:2rem!important}.last\:mb-0:last-child{margin-bottom:0}.last\:border-b-0:last-child{border-bottom-width:0px}.last\:pr-4:last-child{padding-right:1rem}.last-of-type\:after\:hidden:last-of-type:after{content:var(--tw-content);display:none}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-dark-300:hover{border-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.hover\:bg-accent:hover{background-color:var(--bfc-accent)}.hover\:bg-black\/10:hover{background-color:#0000001a}.hover\:bg-black\/70:hover{background-color:#000000b3}.hover\:bg-blue-500:hover{background-color:var(--bfc-v2-color-blue-500, #4688ec)}.hover\:bg-dark-100:hover{background-color:var(--bfc-v2-color-mono-100, #FAFAFA)}.hover\:bg-dark-200:hover{background-color:var(--bfc-v2-color-mono-200, #F5F5F5)}.hover\:bg-dark-300:hover{background-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.hover\:bg-dark-800:hover{background-color:var(--bfc-v2-color-mono-800, #404040)}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-green-200:hover{background-color:var(--bfc-v2-color-green-200, #baf3db)}.hover\:bg-lime-100:hover{--tw-bg-opacity: 1;background-color:rgb(236 252 203 / var(--tw-bg-opacity, 1))}.hover\:bg-muted:hover{background-color:var(--bfc-muted)}.hover\:bg-red-200:hover{background-color:var(--bfc-v2-color-red-200, #ffd5d2)}.hover\:bg-zinc-700\/50:hover{background-color:#3f3f4680}.hover\:bg-opacity-80:hover{--tw-bg-opacity: .8}.hover\:text-accent-foreground:hover{color:var(--bfc-accent-foreground)}.hover\:text-dark-800:hover{color:var(--bfc-v2-color-mono-800, #404040)}.hover\:text-primary-foreground:hover{color:var(--bfc-primary-foreground)}.hover\:text-zinc-100:hover{--tw-text-opacity: 1;color:rgb(244 244 245 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:no-underline:hover{text-decoration-line:none}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-none:hover{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:duration-300:hover{transition-duration:.3s}.hover\:ease-in-out:hover{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:duration-300:hover{animation-duration:.3s}.hover\:ease-in-out:hover{animation-timing-function:cubic-bezier(.4,0,.2,1)}.focus\:bg-accent:focus{background-color:var(--bfc-accent)}.focus\:bg-lime-100:focus{--tw-bg-opacity: 1;background-color:rgb(236 252 203 / var(--tw-bg-opacity, 1))}.focus\:text-accent-foreground:focus{color:var(--bfc-accent-foreground)}.focus\:text-primary-foreground:focus{color:var(--bfc-primary-foreground)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-0:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: color-mix(in srgb, var(--bfc-primary) 85%, transparent)}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:border-ring:focus-visible{border-color:color-mix(in srgb,var(--bfc-primary) 85%,transparent)}.focus-visible\:bg-dark-800:focus-visible{background-color:var(--bfc-v2-color-mono-800, #404040)}.focus-visible\:\!outline-none:focus-visible{outline:2px solid transparent!important;outline-offset:2px!important}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-0:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: color-mix(in srgb, var(--bfc-primary) 85%, transparent)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: var(--bfc-background)}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:bg-dark-400:active{background-color:var(--bfc-v2-color-mono-400, #D4D4D4)}.active\:shadow-\[inset_2px_2px_0_0_\#262626\]:active{--tw-shadow: inset 2px 2px 0 0 #262626;--tw-shadow-colored: inset 2px 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:focus-within .group-focus-within\:flex{display:flex}.group:hover .group-hover\:flex{display:flex}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.group:hover .group-hover\:custom-dashed-border-hover:before{background-image:none;border:1px solid var(--bfc-border)}.group:hover .group-hover\:custom-dashed-border-hover{box-shadow:4px 4px 0 0 var(--bfc-border)}.group:focus .group-focus\:custom-dashed-border-hover:before{background-image:none;border:1px solid var(--bfc-border)}.group:focus .group-focus\:custom-dashed-border-hover{box-shadow:4px 4px 0 0 var(--bfc-border)}.group[data-state=open] .hover\:group-\[\&\[data-state\=open\]\]\:bg-dark-200:hover{background-color:var(--bfc-v2-color-mono-200, #F5F5F5)}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:.5rem}.group\/item:has([data-slot=item-description]) .group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5{--tw-translate-y: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/item:has([data-slot=item-description]) .group-has-\[\[data-slot\=item-description\]\]\/item\:self-start{align-self:flex-start}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled],.data-\[state\=closed\]\:pointer-events-none[data-state=closed]{pointer-events:none}.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}.data-\[state\=closed\]\:w-0[data-state=closed]{width:0px}.data-\[state\=open\]\:w-full[data-state=open]{width:100%}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:translate-x-\[1\.1rem\][data-state=checked]{--tw-translate-x: 1.1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=closed\]\:translate-x-full[data-state=closed]{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=open\]\:translate-x-0[data-state=open],.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--bfc-accent)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--bfc-primary)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--bfc-accent)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--bfc-muted)}.data-\[state\=unchecked\]\:bg-dark-500[data-state=unchecked]{background-color:var(--bfc-v2-color-mono-500, #A3A3A3)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--bfc-input)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--bfc-accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--bfc-muted-foreground)}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y: 100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y: -100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y: 100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}@container (min-width: 24rem){.\@sm\:block{display:block}}@container (min-width: 48rem){.\@3xl\:mb-4{margin-bottom:1rem}.\@3xl\:hidden{display:none}.\@3xl\:h-auto{height:auto}.\@3xl\:justify-center{justify-content:center}.\@3xl\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.\@3xl\:bg-transparent{background-color:transparent}.\@3xl\:p-0{padding:0}.\@3xl\:px-0{padding-left:0;padding-right:0}.\@3xl\:text-5xl{font-size:3rem;line-height:1}.\@3xl\:leading-normal{line-height:1.5}.\@3xl\:text-foreground{color:var(--bfc-foreground)}}.dark\:border-white:is(.dark *){--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-primary:is(.dark *){background-color:var(--bfc-primary)}.dark\:text-primary:is(.dark *){color:var(--bfc-primary-foreground)}.dark\:text-primary-foreground:is(.dark *){color:var(--bfc-primary-foreground)}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:shadow-\[2px_2px_0_0_\#FFF\]:is(.dark *){--tw-shadow: 2px 2px 0 0 #FFF;--tw-shadow-colored: 2px 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:shadow-\[4px_4px_0_0_\#fff\]:is(.dark *){--tw-shadow: 4px 4px 0 0 #fff;--tw-shadow-colored: 4px 4px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:hover\:shadow-none:hover:is(.dark *){--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:active\:shadow-\[inset_2px_2px_0_0_\#FFF\]:active:is(.dark *){--tw-shadow: inset 2px 2px 0 0 #FFF;--tw-shadow-colored: inset 2px 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}@media (min-width: 640px){.sm\:mt-0{margin-top:0}.sm\:size-5{width:1.25rem;height:1.25rem}.sm\:w-auto{width:auto}.sm\:max-w-\[90vw\]{max-width:90vw}.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:.5rem}.sm\:rounded-md{border-radius:.375rem}.sm\:p-8{padding:2rem}.sm\:text-left{text-align:left}}@media (min-width: 768px){.md\:static{position:static}.md\:relative{position:relative}.md\:bottom-4{bottom:1rem}.md\:top-0{top:0}.md\:mx-4{margin-left:1rem;margin-right:1rem}.md\:mr-4{margin-right:1rem}.md\:mt-4{margin-top:1rem}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-8{height:2rem}.md\:h-\[calc\(100dvh-var\(--header-nav-height\)-1rem\)\]{height:calc(100dvh - var(--header-nav-height) - 1rem)}.md\:h-auto{height:auto}.md\:h-full{height:100%}.md\:w-80{width:20rem}.md\:gap-4{gap:1rem}.md\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.md\:rounded-lg{border-radius:.5rem}.md\:bg-dark-100{background-color:var(--bfc-v2-color-mono-100, #FAFAFA)}.md\:bg-transparent{background-color:transparent}.md\:p-0{padding:0}.md\:p-4{padding:1rem}.md\:p-8{padding:2rem}.md\:text-left{text-align:left}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:shadow-\[2px_4px_12px_0_rgba\(0\,0\,0\,0\.14\)\]{--tw-shadow: 2px 4px 12px 0 rgba(0,0,0,.14);--tw-shadow-colored: 2px 4px 12px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.md\:data-\[state\=open\]\:w-\[var\(--left-nav-width\)\][data-state=open]{width:var(--left-nav-width)}.md\:dark\:shadow-\[2px_4px_12px_0_rgba\(255\,255\,255\,0\.14\)\]:is(.dark *){--tw-shadow: 2px 4px 12px 0 rgba(255,255,255,.14);--tw-shadow-colored: 2px 4px 12px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}}@media (min-width: 1024px){.lg\:block{display:block}.lg\:hidden{display:none}.lg\:grid-cols-\[1fr_4fr\]{grid-template-columns:1fr 4fr}.lg\:p-8{padding:2rem}}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>*:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>*:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>*:not(:first-child){border-left-width:0px}.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>*:not(:first-child){border-top-width:0px}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>*:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>*:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.\[\&\>\*\]\:focus-visible\:relative:focus-visible>*{position:relative}.\[\&\>\*\]\:focus-visible\:z-10:focus-visible>*{z-index:10}.\[\&\>\[data-radix-scroll-area-viewport\]\>div\:first-child\]\:\!block>[data-radix-scroll-area-viewport]>div:first-child{display:block!important}.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md>[data-slot=select-trigger]:last-of-type:has(select[aria-hidden=true]:last-child){border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:-moz-fit-content;width:fit-content}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y: 2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--bfc-primary-foreground)}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>div\]\:pointer-events-none>div{pointer-events:none}.\[\&\>h3\]\:my-0>h3{margin-top:0;margin-bottom:0}.\[\&\>input\]\:flex-1>input{flex:1 1 0%}.\[\&\>svg\]\:size-5>svg{width:1.25rem;height:1.25rem}.\[\&\>svg\]\:h-2\.5>svg{height:.625rem}.\[\&\>svg\]\:h-3>svg{height:.75rem}.\[\&\>svg\]\:w-2\.5>svg{width:.625rem}.\[\&\>svg\]\:w-3>svg{width:.75rem}.\[\&\>svg\]\:flex-shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-blue>svg{color:var(--bfc-v2-color-blue-700, #1868db)}.\[\&\>svg\]\:text-green>svg{color:var(--bfc-v2-color-green-700, #1f845a)}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--bfc-muted-foreground)}.\[\&\>svg\]\:text-red>svg{color:var(--bfc-v2-color-red-700, #c9372c)}.\[\&\>svg\]\:text-yellow>svg{color:var(--bfc-v2-color-yellow-700, #946f00)}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0px}.\[\&\[data-state\=\"open\"\]\]\:border-dark-100[data-state=open]{border-color:var(--bfc-v2-color-mono-100, #FAFAFA)}.\[\&\[data-state\=\"open\"\]\]\:bg-surface[data-state=open]{background-color:var(--bfc-white)}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\[data-state\=open\]\]\:px-6[data-state=open]{padding-left:1.5rem;padding-right:1.5rem}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:var(--bfc-muted-foreground)}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:var(--bfc-border)}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{outline:2px solid transparent;outline-offset:2px}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:var(--bfc-border)}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:var(--bfc-muted)}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:var(--bfc-border)}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{outline:2px solid transparent;outline-offset:2px}.\[\&_\>div\]\:w-full>div{width:100%}.\[\&_\>div\]\:table-fixed>div{table-layout:fixed}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--bfc-muted-foreground)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_\[data-slot\=\'alert-description\'\]\>p\]\:my-0 [data-slot=alert-description]>p{margin-top:0;margin-bottom:0}.\[\&_\[data-slot\=\'alert-description\'\]\]\:space-y-4 [data-slot=alert-description]>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.\[\&_a\:hover\]\:no-underline a:hover{text-decoration-line:none}.\[\&_a\]\:break-all a{word-break:break-all}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{-o-object-fit:cover;object-fit:cover}.\[\&_ol\]\:\!pl-16 ol{padding-left:4rem!important}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-3\.5 svg{width:.875rem;height:.875rem}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:size-5 svg{width:1.25rem;height:1.25rem}.\[\&_svg\]\:size-6 svg{width:1.5rem;height:1.5rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}.\[\&_ul\]\:\!pl-16 ul{padding-left:4rem!important}
1
+ @import"https://fonts.googleapis.com/css2?family=Fraunces:wght@700&family=Inter:wght@400;700&display=swap";*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(147 197 253 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(147 197 253 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--bfc-font-family),system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}ul{list-style-type:disc}ol{list-style-type:decimal}*,:before,:after{--tw-ring-color: color-mix(in srgb, var(--bfc-primary) 85%, transparent)}*:focus-visible:not([contenteditable]){--tw-ring-offset-width: 0px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);outline:2px solid transparent;outline-offset:2px}[contenteditable]:focus,[contenteditable]:focus-visible{box-shadow:none;outline:none;caret-color:currentColor}:root{--bfc-white: #fff;--bfc-v2-color-mono-100: #fafafa;--bfc-v2-color-mono-200: #f5f5f5;--bfc-v2-color-mono-300: #e5e5e5;--bfc-v2-color-mono-400: #d4d4d4;--bfc-v2-color-mono-500: #a3a3a3;--bfc-v2-color-mono-600: #737373;--bfc-v2-color-mono-700: #525252;--bfc-v2-color-mono-800: #404040;--bfc-v2-color-mono-900: #262626;--bfc-v2-color-mono-1000: #171717;--bfc-v2-color-red-100: #ffeceb;--bfc-v2-color-red-200: #ffd5d2;--bfc-v2-color-red-300: #fd9891;--bfc-v2-color-red-400: #f87168;--bfc-v2-color-red-500: #f15b50;--bfc-v2-color-red-600: #e2483d;--bfc-v2-color-red-700: #c9372c;--bfc-v2-color-red-800: #ae2e24;--bfc-v2-color-red-900: #5d1f1a;--bfc-v2-color-red-1000: #42221f;--bfc-v2-color-orange-100: #fff3eb;--bfc-v2-color-orange-200: #fedec8;--bfc-v2-color-orange-300: #fec195;--bfc-v2-color-orange-400: #fea362;--bfc-v2-color-orange-500: #f38a3f;--bfc-v2-color-orange-600: #e56910;--bfc-v2-color-orange-700: #c25100;--bfc-v2-color-orange-800: #a54800;--bfc-v2-color-orange-900: #702e00;--bfc-v2-color-orange-1000: #38291e;--bfc-v2-color-yellow-100: #fef7c8;--bfc-v2-color-yellow-200: #ffdf84;--bfc-v2-color-yellow-300: #fed153;--bfc-v2-color-yellow-400: #fbbf25;--bfc-v2-color-yellow-500: #e5ad1d;--bfc-v2-color-yellow-600: #c59109;--bfc-v2-color-yellow-700: #977007;--bfc-v2-color-yellow-800: #7f5f01;--bfc-v2-color-yellow-900: #533f04;--bfc-v2-color-yellow-1000: #332e1b;--bfc-v2-color-lime-100: #e9fec8;--bfc-v2-color-lime-200: #d6f589;--bfc-v2-color-lime-300: #b3ee2b;--bfc-v2-color-lime-400: #a3e635;--bfc-v2-color-lime-500: #91cf02;--bfc-v2-color-lime-600: #83b300;--bfc-v2-color-lime-700: #647f01;--bfc-v2-color-lime-800: #546c00;--bfc-v2-color-lime-900: #3f5304;--bfc-v2-color-lime-1000: #2b331b;--bfc-v2-color-green-100: #dcfff1;--bfc-v2-color-green-200: #baf3db;--bfc-v2-color-green-300: #7ee2b8;--bfc-v2-color-green-400: #4bce97;--bfc-v2-color-green-500: #2abb7f;--bfc-v2-color-green-600: #22a06b;--bfc-v2-color-green-700: #1f845a;--bfc-v2-color-green-800: #216e4e;--bfc-v2-color-green-900: #164b35;--bfc-v2-color-green-1000: #1c3329;--bfc-v2-color-blue-100: #e9f2fe;--bfc-v2-color-blue-200: #cfe1fd;--bfc-v2-color-blue-300: #8fb8f6;--bfc-v2-color-blue-400: #669df1;--bfc-v2-color-blue-500: #4688ec;--bfc-v2-color-blue-600: #357de8;--bfc-v2-color-blue-700: #1868db;--bfc-v2-color-blue-800: #1558bc;--bfc-v2-color-blue-900: #123263;--bfc-v2-color-blue-1000: #1c2b42;--bfc-v2-color-teal-100: #e7f9ff;--bfc-v2-color-teal-200: #c6edfb;--bfc-v2-color-teal-300: #9dd9ee;--bfc-v2-color-teal-400: #6cc3e0;--bfc-v2-color-teal-500: #42b2d7;--bfc-v2-color-teal-600: #2898bd;--bfc-v2-color-teal-700: #227d9b;--bfc-v2-color-teal-800: #206a83;--bfc-v2-color-teal-900: #164555;--bfc-v2-color-teal-1000: #1e3137;--bfc-v2-color-purple-100: #f8eefe;--bfc-v2-color-purple-200: #dfd8fd;--bfc-v2-color-purple-300: #b8acf6;--bfc-v2-color-purple-400: #9f8fef;--bfc-v2-color-purple-500: #8f7ee7;--bfc-v2-color-purple-600: #8270db;--bfc-v2-color-purple-700: #6e5dc6;--bfc-v2-color-purple-800: #5e4db2;--bfc-v2-color-purple-900: #352c63;--bfc-v2-color-purple-1000: #2b273f;--bfc-v2-color-magenta-100: #ffecf8;--bfc-v2-color-magenta-200: #fdd0ec;--bfc-v2-color-magenta-300: #f797d2;--bfc-v2-color-magenta-400: #e774bb;--bfc-v2-color-magenta-500: #da62ac;--bfc-v2-color-magenta-600: #cd519d;--bfc-v2-color-magenta-700: #ae4787;--bfc-v2-color-magenta-800: #943d73;--bfc-v2-color-magenta-900: #50253f;--bfc-v2-color-magenta-1000: #3d2232;--bfc-font-family: "Inter", "Satoshi", sans-serif;--font-fraunces: "Fraunces", serif;--font-inter: "Inter", sans-serif;--bfc-v2-font-family: "Inter", sans-serif;--bfc-heading-xxl-font-family: "Fraunces", serif;--bfc-background: var(--bfc-v2-color-mono-100);--bfc-foreground: var(--bfc-v2-color-mono-1000);--bfc-link: var(--bfc-v2-color-green-700);--bfc-card: var(--bfc-surface);--bfc-card-foreground: var(--bfc-v2-color-mono-900);--bfc-popover: var(--bfc-v2-color-mono-100);--bfc-primary: #a3e635;--bfc-primary-foreground: #262626;--bfc-secondary: var(--bfc-v2-color-mono-200);--bfc-secondary-foreground: var(--bfc-v2-color-mono-900);--bfc-muted: var(--bfc-v2-color-mono-200);--bfc-muted-foreground: var(--bfc-v2-color-mono-600);--bfc-accent: var(--bfc-v2-color-mono-300);--bfc-accent-foreground: var(--bfc-v2-color-mono-900);--bfc-border: var(--bfc-v2-color-mono-1000);--bfc-border-subtle: rgb(from var(--bfc-v2-color-mono-1000) r g b / .15);--bfc-input: var(--bfc-v2-color-mono-300);--bfc-ring: var(--bfc-v2-color-mono-1000);--bfc-radius: .5rem;--bfc-feedback-positive: var(--bfc-v2-color-green-500);--bfc-feedback-negative: var(--bfc-v2-color-red-600);--bfc-surface: var(--bfc-white);--bfc-surface-border: var(--bfc-v2-color-mono-300);--bfc-white: #ffffff;--bcf-shimmer-outer: var(--bfc-v2-color-mono-200);--bcf-shimmer-inner: var(--bfc-v2-color-mono-300);--bfc-text-default: var(--bfc-v2-color-mono-900);--bfc-text-subtle: var(--bfc-v2-color-mono-700);--bfc-text-subtlest: var(--bfc-v2-color-mono-600);--bfc-success-bg: var(--bfc-v2-color-green-100);--bfc-success-text: var(--bfc-v2-color-green-700);--bfc-success-border: var(--bfc-v2-color-green-300);--bfc-destructive-bg: var(--bfc-v2-color-red-100);--bfc-destructive-text: var(--bfc-v2-color-red-600);--bfc-destructive-border: var(--bfc-v2-color-red-300);--bfc-warning-bg: var(--bfc-v2-color-yellow-100);--bfc-warning-text: var(--bfc-v2-color-yellow-800);--bfc-warning-border: var(--bfc-v2-color-yellow-300)}.dark{--bfc-white: #000;--bfc-v2-color-mono-100: #171717;--bfc-v2-color-mono-200: #262626;--bfc-v2-color-mono-300: #404040;--bfc-v2-color-mono-400: #525252;--bfc-v2-color-mono-500: #737373;--bfc-v2-color-mono-600: #a3a3a3;--bfc-v2-color-mono-700: #d4d4d4;--bfc-v2-color-mono-800: #e5e5e5;--bfc-v2-color-mono-900: #f5f5f5;--bfc-v2-color-mono-1000: #fafafa;--bfc-v2-color-red-100: #42221f;--bfc-v2-color-red-200: #5d1f1a;--bfc-v2-color-red-300: #ae2e24;--bfc-v2-color-red-400: #c9372c;--bfc-v2-color-red-500: #e2483d;--bfc-v2-color-red-600: #f15b50;--bfc-v2-color-red-700: #f87168;--bfc-v2-color-red-800: #fd9891;--bfc-v2-color-red-900: #ffd5d2;--bfc-v2-color-red-1000: #ffeceb;--bfc-v2-color-orange-100: #38291e;--bfc-v2-color-orange-200: #702e00;--bfc-v2-color-orange-300: #a54800;--bfc-v2-color-orange-400: #c25100;--bfc-v2-color-orange-500: #e56910;--bfc-v2-color-orange-600: #f38a3f;--bfc-v2-color-orange-700: #fea362;--bfc-v2-color-orange-800: #fec195;--bfc-v2-color-orange-900: #fedec8;--bfc-v2-color-orange-1000: #fff3eb;--bfc-v2-color-yellow-100: #332e1b;--bfc-v2-color-yellow-200: #533f04;--bfc-v2-color-yellow-300: #7f5f01;--bfc-v2-color-yellow-400: #946f00;--bfc-v2-color-yellow-500: #b38600;--bfc-v2-color-yellow-600: #cf9f02;--bfc-v2-color-yellow-700: #ddb30e;--bfc-v2-color-yellow-800: #eed12b;--bfc-v2-color-yellow-900: #f5e989;--bfc-v2-color-yellow-1000: #fef7c8;--bfc-v2-color-lime-100: #2b331b;--bfc-v2-color-lime-200: #3f5304;--bfc-v2-color-lime-300: #546c00;--bfc-v2-color-lime-400: #647f01;--bfc-v2-color-lime-500: #83b300;--bfc-v2-color-lime-600: #91cf02;--bfc-v2-color-lime-700: #a3e635;--bfc-v2-color-lime-800: #b3ee2b;--bfc-v2-color-lime-900: #d6f589;--bfc-v2-color-lime-1000: #e9fec8;--bfc-v2-color-green-100: #1c3329;--bfc-v2-color-green-200: #164b35;--bfc-v2-color-green-300: #216e4e;--bfc-v2-color-green-400: #1f845a;--bfc-v2-color-green-500: #22a06b;--bfc-v2-color-green-600: #2abb7f;--bfc-v2-color-green-700: #4bce97;--bfc-v2-color-green-800: #7ee2b8;--bfc-v2-color-green-900: #baf3db;--bfc-v2-color-green-1000: #dcfff1;--bfc-v2-color-blue-100: #1c2b42;--bfc-v2-color-blue-200: #123263;--bfc-v2-color-blue-300: #1558bc;--bfc-v2-color-blue-400: #1868db;--bfc-v2-color-blue-500: #357de8;--bfc-v2-color-blue-600: #4688ec;--bfc-v2-color-blue-700: #669df1;--bfc-v2-color-blue-800: #8fb8f6;--bfc-v2-color-blue-900: #cfe1fd;--bfc-v2-color-blue-1000: #e9f2fe;--bfc-v2-color-teal-100: #1e3137;--bfc-v2-color-teal-200: #164555;--bfc-v2-color-teal-300: #206a83;--bfc-v2-color-teal-400: #227d9b;--bfc-v2-color-teal-500: #2898bd;--bfc-v2-color-teal-600: #42b2d7;--bfc-v2-color-teal-700: #6cc3e0;--bfc-v2-color-teal-800: #9dd9ee;--bfc-v2-color-teal-900: #c6edfb;--bfc-v2-color-teal-1000: #e7f9ff;--bfc-v2-color-purple-100: #2b273f;--bfc-v2-color-purple-200: #352c63;--bfc-v2-color-purple-300: #5e4db2;--bfc-v2-color-purple-400: #6e5dc6;--bfc-v2-color-purple-500: #8270db;--bfc-v2-color-purple-600: #8f7ee7;--bfc-v2-color-purple-700: #9f8fef;--bfc-v2-color-purple-800: #b8acf6;--bfc-v2-color-purple-900: #dfd8fd;--bfc-v2-color-purple-1000: #f8eefe;--bfc-v2-color-magenta-100: #3d2232;--bfc-v2-color-magenta-200: #50253f;--bfc-v2-color-magenta-300: #943d73;--bfc-v2-color-magenta-400: #ae4787;--bfc-v2-color-magenta-500: #cd519d;--bfc-v2-color-magenta-600: #da62ac;--bfc-v2-color-magenta-700: #e774bb;--bfc-v2-color-magenta-800: #f797d2;--bfc-v2-color-magenta-900: #fdd0ec;--bfc-v2-color-magenta-1000: #ffecf8}.\!container{width:100%!important;margin-right:auto!important;margin-left:auto!important;padding-right:2rem!important;padding-left:2rem!important}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media (min-width: 1400px){.\!container{max-width:1400px!important}.container{max-width:1400px}}.link{color:var(--bfc-link);text-decoration-line:underline;text-decoration-color:var(--bfc-link);text-decoration-thickness:2px;text-underline-offset:2px;opacity:.9;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.link:hover{text-decoration-thickness:3px;opacity:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-left-\[6px\]{left:-6px}.-right-1{right:-.25rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.bottom-0\.5{bottom:.125rem}.bottom-12{bottom:3rem}.bottom-2{bottom:.5rem}.bottom-20{bottom:5rem}.bottom-3{bottom:.75rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-4{left:1rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-0\.5{right:.125rem}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-4{top:1rem}.top-\[50\%\]{top:50%}.top-\[var\(--header-nav-height\)\]{top:var(--header-nav-height)}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1000\]{z-index:1000}.z-\[1001\]{z-index:1001}.z-\[1\]{z-index:1}.z-\[9999\]{z-index:9999}.\!m-0{margin:0!important}.m-0{margin:0}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-auto{margin-top:auto;margin-bottom:auto}.\!mb-1{margin-bottom:.25rem!important}.\!mt-0{margin-top:0!important}.-mt-1{margin-top:-.25rem}.-mt-px{margin-top:-1px}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-\[calc\(var\(--tree-item-level\)\*0\.5rem\)\]{margin-left:calc(var(--tree-item-level) * .5rem)}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-40{margin-top:10rem}.mt-6{margin-top:1.5rem}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.\!inline{display:inline!important}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[2\/1\]{aspect-ratio:2/1}.aspect-video{aspect-ratio:16 / 9}.\!size-2{width:.5rem!important;height:.5rem!important}.size-10{width:2.5rem;height:2.5rem}.size-12{width:3rem;height:3rem}.size-20{width:5rem;height:5rem}.size-3{width:.75rem;height:.75rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.\!h-5{height:1.25rem!important}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-44{height:11rem}.h-5{height:1.25rem}.h-52{height:13rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[18px\]{height:18px}.h-\[1px\]{height:1px}.h-\[26px\]{height:26px}.h-\[50dvh\]{height:50dvh}.h-\[calc\(100dvh-var\(--header-nav-height\)\)\]{height:calc(100dvh - var(--header-nav-height))}.h-\[calc\(100dvh-var\(--header-nav-height\,0\)\)\]{height:calc(100dvh - var(--header-nav-height,0))}.h-\[calc\(100vh-4rem\)\]{height:calc(100vh - 4rem)}.h-\[calc\(100vh-8rem\)\]{height:calc(100vh - 8rem)}.h-\[calc\(var\(--knowledge-review-scroll-height\)\)\]{height:calc(var(--knowledge-review-scroll-height))}.h-\[calc\(var\(--knowledge-review-scroll-height\)-50px\)\]{height:calc(var(--knowledge-review-scroll-height) - 50px)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.max-h-\[300px\]{max-height:300px}.max-h-\[80vh\]{max-height:80vh}.min-h-0{min-height:0px}.min-h-4{min-height:1rem}.min-h-9{min-height:2.25rem}.min-h-96{min-height:24rem}.min-h-\[100px\]{min-height:100px}.min-h-\[44px\]{min-height:44px}.min-h-\[60px\]{min-height:60px}.min-h-screen{min-height:100vh}.\!w-5{width:1.25rem!important}.w-0{width:0px}.w-1{width:.25rem}.w-11{width:2.75rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-5\/6{width:83.333333%}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[1px\]{width:1px}.w-\[260px\]{width:260px}.w-\[64px\]{width:64px}.w-\[var\(--left-nav-width\)\]{width:var(--left-nav-width)}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.min-w-0{min-width:0px}.min-w-5{min-width:1.25rem}.min-w-60{min-width:15rem}.min-w-80{min-width:20rem}.min-w-\[200px\]{min-width:200px}.min-w-\[20px\]{min-width:20px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-32{max-width:8rem}.max-w-52{max-width:13rem}.max-w-56{max-width:14rem}.max-w-\[100vw\]{max-width:100vw}.max-w-\[300px\]{max-width:300px}.max-w-\[400px\]{max-width:400px}.max-w-\[95vw\]{max-width:95vw}.max-w-\[var\(--left-nav-width\,inherit\)\]{max-width:var(--left-nav-width,inherit)}.max-w-lg{max-width:32rem}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.basis-0{flex-basis:0px}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-center{transform-origin:center}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0\.5{--tw-translate-y: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-125{--tw-scale-x: 1.25;--tw-scale-y: 1.25;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-ew-resize{cursor:ew-resize}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.cursor-zoom-out{cursor:zoom-out}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.list-outside{list-style-position:outside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.\!justify-start{justify-content:flex-start!important}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-stretch{justify-content:stretch}.justify-items-start{justify-items:start}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-\[2px\]{gap:2px}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-x-2>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(2px * var(--tw-divide-x-reverse));border-left-width:calc(2px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-dark-300>:not([hidden])~:not([hidden]){border-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.divide-dark-500>:not([hidden])~:not([hidden]){border-color:var(--bfc-v2-color-mono-500, #A3A3A3)}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-b-lg{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-b-md{border-bottom-right-radius:.375rem;border-bottom-left-radius:.375rem}.rounded-l-full{border-top-left-radius:9999px;border-bottom-left-radius:9999px}.rounded-r-full{border-top-right-radius:9999px;border-bottom-right-radius:9999px}.rounded-r-md{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-s{border-start-start-radius:.25rem;border-end-start-radius:.25rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-\[1\.5px\]{border-width:1.5px}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-0{border-top-width:0px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[--color-border\]{border-color:var(--color-border)}.border-background{border-color:var(--bfc-background)}.border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity, 1))}.border-blue{border-color:var(--bfc-v2-color-blue-700, #1868db)}.border-blue-600{border-color:var(--bfc-v2-color-blue-600, #357de8)}.border-blue-700{border-color:var(--bfc-v2-color-blue-700, #1868db)}.border-border{border-color:var(--bfc-border)}.border-border-subtle{border-color:var(--bfc-border-subtle)}.border-dark{border-color:var(--bfc-v2-color-mono-900, #262626)}.border-dark-200{border-color:var(--bfc-v2-color-mono-200, #F5F5F5)}.border-dark-300{border-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.border-dark-400{border-color:var(--bfc-v2-color-mono-400, #D4D4D4)}.border-destructive{border-color:var(--bfc-destructive-border)}.border-foreground{border-color:var(--bfc-foreground)}.border-green{border-color:var(--bfc-v2-color-green-700, #1f845a)}.border-input{border-color:var(--bfc-input)}.border-primary{border-color:var(--bfc-primary)}.border-red{border-color:var(--bfc-v2-color-red-700, #c9372c)}.border-red-600{border-color:var(--bfc-v2-color-red-600, #e2483d)}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.border-success{border-color:var(--bfc-success-border)}.border-transparent{border-color:transparent}.border-warning{border-color:var(--bfc-warning-border)}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-yellow{border-color:var(--bfc-v2-color-yellow-700, #946f00)}.\!border-t-foreground{border-top-color:var(--bfc-foreground)!important}.border-b-dark-300{border-bottom-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.\!bg-transparent{background-color:transparent!important}.bg-\[--color-bg\]{background-color:var(--color-bg)}.bg-background{background-color:var(--bfc-background)}.bg-black\/50{background-color:#00000080}.bg-black\/80{background-color:#000c}.bg-blue-100{background-color:var(--bfc-v2-color-blue-100, #e9f2fe)}.bg-blue-200{background-color:var(--bfc-v2-color-blue-200, #cfe1fd)}.bg-blue-300{background-color:var(--bfc-v2-color-blue-300, #8fb8f6)}.bg-blue-600{background-color:var(--bfc-v2-color-blue-600, #357de8)}.bg-border{background-color:var(--bfc-border)}.bg-card{background-color:var(--bfc-card)}.bg-dark{background-color:var(--bfc-v2-color-mono-900, #262626)}.bg-dark-100{background-color:var(--bfc-v2-color-mono-100, #FAFAFA)}.bg-dark-200{background-color:var(--bfc-v2-color-mono-200, #F5F5F5)}.bg-dark-300{background-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.bg-dark-400{background-color:var(--bfc-v2-color-mono-400, #D4D4D4)}.bg-dark-600{background-color:var(--bfc-v2-color-mono-600, #737373)}.bg-dark-700{background-color:var(--bfc-v2-color-mono-700, #525252)}.bg-destructive{background-color:var(--bfc-destructive-bg)}.bg-emerald-400{--tw-bg-opacity: 1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}.bg-foreground{background-color:var(--bfc-foreground)}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-green-100{background-color:var(--bfc-v2-color-green-100, #dcfff1)}.bg-green-600{background-color:var(--bfc-v2-color-green-600, #22a06b)}.bg-input{background-color:var(--bfc-input)}.bg-lime-100{--tw-bg-opacity: 1;background-color:rgb(236 252 203 / var(--tw-bg-opacity, 1))}.bg-muted{background-color:var(--bfc-muted)}.bg-popover{background-color:var(--bfc-popover)}.bg-primary{background-color:var(--bfc-primary)}.bg-red-100{background-color:var(--bfc-v2-color-red-100, #ffeceb)}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-600{background-color:var(--bfc-v2-color-red-600, #e2483d)}.bg-secondary{background-color:var(--bfc-secondary)}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.bg-stone-300{--tw-bg-opacity: 1;background-color:rgb(214 211 209 / var(--tw-bg-opacity, 1))}.bg-success{background-color:var(--bfc-success-bg)}.bg-surface{background-color:var(--bfc-white)}.bg-transparent{background-color:transparent}.bg-warning{background-color:var(--bfc-warning-bg)}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/30{background-color:#ffffff4d}.bg-yellow-100{background-color:var(--bfc-v2-color-yellow-100, #fef7c8)}.bg-yellow-400{background-color:var(--bfc-v2-color-yellow-400, #fbbf25)}.bg-zinc-800\/80{background-color:#27272acc}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-background{--tw-gradient-from: var(--bfc-background) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.\!fill-dark-900{fill:var(--bfc-v2-color-mono-900, #262626)!important}.fill-foreground{fill:var(--bfc-foreground)}.stroke-card{stroke:var(--bfc-card)}.stroke-2{stroke-width:2}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[1px\]{padding:1px}.p-\[6px\]{padding:6px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[6px\]{padding-left:6px;padding-right:6px}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-\[1px\]{padding-top:1px;padding-bottom:1px}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pl-\[calc\(var\(--tree-item-level\)\*0\.5rem\)\]{padding-left:calc(var(--tree-item-level) * .5rem)}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-inter{font-family:var(--font-inter),sans-serif}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:var(--bfc-font-family),system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[15px\]{font-size:15px}.text-\[2rem\]{font-size:2rem}.text-\[64px\]{font-size:64px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-10{line-height:2.5rem}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-\[72px\]{line-height:72px}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-normal{letter-spacing:0em}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-background{color:var(--bfc-background)}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-blue{color:var(--bfc-v2-color-blue-700, #1868db)}.text-blue-600{color:var(--bfc-v2-color-blue-600, #357de8)}.text-blue-700{color:var(--bfc-v2-color-blue-700, #1868db)}.text-card-foreground{color:var(--bfc-card-foreground)}.text-current{color:currentColor}.text-dark{color:var(--bfc-v2-color-mono-900, #262626)}.text-dark-100{color:var(--bfc-v2-color-mono-100, #FAFAFA)}.text-dark-500{color:var(--bfc-v2-color-mono-500, #A3A3A3)}.text-dark-600{color:var(--bfc-v2-color-mono-600, #737373)}.text-dark-700{color:var(--bfc-v2-color-mono-700, #525252)}.text-dark-900{color:var(--bfc-v2-color-mono-900, #262626)}.text-default{color:var(--bfc-text-default)}.text-destructive{color:var(--bfc-destructive-text)}.text-feedback-positive{color:var(--bfc-feedback-positive)}.text-foreground{color:var(--bfc-foreground)}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-green-400{color:var(--bfc-v2-color-green-400, #4bce97)}.text-green-500{color:var(--bfc-v2-color-green-500, #2abb7f)}.text-green-600{color:var(--bfc-v2-color-green-600, #22a06b)}.text-inherit{color:inherit}.text-link{color:var(--bfc-link)}.text-muted-foreground{color:var(--bfc-muted-foreground)}.text-popover-foreground{color:var(--bfc-foreground)}.text-primary,.text-primary-foreground{color:var(--bfc-primary-foreground)}.text-red-400{color:var(--bfc-v2-color-red-400, #f87168)}.text-red-500{color:var(--bfc-v2-color-red-500, #f15b50)}.text-red-600{color:var(--bfc-v2-color-red-600, #e2483d)}.text-rose-500{--tw-text-opacity: 1;color:rgb(244 63 94 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:var(--bfc-secondary-foreground)}.text-subtle{color:var(--bfc-text-subtle)}.text-subtlest{color:var(--bfc-text-subtlest)}.text-success{color:var(--bfc-success-text)}.text-warning{color:var(--bfc-warning-text)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.text-zinc-800{--tw-text-opacity: 1;color:rgb(39 39 42 / var(--tw-text-opacity, 1))}.underline-offset-4{text-underline-offset:4px}.\!opacity-100{opacity:1!important}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0px_1px_3px_0px_rgba\(95\,95\,95\,0\.26\)\]{--tw-shadow: 0px 1px 3px 0px rgba(95,95,95,.26);--tw-shadow-colored: 0px 1px 3px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[2px_2px_0_0_\#0A0A0D\]{--tw-shadow: 2px 2px 0 0 #0A0A0D;--tw-shadow-colored: 2px 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[4px_4px_0_0_\#171717\]{--tw-shadow: 4px 4px 0 0 #171717;--tw-shadow-colored: 4px 4px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 2px 4px 12px 0 rgba(0,0,0,.14);--tw-shadow-colored: 2px 4px 12px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-dark-300{--tw-shadow-color: var(--bfc-v2-color-mono-300, #E5E5E5);--tw-shadow: var(--tw-shadow-colored)}.\!outline-none{outline:2px solid transparent!important;outline-offset:2px!important}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-1{outline-width:1px}.outline-lime-200{outline-color:#d9f99d}.\!ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)!important}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-primary{--tw-ring-color: var(--bfc-primary)}.ring-offset-background{--tw-ring-offset-color: var(--bfc-background)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.\!transition-shadow{transition-property:box-shadow!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important;transition-duration:.15s!important}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[grid-template-columns\]{transition-property:grid-template-columns;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[grid-template-rows\]{transition-property:grid-template-rows;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in-0{--tw-enter-opacity: 0}.zoom-in-95{--tw-enter-scale: .95}.duration-100{animation-duration:.1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{animation-timing-function:linear}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\@container{container-type:inline-size}.heading-lg{font-family:var(--bfc-v2-font-family);font-size:1.5rem;font-style:normal;font-weight:700;line-height:1.75rem}.heading-sm{font-family:var(--bfc-v2-font-family);font-size:1rem;font-style:normal;font-weight:700;line-height:1.25rem}.heading-xs{font-family:var(--bfc-v2-font-family);font-size:.875rem;font-style:normal;font-weight:700;line-height:1.25rem}.heading-xxxs{font-family:var(--bfc-v2-font-family);font-size:.625rem;font-style:normal;font-weight:700;line-height:.875rem}.text-subtlest{font-weight:400}.custom-dashed-border{position:relative;border:none}.custom-dashed-border:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px),repeating-linear-gradient(90deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px),repeating-linear-gradient(180deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px),repeating-linear-gradient(270deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px);background-position:0 0,0 0,100% 0,0 100%;background-size:1px 100%,100% 1px,1px 100%,100% 1px;background-repeat:no-repeat;pointer-events:none;border-radius:inherit;z-index:0}.custom-dashed-border-b{position:relative;border:none}.custom-dashed-border-b:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(90deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(180deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(270deg,var(--bfc-border),var(--bfc-border) 8px,transparent 8px,transparent 16px);background-position:0 0,0 0,100% 0,0 100%;background-size:1px 100%,100% 1px,1px 100%,100% 1px;background-repeat:no-repeat;pointer-events:none;border-radius:inherit;z-index:0}.custom-dashed-border-t-dark-300{position:relative;border:none}.custom-dashed-border-t-dark-300:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(90deg,var(--bfc-v2-color-mono-300, #E5E5E5),var(--bfc-v2-color-mono-300, #E5E5E5) 8px,transparent 8px,transparent 16px),repeating-linear-gradient(180deg,transparent,transparent 8px,transparent 8px,transparent 16px),repeating-linear-gradient(270deg,transparent,transparent 8px,transparent 8px,transparent 16px);background-position:0 0,0 0,100% 0,0 100%;background-size:1px 100%,100% 1px,1px 100%,100% 1px;background-repeat:no-repeat;pointer-events:none;border-radius:inherit;z-index:0}.shimmer{animation:shimmer 3s infinite linear;background:linear-gradient(90deg,var(--bcf-shimmer-outer) 0%,var(--bcf-shimmer-inner) 20%,var(--bcf-shimmer-outer) 40%);background-size:200% 100%}.modern-spinner{position:relative;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem}.modern-spinner:before,.modern-spinner:after{content:"";position:absolute;border-radius:9999px}.modern-spinner:before{inset:0;border-width:1.5px}.modern-spinner:after{inset:0;border-width:1.5px;border-color:var(--bfc-primary);border-top-color:transparent;animation:spin 1s linear infinite}.animate-spin{animation:rotate 2s linear infinite;transform-box:fill-box;transform-origin:center;transform:none}.custom-dashed-border{--dashed-border-bg: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='8' ry='8' stroke='%23${dark[900].replace('#', '')}' stroke-width='2' stroke-dasharray='5%2c 10' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e")}.animate-original-pulse{animation:original-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.sparkle{&.gradient{background:conic-gradient(from 90deg,#e87af9,#fbbf25 51.9231deg,#fb923d,#f4405e 183.462deg,#8c5df6 244.038deg,#3c82f6 299.423deg,#e87af9 360deg)}height:100%;width:100%;opacity:1}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.1)}}@keyframes original-pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:var(--bfc-foreground)}.placeholder\:text-gray-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-gray-400::placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-muted-foreground::-moz-placeholder{color:var(--bfc-muted-foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--bfc-muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:0}.after\:-bottom-\[10px\]:after{content:var(--tw-content);bottom:-10px}.after\:-right-0\.5:after{content:var(--tw-content);right:-.125rem}.after\:-right-4:after{content:var(--tw-content);right:-1rem}.after\:bottom-0:after{content:var(--tw-content);bottom:0}.after\:left-\[35px\]:after{content:var(--tw-content);left:35px}.after\:right-\[-2px\]:after{content:var(--tw-content);right:-2px}.after\:top-0:after{content:var(--tw-content);top:0}.after\:top-1\/2:after{content:var(--tw-content);top:50%}.after\:top-\[38px\]:after{content:var(--tw-content);top:38px}.after\:z-10:after{content:var(--tw-content);z-index:10}.after\:block:after{content:var(--tw-content);display:block}.after\:h-1\/2:after{content:var(--tw-content);height:50%}.after\:h-14:after{content:var(--tw-content);height:3.5rem}.after\:w-1:after{content:var(--tw-content);width:.25rem}.after\:w-2:after{content:var(--tw-content);width:.5rem}.after\:w-\[1px\]:after{content:var(--tw-content);width:1px}.after\:-translate-y-1\/2:after{content:var(--tw-content);--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\:rounded-sm:after{content:var(--tw-content);border-radius:.125rem}.after\:rounded-l-md:after{content:var(--tw-content);border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--bfc-foreground)}.after\:bg-lime-400:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(163 230 53 / var(--tw-bg-opacity, 1))}.after\:bg-primary:after{content:var(--tw-content);background-color:var(--bfc-primary)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:opacity-100:after{content:var(--tw-content);opacity:1}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:content-\[\"\"\]:after{--tw-content: "";content:var(--tw-content)}.first\:pl-4:first-child{padding-left:1rem}.last\:\!mb-8:last-child{margin-bottom:2rem!important}.last\:mb-0:last-child{margin-bottom:0}.last\:border-b-0:last-child{border-bottom-width:0px}.last\:pr-4:last-child{padding-right:1rem}.last-of-type\:after\:hidden:last-of-type:after{content:var(--tw-content);display:none}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-dark-300:hover{border-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.hover\:bg-accent:hover{background-color:var(--bfc-accent)}.hover\:bg-black\/10:hover{background-color:#0000001a}.hover\:bg-black\/70:hover{background-color:#000000b3}.hover\:bg-blue-500:hover{background-color:var(--bfc-v2-color-blue-500, #4688ec)}.hover\:bg-dark-100:hover{background-color:var(--bfc-v2-color-mono-100, #FAFAFA)}.hover\:bg-dark-200:hover{background-color:var(--bfc-v2-color-mono-200, #F5F5F5)}.hover\:bg-dark-300:hover{background-color:var(--bfc-v2-color-mono-300, #E5E5E5)}.hover\:bg-dark-800:hover{background-color:var(--bfc-v2-color-mono-800, #404040)}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-green-200:hover{background-color:var(--bfc-v2-color-green-200, #baf3db)}.hover\:bg-lime-100:hover{--tw-bg-opacity: 1;background-color:rgb(236 252 203 / var(--tw-bg-opacity, 1))}.hover\:bg-muted:hover{background-color:var(--bfc-muted)}.hover\:bg-red-200:hover{background-color:var(--bfc-v2-color-red-200, #ffd5d2)}.hover\:bg-zinc-700\/50:hover{background-color:#3f3f4680}.hover\:bg-opacity-80:hover{--tw-bg-opacity: .8}.hover\:text-accent-foreground:hover{color:var(--bfc-accent-foreground)}.hover\:text-dark-800:hover{color:var(--bfc-v2-color-mono-800, #404040)}.hover\:text-primary-foreground:hover{color:var(--bfc-primary-foreground)}.hover\:text-zinc-100:hover{--tw-text-opacity: 1;color:rgb(244 244 245 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:no-underline:hover{text-decoration-line:none}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-none:hover{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:duration-300:hover{transition-duration:.3s}.hover\:ease-in-out:hover{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:duration-300:hover{animation-duration:.3s}.hover\:ease-in-out:hover{animation-timing-function:cubic-bezier(.4,0,.2,1)}.focus\:bg-accent:focus{background-color:var(--bfc-accent)}.focus\:bg-lime-100:focus{--tw-bg-opacity: 1;background-color:rgb(236 252 203 / var(--tw-bg-opacity, 1))}.focus\:text-accent-foreground:focus{color:var(--bfc-accent-foreground)}.focus\:text-primary-foreground:focus{color:var(--bfc-primary-foreground)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-0:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: color-mix(in srgb, var(--bfc-primary) 85%, transparent)}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:border-ring:focus-visible{border-color:color-mix(in srgb,var(--bfc-primary) 85%,transparent)}.focus-visible\:bg-dark-800:focus-visible{background-color:var(--bfc-v2-color-mono-800, #404040)}.focus-visible\:\!outline-none:focus-visible{outline:2px solid transparent!important;outline-offset:2px!important}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-0:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: color-mix(in srgb, var(--bfc-primary) 85%, transparent)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: var(--bfc-background)}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:bg-dark-400:active{background-color:var(--bfc-v2-color-mono-400, #D4D4D4)}.active\:shadow-\[inset_2px_2px_0_0_\#262626\]:active{--tw-shadow: inset 2px 2px 0 0 #262626;--tw-shadow-colored: inset 2px 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:focus-within .group-focus-within\:flex{display:flex}.group:hover .group-hover\:flex{display:flex}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.group:hover .group-hover\:custom-dashed-border-hover:before{background-image:none;border:1px solid var(--bfc-border)}.group:hover .group-hover\:custom-dashed-border-hover{box-shadow:4px 4px 0 0 var(--bfc-border)}.group:focus .group-focus\:custom-dashed-border-hover:before{background-image:none;border:1px solid var(--bfc-border)}.group:focus .group-focus\:custom-dashed-border-hover{box-shadow:4px 4px 0 0 var(--bfc-border)}.group[data-state=open] .hover\:group-\[\&\[data-state\=open\]\]\:bg-dark-200:hover{background-color:var(--bfc-v2-color-mono-200, #F5F5F5)}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:.5rem}.group\/item:has([data-slot=item-description]) .group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5{--tw-translate-y: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/item:has([data-slot=item-description]) .group-has-\[\[data-slot\=item-description\]\]\/item\:self-start{align-self:flex-start}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled],.data-\[state\=closed\]\:pointer-events-none[data-state=closed]{pointer-events:none}.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}.data-\[state\=closed\]\:w-0[data-state=closed]{width:0px}.data-\[state\=open\]\:w-full[data-state=open]{width:100%}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:translate-x-\[1\.1rem\][data-state=checked]{--tw-translate-x: 1.1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=closed\]\:translate-x-full[data-state=closed]{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=open\]\:translate-x-0[data-state=open],.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--bfc-accent)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--bfc-primary)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--bfc-accent)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--bfc-muted)}.data-\[state\=unchecked\]\:bg-dark-500[data-state=unchecked]{background-color:var(--bfc-v2-color-mono-500, #A3A3A3)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--bfc-input)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--bfc-accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--bfc-muted-foreground)}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y: 100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y: -100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y: 100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}@container (min-width: 24rem){.\@sm\:block{display:block}}@container (min-width: 48rem){.\@3xl\:mb-4{margin-bottom:1rem}.\@3xl\:hidden{display:none}.\@3xl\:h-auto{height:auto}.\@3xl\:justify-center{justify-content:center}.\@3xl\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.\@3xl\:bg-transparent{background-color:transparent}.\@3xl\:p-0{padding:0}.\@3xl\:px-0{padding-left:0;padding-right:0}.\@3xl\:text-5xl{font-size:3rem;line-height:1}.\@3xl\:leading-normal{line-height:1.5}.\@3xl\:text-foreground{color:var(--bfc-foreground)}}.dark\:border-white:is(.dark *){--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-primary:is(.dark *){background-color:var(--bfc-primary)}.dark\:text-primary:is(.dark *){color:var(--bfc-primary-foreground)}.dark\:text-primary-foreground:is(.dark *){color:var(--bfc-primary-foreground)}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:shadow-\[2px_2px_0_0_\#FFF\]:is(.dark *){--tw-shadow: 2px 2px 0 0 #FFF;--tw-shadow-colored: 2px 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:shadow-\[4px_4px_0_0_\#fff\]:is(.dark *){--tw-shadow: 4px 4px 0 0 #fff;--tw-shadow-colored: 4px 4px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:hover\:shadow-none:hover:is(.dark *){--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:active\:shadow-\[inset_2px_2px_0_0_\#FFF\]:active:is(.dark *){--tw-shadow: inset 2px 2px 0 0 #FFF;--tw-shadow-colored: inset 2px 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}@media (min-width: 640px){.sm\:mt-0{margin-top:0}.sm\:size-5{width:1.25rem;height:1.25rem}.sm\:w-auto{width:auto}.sm\:max-w-\[90vw\]{max-width:90vw}.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:.5rem}.sm\:rounded-md{border-radius:.375rem}.sm\:p-8{padding:2rem}.sm\:text-left{text-align:left}}@media (min-width: 768px){.md\:static{position:static}.md\:relative{position:relative}.md\:bottom-4{bottom:1rem}.md\:top-0{top:0}.md\:mx-4{margin-left:1rem;margin-right:1rem}.md\:mr-4{margin-right:1rem}.md\:mt-4{margin-top:1rem}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-8{height:2rem}.md\:h-\[calc\(100dvh-var\(--header-nav-height\)-1rem\)\]{height:calc(100dvh - var(--header-nav-height) - 1rem)}.md\:h-auto{height:auto}.md\:h-full{height:100%}.md\:w-80{width:20rem}.md\:gap-4{gap:1rem}.md\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.md\:rounded-lg{border-radius:.5rem}.md\:bg-dark-100{background-color:var(--bfc-v2-color-mono-100, #FAFAFA)}.md\:bg-transparent{background-color:transparent}.md\:p-0{padding:0}.md\:p-4{padding:1rem}.md\:p-8{padding:2rem}.md\:text-left{text-align:left}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:shadow-\[2px_4px_12px_0_rgba\(0\,0\,0\,0\.14\)\]{--tw-shadow: 2px 4px 12px 0 rgba(0,0,0,.14);--tw-shadow-colored: 2px 4px 12px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.md\:data-\[state\=open\]\:w-\[var\(--left-nav-width\)\][data-state=open]{width:var(--left-nav-width)}.md\:dark\:shadow-\[2px_4px_12px_0_rgba\(255\,255\,255\,0\.14\)\]:is(.dark *){--tw-shadow: 2px 4px 12px 0 rgba(255,255,255,.14);--tw-shadow-colored: 2px 4px 12px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}}@media (min-width: 1024px){.lg\:block{display:block}.lg\:hidden{display:none}.lg\:grid-cols-\[1fr_4fr\]{grid-template-columns:1fr 4fr}.lg\:p-8{padding:2rem}}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\:\:-webkit-search-cancel-button\]\:hidden::-webkit-search-cancel-button{display:none}.\[\&\:\:-webkit-search-decoration\]\:hidden::-webkit-search-decoration{display:none}.\[\&\:\:-webkit-search-results-button\]\:hidden::-webkit-search-results-button{display:none}.\[\&\:\:-webkit-search-results-decoration\]\:hidden::-webkit-search-results-decoration{display:none}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>*:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>*:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>*:not(:first-child){border-left-width:0px}.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>*:not(:first-child){border-top-width:0px}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>*:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>*:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.\[\&\>\*\]\:focus-visible\:relative:focus-visible>*{position:relative}.\[\&\>\*\]\:focus-visible\:z-10:focus-visible>*{z-index:10}.\[\&\>\[data-radix-scroll-area-viewport\]\>div\:first-child\]\:\!block>[data-radix-scroll-area-viewport]>div:first-child{display:block!important}.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md>[data-slot=select-trigger]:last-of-type:has(select[aria-hidden=true]:last-child){border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:-moz-fit-content;width:fit-content}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y: 2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--bfc-primary-foreground)}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>div\]\:pointer-events-none>div{pointer-events:none}.\[\&\>h3\]\:my-0>h3{margin-top:0;margin-bottom:0}.\[\&\>input\]\:flex-1>input{flex:1 1 0%}.\[\&\>svg\]\:size-5>svg{width:1.25rem;height:1.25rem}.\[\&\>svg\]\:h-2\.5>svg{height:.625rem}.\[\&\>svg\]\:h-3>svg{height:.75rem}.\[\&\>svg\]\:w-2\.5>svg{width:.625rem}.\[\&\>svg\]\:w-3>svg{width:.75rem}.\[\&\>svg\]\:flex-shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-blue>svg{color:var(--bfc-v2-color-blue-700, #1868db)}.\[\&\>svg\]\:text-green>svg{color:var(--bfc-v2-color-green-700, #1f845a)}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--bfc-muted-foreground)}.\[\&\>svg\]\:text-red>svg{color:var(--bfc-v2-color-red-700, #c9372c)}.\[\&\>svg\]\:text-yellow>svg{color:var(--bfc-v2-color-yellow-700, #946f00)}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0px}.\[\&\[data-state\=\"open\"\]\]\:border-dark-100[data-state=open]{border-color:var(--bfc-v2-color-mono-100, #FAFAFA)}.\[\&\[data-state\=\"open\"\]\]\:bg-surface[data-state=open]{background-color:var(--bfc-white)}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\[data-state\=open\]\]\:px-6[data-state=open]{padding-left:1.5rem;padding-right:1.5rem}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:var(--bfc-muted-foreground)}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:var(--bfc-border)}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{outline:2px solid transparent;outline-offset:2px}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:var(--bfc-border)}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:var(--bfc-muted)}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:var(--bfc-border)}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{outline:2px solid transparent;outline-offset:2px}.\[\&_\>div\]\:w-full>div{width:100%}.\[\&_\>div\]\:table-fixed>div{table-layout:fixed}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--bfc-muted-foreground)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_\[data-slot\=\'alert-description\'\]\>p\]\:my-0 [data-slot=alert-description]>p{margin-top:0;margin-bottom:0}.\[\&_\[data-slot\=\'alert-description\'\]\]\:space-y-4 [data-slot=alert-description]>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.\[\&_a\:hover\]\:no-underline a:hover{text-decoration-line:none}.\[\&_a\]\:break-all a{word-break:break-all}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{-o-object-fit:cover;object-fit:cover}.\[\&_ol\]\:\!pl-16 ol{padding-left:4rem!important}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-3\.5 svg{width:.875rem;height:.875rem}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:size-5 svg{width:1.25rem;height:1.25rem}.\[\&_svg\]\:size-6 svg{width:1.5rem;height:1.5rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}.\[\&_ul\]\:\!pl-16 ul{padding-left:4rem!important}