@peak-ai/canvas 1.2.0-rc.0 → 1.2.0

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.
@@ -4,9 +4,6 @@ type GrapesjsCanvasProps = {
4
4
  json: any;
5
5
  mode?: 'editor' | 'preview';
6
6
  setEditor: (editor: Editor) => void;
7
- performInteraction: (payload: Object) => Promise<{
8
- string: Object;
9
- }>;
10
7
  };
11
- declare function GrapesjsCanvas({ json, mode, setEditor, performInteraction }: GrapesjsCanvasProps): import("react/jsx-runtime").JSX.Element;
8
+ declare function GrapesjsCanvas({ json, mode, setEditor }: GrapesjsCanvasProps): import("react/jsx-runtime").JSX.Element;
12
9
  export default GrapesjsCanvas;
package/GrapesjsCanvas.js CHANGED
@@ -1,5 +1,5 @@
1
- import _asyncToGenerator from"@babel/runtime/helpers/asyncToGenerator";import _extends from"@babel/runtime/helpers/extends";import _regeneratorRuntime from"@babel/runtime/regenerator";/* eslint-disable @typescript-eslint/no-explicit-any */import React,{useEffect,useRef}from"react";import grapesjs from"grapesjs";import"grapesjs/dist/css/grapes.min.css";import tailwind from"grapesjs-tailwind";import{TypesToRegister}from"./constants";import{toKebabCase}from"./helpers";import{createGrapesjsShadcnGenericPlugin}from"./plugins/grapejs-plugin";import{StyledEditor}from"./index.styles";import{tailwindCompiledCss}from"./helpers/css";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";function setComponentProperties(editor,isPreview){function setPropertiesRecursively(comp){comp.set({editable:!isPreview,draggable:!isPreview,droppable:!isPreview&&comp.getName()!=="Shadcn-generic",selectable:!isPreview,hoverable:!isPreview,highlightable:!isPreview,copyable:false,resizable:false,removable:!isPreview,badgable:false});if(!isPreview){comp.set("toolbar",[{attributes:{"class":"fa fa-arrows"},command:"tlb-move"},{attributes:{"class":"fa fa-trash"},command:"tlb-delete"}])}comp.components().forEach(setPropertiesRecursively)}if(isPreview){editor.runCommand("core:preview")}else{editor.stopCommand("core:preview")}var wrapper=editor.getWrapper();wrapper==null||wrapper.find("*").forEach(setPropertiesRecursively)}function convertStyles(stylesArray){return stylesArray.map(function(block){var selectors=Array.isArray(block.selectors)?block.selectors.join(", "):block.selectors;var declarations=Object.entries(block.style).map(function(_ref){var prop=_ref[0],value=_ref[1];return toKebabCase(prop)+": "+value+";"}).join(" ");return selectors+" { "+declarations+" }"}).join("\n")}function expandActions(node){var _node$componentProps;if(node.type==="shadcn-generic"&&node.componentName==="Actions"&&Array.isArray((_node$componentProps=node.componentProps)==null?void 0:_node$componentProps.actions)){var actions=node.componentProps.actions;return _extends({},node,{type:"div",classes:["dashboard-cards"].concat(node.classes||[]),componentName:undefined,componentProps:undefined,components:actions.map(function(action,i){var icon=action.icon,title=action.title,description=action.description;return{id:node.id+"--action-card-"+i,type:"shadcn-generic",componentName:"ActionCard",badgable:false,copyable:false,componentProps:{icon:icon,headerContent:title,bodyContent:description}}})})}if(Array.isArray(node.components)){return _extends({},node,{components:node.components.map(expandActions)})}return node}function setInteracting(renderedComponents,ids,inProgress){ids.forEach(function(id){var gjsModel=renderedComponents[id];if(gjsModel){gjsModel.set("componentProps",_extends({},gjsModel.get("componentProps"),{interactionApiInProgress:inProgress}))}})}function GrapesjsCanvas(_ref2){var json=_ref2.json,_ref2$mode=_ref2.mode,mode=_ref2$mode===void 0?"preview":_ref2$mode,setEditor=_ref2.setEditor,performInteraction=_ref2.performInteraction;var editorRef=useRef(null);var editorInstance=useRef(null);var renderedComponents={};function performInteractionWrapper(_x){return _performInteractionWrapper.apply(this,arguments)}function _performInteractionWrapper(){_performInteractionWrapper=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(payload){var result;return _regeneratorRuntime.wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setInteracting(renderedComponents,payload.affectedComponents,true);_context.next=3;return performInteraction(payload);case 3:result=_context.sent;Object.entries(result||{}).forEach(function(_ref4){var key=_ref4[0],value=_ref4[1];var model=renderedComponents[key];if(model){model.set("componentProps",_extends({},model.get("componentProps"),value))}});setInteracting(renderedComponents,payload.affectedComponents,false);case 6:case"end":return _context.stop()}},_callee)}));return _performInteractionWrapper.apply(this,arguments)}useEffect(function(){var _json$pages,_json$pages$0$frames;if(!editorRef.current){return function(){// Cleanup if editorRef is not available
2
- }}if(editorInstance.current){editorInstance.current.destroy();editorInstance.current=null}var currentMode=mode;var editor=grapesjs.init({container:editorRef.current,height:"100%",plugins:[tailwind,createGrapesjsShadcnGenericPlugin(currentMode,performInteractionWrapper,renderedComponents)],storageManager:{type:"none"},richTextEditor:{actions:["bold","italic","underline","strikethrough"]}});// Tailwind CSS rules aren't fully added to our component
1
+ import _extends from"@babel/runtime/helpers/extends";/* eslint-disable @typescript-eslint/no-explicit-any */import React,{useEffect,useRef}from"react";import grapesjs from"grapesjs";import"grapesjs/dist/css/grapes.min.css";import tailwind from"grapesjs-tailwind";import{TypesToRegister}from"./constants";import{toKebabCase}from"./helpers";import{createGrapesjsShadcnGenericPlugin}from"./plugins/grapejs-plugin";import{StyledEditor}from"./index.styles";import{tailwindCompiledCss}from"./helpers/css";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";function setComponentProperties(editor,isPreview){function setPropertiesRecursively(comp){comp.set({editable:!isPreview,draggable:!isPreview,droppable:!isPreview&&comp.getName()!=="Shadcn-generic",selectable:!isPreview,hoverable:!isPreview,highlightable:!isPreview,copyable:false,resizable:false,removable:!isPreview,badgable:false});if(!isPreview){comp.set("toolbar",[{attributes:{"class":"fa fa-arrows"},command:"tlb-move"},{attributes:{"class":"fa fa-trash"},command:"tlb-delete"}])}comp.components().forEach(setPropertiesRecursively)}if(isPreview){editor.runCommand("core:preview")}else{editor.stopCommand("core:preview")}var wrapper=editor.getWrapper();wrapper==null||wrapper.find("*").forEach(setPropertiesRecursively)}function convertStyles(stylesArray){return stylesArray.map(function(block){var selectors=Array.isArray(block.selectors)?block.selectors.join(", "):block.selectors;var declarations=Object.entries(block.style).map(function(_ref){var prop=_ref[0],value=_ref[1];return toKebabCase(prop)+": "+value+";"}).join(" ");return selectors+" { "+declarations+" }"}).join("\n")}function expandActions(node){var _node$componentProps;if(node.type==="shadcn-generic"&&node.componentName==="Actions"&&Array.isArray((_node$componentProps=node.componentProps)==null?void 0:_node$componentProps.actions)){var actions=node.componentProps.actions;return _extends({},node,{type:"div",classes:["dashboard-cards"].concat(node.classes||[]),componentName:undefined,componentProps:undefined,components:actions.map(function(action,i){var icon=action.icon,title=action.title,description=action.description;return{id:node.id+"--action-card-"+i,type:"shadcn-generic",componentName:"ActionCard",badgable:false,copyable:false,componentProps:{icon:icon,headerContent:title,bodyContent:description}}})})}if(Array.isArray(node.components)){return _extends({},node,{components:node.components.map(expandActions)})}return node}function GrapesjsCanvas(_ref2){var json=_ref2.json,_ref2$mode=_ref2.mode,mode=_ref2$mode===void 0?"preview":_ref2$mode,setEditor=_ref2.setEditor;var editorRef=useRef(null);var editorInstance=useRef(null);useEffect(function(){var _json$pages,_json$pages$0$frames;if(!editorRef.current){return function(){// Cleanup if editorRef is not available
2
+ }}if(editorInstance.current){editorInstance.current.destroy();editorInstance.current=null}var currentMode=mode;var editor=grapesjs.init({container:editorRef.current,height:"100%",plugins:[tailwind,createGrapesjsShadcnGenericPlugin(currentMode)],storageManager:{type:"none"},richTextEditor:{actions:["bold","italic","underline","strikethrough"]}});// Tailwind CSS rules aren't fully added to our component
3
3
  // So, adding them from here!
4
4
  editor.on("load",function(){var canvasHead=editor.Canvas.getDocument().head;var style=document.createElement("style");var fullCss="\n "+tailwindCompiledCss+"\n ::-webkit-scrollbar {\n width: 0px;\n height: 0px;\n }\n html, body {\n overflow: auto !important;\n -ms-overflow-style: none; /* IE and Edge */\n scrollbar-width: none; /* Firefox */\n }\n ";style.innerHTML=fullCss;style.setAttribute("type","text/css");canvasHead.appendChild(style)});editorInstance.current=editor;if(setEditor){setEditor(editor)}TypesToRegister.forEach(function(_ref3){var type=_ref3.type,tagName=_ref3.tagName;if(!editor.DomComponents.getType(type)){editor.DomComponents.addType(type,{model:{defaults:{tagName:tagName}},view:{}})}});if(json&&((_json$pages=json.pages)==null?void 0:_json$pages.length)>0&&((_json$pages$0$frames=json.pages[0].frames)==null?void 0:_json$pages$0$frames.length)>0){var raw=json.pages[0].frames[0].component;var processed=expandActions(raw);editor.setComponents(processed);var cssText=convertStyles(json.styles||[]);editor.setStyle(cssText)}editor.on("load",function(){setComponentProperties(editor,mode==="preview")});return function(){editor.destroy()};// eslint-disable-next-line @typescript-eslint/no-empty-function, react-hooks/exhaustive-deps
5
5
  },[json,mode]);return/*#__PURE__*/_jsxs(React.Fragment,{children:[/*#__PURE__*/_jsx(StyledEditor,{}),/*#__PURE__*/_jsx("div",{ref:editorRef})]})}export default GrapesjsCanvas;
@@ -1 +1 @@
1
- {"version":3,"file":"GrapesjsCanvas.js","names":["React","useEffect","useRef","grapesjs","tailwind","TypesToRegister","toKebabCase","createGrapesjsShadcnGenericPlugin","StyledEditor","tailwindCompiledCss","jsx","_jsx","jsxs","_jsxs","setComponentProperties","editor","isPreview","setPropertiesRecursively","comp","set","editable","draggable","droppable","getName","selectable","hoverable","highlightable","copyable","resizable","removable","badgable","attributes","command","components","forEach","runCommand","stopCommand","wrapper","getWrapper","find","convertStyles","stylesArray","map","block","selectors","Array","isArray","join","declarations","Object","entries","style","_ref","prop","value","expandActions","node","_node$componentProps","type","componentName","componentProps","actions","_extends","classes","concat","undefined","action","i","icon","title","description","id","headerContent","bodyContent","setInteracting","renderedComponents","ids","inProgress","gjsModel","get","interactionApiInProgress","GrapesjsCanvas","_ref2","json","_ref2$mode","mode","setEditor","performInteraction","editorRef","editorInstance","performInteractionWrapper","_x","_performInteractionWrapper","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","payload","result","wrap","_callee$","_context","prev","next","affectedComponents","sent","_ref4","key","model","stop","_json$pages","_json$pages$0$frames","current","destroy","currentMode","init","container","height","plugins","storageManager","richTextEditor","on","canvasHead","Canvas","getDocument","head","document","createElement","fullCss","innerHTML","setAttribute","appendChild","_ref3","tagName","DomComponents","getType","addType","defaults","view","pages","length","frames","raw","component","processed","setComponents","cssText","styles","setStyle","Fragment","children","ref"],"sources":["../src/GrapesjsCanvas.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useRef } from 'react';\nimport grapesjs, { Component, Editor } from 'grapesjs';\nimport 'grapesjs/dist/css/grapes.min.css';\nimport tailwind from 'grapesjs-tailwind';\nimport { TypesToRegister } from './constants';\nimport { toKebabCase } from './helpers';\nimport { createGrapesjsShadcnGenericPlugin } from './plugins/grapejs-plugin';\nimport { StyledEditor } from './index.styles';\nimport { tailwindCompiledCss } from './helpers/css';\n\ntype GrapesjsCanvasProps = {\n json: any;\n mode?: 'editor' | 'preview';\n setEditor: (editor: Editor) => void;\n performInteraction: (payload: Object) => Promise<{ string: Object; }>;\n};\n\nfunction setComponentProperties(editor: Editor, isPreview: boolean) {\n function setPropertiesRecursively(comp: Component) {\n comp.set({\n editable: !isPreview,\n draggable: !isPreview,\n droppable: !isPreview && comp.getName() !== 'Shadcn-generic',\n selectable: !isPreview,\n hoverable: !isPreview,\n highlightable: !isPreview,\n copyable: false,\n resizable: false,\n removable: !isPreview,\n badgable: false,\n });\n\n if (!isPreview) {\n comp.set('toolbar', [\n { attributes: { class: 'fa fa-arrows' }, command: 'tlb-move' },\n { attributes: { class: 'fa fa-trash' }, command: 'tlb-delete' },\n ]);\n }\n\n comp.components().forEach(setPropertiesRecursively);\n }\n\n if (isPreview) {\n editor.runCommand('core:preview');\n } else {\n editor.stopCommand('core:preview');\n }\n\n const wrapper = editor.getWrapper();\n wrapper?.find('*').forEach(setPropertiesRecursively);\n}\n\nfunction convertStyles(stylesArray: any[]): string {\n return stylesArray\n .map((block) => {\n const selectors = Array.isArray(block.selectors)\n ? block.selectors.join(', ')\n : block.selectors;\n const declarations = Object.entries(block.style)\n .map(([prop, value]) => `${toKebabCase(prop)}: ${value};`)\n .join(' ');\n\n return `${selectors} { ${declarations} }`;\n })\n .join('\\n');\n}\n\nfunction expandActions(node: any): any {\n if (\n node.type === 'shadcn-generic' &&\n node.componentName === 'Actions' &&\n Array.isArray(node.componentProps?.actions)\n ) {\n const { actions } = node.componentProps;\n\n return {\n ...node,\n type: 'div',\n classes: ['dashboard-cards', ...(node.classes || [])],\n componentName: undefined,\n componentProps: undefined,\n components: actions.map((action: any, i: number) => {\n const { icon, title, description } = action;\n\n return {\n id: `${node.id}--action-card-${i}`,\n type: 'shadcn-generic',\n componentName: 'ActionCard',\n badgable: false,\n copyable: false,\n componentProps: {\n icon,\n headerContent: title,\n bodyContent: description,\n },\n };\n }),\n };\n }\n\n if (Array.isArray(node.components)) {\n return {\n ...node,\n components: node.components.map(expandActions),\n };\n }\n\n return node;\n}\n\nfunction setInteracting(\n renderedComponents: Record<string, Component>,\n ids: string[],\n inProgress: boolean\n) {\n ids.forEach((id: string) => {\n const gjsModel = renderedComponents[id];\n if (gjsModel) {\n gjsModel.set('componentProps', {\n ...gjsModel.get('componentProps'),\n interactionApiInProgress: inProgress,\n });\n }\n });\n}\n\nfunction GrapesjsCanvas({ json, mode = 'preview', setEditor, performInteraction }: GrapesjsCanvasProps) {\n const editorRef = useRef<HTMLDivElement>(null);\n const editorInstance = useRef<any>(null);\n const renderedComponents: Record<string, Component> = {};\n\n async function performInteractionWrapper(payload: Record<string, any>) {\n setInteracting(renderedComponents, payload.affectedComponents, true);\n\n const result = await performInteraction(payload);\n\n Object.entries(result || {}).forEach(([key, value]) => {\n const model = renderedComponents[key];\n\n if (model) {\n model.set('componentProps', {\n ...model.get('componentProps'),\n ...value,\n });\n }\n });\n\n setInteracting(renderedComponents, payload.affectedComponents, false);\n }\n\n useEffect(() => {\n if (!editorRef.current) {\n return () => {\n // Cleanup if editorRef is not available\n };\n }\n\n if (editorInstance.current) {\n editorInstance.current.destroy();\n editorInstance.current = null;\n }\n\n const currentMode = mode;\n\n const editor = grapesjs.init({\n container: editorRef.current,\n height: '100%',\n plugins: [\n tailwind,\n createGrapesjsShadcnGenericPlugin(currentMode, performInteractionWrapper, renderedComponents),\n ],\n storageManager: { type: 'none' },\n richTextEditor: {\n actions: ['bold', 'italic', 'underline', 'strikethrough'],\n },\n });\n\n // Tailwind CSS rules aren't fully added to our component\n // So, adding them from here!\n editor.on('load', () => {\n const canvasHead = editor.Canvas.getDocument().head;\n const style = document.createElement('style');\n const fullCss = `\n ${tailwindCompiledCss}\n ::-webkit-scrollbar {\n width: 0px;\n height: 0px;\n }\n html, body {\n overflow: auto !important;\n -ms-overflow-style: none; /* IE and Edge */\n scrollbar-width: none; /* Firefox */\n }\n `;\n style.innerHTML = fullCss;\n style.setAttribute('type', 'text/css');\n canvasHead.appendChild(style);\n });\n\n editorInstance.current = editor;\n\n if (setEditor) {\n setEditor(editor);\n }\n\n TypesToRegister.forEach(({ type, tagName }) => {\n if (!editor.DomComponents.getType(type)) {\n editor.DomComponents.addType(type, {\n model: {\n defaults: { tagName },\n },\n view: {},\n });\n }\n });\n\n if (json && json.pages?.length > 0 && json.pages[0].frames?.length > 0) {\n const raw = json.pages[0].frames[0].component;\n const processed = expandActions(raw);\n editor.setComponents(processed);\n\n const cssText = convertStyles(json.styles || []);\n editor.setStyle(cssText);\n }\n\n editor.on('load', () => {\n setComponentProperties(editor, mode === 'preview');\n });\n\n return () => {\n editor.destroy();\n };\n // eslint-disable-next-line @typescript-eslint/no-empty-function, react-hooks/exhaustive-deps\n }, [json, mode]);\n\n return (\n <React.Fragment>\n <StyledEditor />\n <div ref={editorRef} />\n </React.Fragment>\n );\n}\n\nexport default GrapesjsCanvas;"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"GrapesjsCanvas.js","names":["React","useEffect","useRef","grapesjs","tailwind","TypesToRegister","toKebabCase","createGrapesjsShadcnGenericPlugin","StyledEditor","tailwindCompiledCss","jsx","_jsx","jsxs","_jsxs","setComponentProperties","editor","isPreview","setPropertiesRecursively","comp","set","editable","draggable","droppable","getName","selectable","hoverable","highlightable","copyable","resizable","removable","badgable","attributes","command","components","forEach","runCommand","stopCommand","wrapper","getWrapper","find","convertStyles","stylesArray","map","block","selectors","Array","isArray","join","declarations","Object","entries","style","_ref","prop","value","expandActions","node","_node$componentProps","type","componentName","componentProps","actions","_extends","classes","concat","undefined","action","i","icon","title","description","id","headerContent","bodyContent","GrapesjsCanvas","_ref2","json","_ref2$mode","mode","setEditor","editorRef","editorInstance","_json$pages","_json$pages$0$frames","current","destroy","currentMode","init","container","height","plugins","storageManager","richTextEditor","on","canvasHead","Canvas","getDocument","head","document","createElement","fullCss","innerHTML","setAttribute","appendChild","_ref3","tagName","DomComponents","getType","addType","model","defaults","view","pages","length","frames","raw","component","processed","setComponents","cssText","styles","setStyle","Fragment","children","ref"],"sources":["../src/GrapesjsCanvas.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useRef } from 'react';\nimport grapesjs, { Component, Editor } from 'grapesjs';\nimport 'grapesjs/dist/css/grapes.min.css';\nimport tailwind from 'grapesjs-tailwind';\nimport { TypesToRegister } from './constants';\nimport { toKebabCase } from './helpers';\nimport { createGrapesjsShadcnGenericPlugin } from './plugins/grapejs-plugin';\nimport { StyledEditor } from './index.styles';\nimport { tailwindCompiledCss } from './helpers/css';\n\ntype GrapesjsCanvasProps = {\n json: any;\n mode?: 'editor' | 'preview';\n setEditor: (editor: Editor) => void;\n};\n\nfunction setComponentProperties(editor: Editor, isPreview: boolean) {\n function setPropertiesRecursively(comp: Component) {\n comp.set({\n editable: !isPreview,\n draggable: !isPreview,\n droppable: !isPreview && comp.getName() !== 'Shadcn-generic',\n selectable: !isPreview,\n hoverable: !isPreview,\n highlightable: !isPreview,\n copyable: false,\n resizable: false,\n removable: !isPreview,\n badgable: false,\n });\n\n if (!isPreview) {\n comp.set('toolbar', [\n { attributes: { class: 'fa fa-arrows' }, command: 'tlb-move' },\n { attributes: { class: 'fa fa-trash' }, command: 'tlb-delete' },\n ]);\n }\n\n comp.components().forEach(setPropertiesRecursively);\n }\n\n if (isPreview) {\n editor.runCommand('core:preview');\n } else {\n editor.stopCommand('core:preview');\n }\n\n const wrapper = editor.getWrapper();\n wrapper?.find('*').forEach(setPropertiesRecursively);\n}\n\nfunction convertStyles(stylesArray: any[]): string {\n return stylesArray\n .map((block) => {\n const selectors = Array.isArray(block.selectors)\n ? block.selectors.join(', ')\n : block.selectors;\n const declarations = Object.entries(block.style)\n .map(([prop, value]) => `${toKebabCase(prop)}: ${value};`)\n .join(' ');\n\n return `${selectors} { ${declarations} }`;\n })\n .join('\\n');\n}\n\nfunction expandActions(node: any): any {\n if (\n node.type === 'shadcn-generic' &&\n node.componentName === 'Actions' &&\n Array.isArray(node.componentProps?.actions)\n ) {\n const { actions } = node.componentProps;\n\n return {\n ...node,\n type: 'div',\n classes: ['dashboard-cards', ...(node.classes || [])],\n componentName: undefined,\n componentProps: undefined,\n components: actions.map((action: any, i: number) => {\n const { icon, title, description } = action;\n\n return {\n id: `${node.id}--action-card-${i}`,\n type: 'shadcn-generic',\n componentName: 'ActionCard',\n badgable: false,\n copyable: false,\n componentProps: {\n icon,\n headerContent: title,\n bodyContent: description,\n },\n };\n }),\n };\n }\n\n if (Array.isArray(node.components)) {\n return {\n ...node,\n components: node.components.map(expandActions),\n };\n }\n\n return node;\n}\n\nfunction GrapesjsCanvas({ json, mode = 'preview', setEditor }: GrapesjsCanvasProps) {\n const editorRef = useRef<HTMLDivElement>(null);\n const editorInstance = useRef<any>(null);\n\n useEffect(() => {\n if (!editorRef.current) {\n return () => {\n // Cleanup if editorRef is not available\n };\n }\n\n if (editorInstance.current) {\n editorInstance.current.destroy();\n editorInstance.current = null;\n }\n\n const currentMode = mode;\n\n const editor = grapesjs.init({\n container: editorRef.current,\n height: '100%',\n plugins: [tailwind, createGrapesjsShadcnGenericPlugin(currentMode)],\n storageManager: { type: 'none' },\n richTextEditor: {\n actions: ['bold', 'italic', 'underline', 'strikethrough'],\n },\n });\n\n // Tailwind CSS rules aren't fully added to our component\n // So, adding them from here!\n editor.on('load', () => {\n const canvasHead = editor.Canvas.getDocument().head;\n const style = document.createElement('style');\n const fullCss = `\n ${tailwindCompiledCss}\n ::-webkit-scrollbar {\n width: 0px;\n height: 0px;\n }\n html, body {\n overflow: auto !important;\n -ms-overflow-style: none; /* IE and Edge */\n scrollbar-width: none; /* Firefox */\n }\n `;\n style.innerHTML = fullCss;\n style.setAttribute('type', 'text/css');\n canvasHead.appendChild(style);\n });\n\n editorInstance.current = editor;\n\n if (setEditor) {\n setEditor(editor);\n }\n\n TypesToRegister.forEach(({ type, tagName }) => {\n if (!editor.DomComponents.getType(type)) {\n editor.DomComponents.addType(type, {\n model: {\n defaults: { tagName },\n },\n view: {},\n });\n }\n });\n\n if (json && json.pages?.length > 0 && json.pages[0].frames?.length > 0) {\n const raw = json.pages[0].frames[0].component;\n const processed = expandActions(raw);\n editor.setComponents(processed);\n\n const cssText = convertStyles(json.styles || []);\n editor.setStyle(cssText);\n }\n\n editor.on('load', () => {\n setComponentProperties(editor, mode === 'preview');\n });\n\n return () => {\n editor.destroy();\n };\n // eslint-disable-next-line @typescript-eslint/no-empty-function, react-hooks/exhaustive-deps\n }, [json, mode]);\n\n return (\n <React.Fragment>\n <StyledEditor />\n <div ref={editorRef} />\n </React.Fragment>\n );\n}\n\nexport default GrapesjsCanvas;"],"mappings":"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","ignoreList":[]}
package/helpers/css.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const tailwindCompiledCss = "/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */\n:root, :host {\n --font-sans: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n --color-red-300: oklch(80.8% 0.114 19.571);\n --color-green-300: oklch(87.1% 0.15 154.449);\n --color-slate-100: oklch(96.8% 0.007 247.896);\n --color-gray-300: oklch(87.2% 0.01 258.338);\n --color-gray-400: oklch(70.7% 0.022 261.325);\n --color-gray-500: oklch(55.1% 0.027 264.364);\n --color-gray-800: oklch(27.8% 0.033 256.848);\n --color-black: #000;\n --color-white: #fff;\n --spacing: 0.25rem;\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --text-base: 1rem;\n --text-base--line-height: calc(1.5 / 1);\n --text-lg: 1.125rem;\n --text-lg--line-height: calc(1.75 / 1.125);\n --text-xl: 1.25rem;\n --text-xl--line-height: calc(1.75 / 1.25);\n --text-2xl: 1.5rem;\n --text-2xl--line-height: calc(2 / 1.5);\n --text-3xl: 1.875rem;\n --text-3xl--line-height: calc(2.25 / 1.875);\n --text-4xl: 2.25rem;\n --text-4xl--line-height: calc(2.5 / 2.25);\n --text-5xl: 3rem;\n --text-5xl--line-height: 1;\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --font-weight-bold: 700;\n --leading-relaxed: 1.625;\n --radius-md: calc(0.625rem - 2px);\n --radius-lg: 0.625rem;\n --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n --aspect-video: 16 / 9;\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --default-font-family: var(--font-sans);\n --default-mono-font-family: var(--font-mono);\n --color-border: oklch(0.922 0 0);\n }\n*, ::after, ::before, ::backdrop, ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\nhtml, :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");\n font-feature-settings: normal;\n font-feature-settings: var(--default-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-font-variation-settings, normal);\n -webkit-tap-highlight-color: transparent;\n }\nhr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n }\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\nb, strong {\n font-weight: bolder;\n }\ncode, kbd, samp, pre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);\n font-feature-settings: normal;\n font-feature-settings: var(--default-mono-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-mono-font-variation-settings, normal);\n font-size: 1em;\n }\nsmall {\n font-size: 80%;\n }\nsub, sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\nsub {\n bottom: -0.25em;\n }\nsup {\n top: -0.5em;\n }\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n:-moz-focusring {\n outline: auto;\n }\nprogress {\n vertical-align: baseline;\n }\nsummary {\n display: list-item;\n }\nol, ul, menu {\n list-style: none;\n }\nimg, svg, video, canvas, audio, iframe, embed, object {\n display: block;\n vertical-align: middle;\n }\nimg, video {\n max-width: 100%;\n height: auto;\n }\nbutton, input, select, optgroup, textarea, ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n:where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n:where(select:is([multiple], [size])) optgroup option {\n padding-inline-start: 20px;\n }\n::file-selector-button {\n margin-inline-end: 4px;\n }\n::-moz-placeholder {\n opacity: 1;\n }\n::placeholder {\n opacity: 1;\n }\n@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::-moz-placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n ::placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\ntextarea {\n resize: vertical;\n }\n::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n::-webkit-datetime-edit {\n display: inline-flex;\n }\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n:-moz-ui-invalid {\n box-shadow: none;\n }\nbutton, input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]), ::file-selector-button {\n -webkit-appearance: button;\n -moz-appearance: button;\n appearance: button;\n }\n::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n }\n[hidden]:where(:not([hidden=\"until-found\"])) {\n display: none !important;\n }\n.\\@container\\/card-header {\n container-type: inline-size;\n container-name: card-header;\n }\n.fixed {\n position: fixed;\n }\n.relative {\n position: relative;\n }\n.sticky {\n position: sticky;\n }\n.top-0 {\n top: calc(0.25rem * 0);\n top: calc(var(--spacing) * 0);\n }\n.z-50 {\n z-index: 50;\n }\n.col-start-2 {\n grid-column-start: 2;\n }\n.row-span-2 {\n grid-row: span 2 / span 2;\n }\n.row-start-1 {\n grid-row-start: 1;\n }\n.container {\n width: 100%;\n max-width: 40rem;\n max-width: 48rem;\n max-width: 64rem;\n max-width: 80rem;\n max-width: 96rem\n }\n.my-0 {\n margin-block: calc(0.25rem * 0);\n margin-block: calc(var(--spacing) * 0);\n }\n.my-0\\.5 {\n margin-block: calc(0.25rem * 0.5);\n margin-block: calc(var(--spacing) * 0.5);\n }\n.my-4 {\n margin-block: calc(0.25rem * 4);\n margin-block: calc(var(--spacing) * 4);\n }\n.my-6 {\n margin-block: calc(0.25rem * 6);\n margin-block: calc(var(--spacing) * 6);\n }\n.mt-1 {\n margin-top: calc(0.25rem * 1);\n margin-top: calc(var(--spacing) * 1);\n }\n.mt-2 {\n margin-top: calc(0.25rem * 2);\n margin-top: calc(var(--spacing) * 2);\n }\n.mt-4 {\n margin-top: calc(0.25rem * 4);\n margin-top: calc(var(--spacing) * 4);\n }\n.mr-2 {\n margin-right: calc(0.25rem * 2);\n margin-right: calc(var(--spacing) * 2);\n }\n.mb-1 {\n margin-bottom: calc(0.25rem * 1);\n margin-bottom: calc(var(--spacing) * 1);\n }\n.mb-2 {\n margin-bottom: calc(0.25rem * 2);\n margin-bottom: calc(var(--spacing) * 2);\n }\n.mb-4 {\n margin-bottom: calc(0.25rem * 4);\n margin-bottom: calc(var(--spacing) * 4);\n }\n.mb-8 {\n margin-bottom: calc(0.25rem * 8);\n margin-bottom: calc(var(--spacing) * 8);\n }\n.ml-2 {\n margin-left: calc(0.25rem * 2);\n margin-left: calc(var(--spacing) * 2);\n }\n.block {\n display: block;\n }\n.flex {\n display: flex;\n }\n.grid {\n display: grid;\n }\n.hidden {\n display: none;\n }\n.inline {\n display: inline;\n }\n.inline-flex {\n display: inline-flex;\n }\n.table {\n display: table;\n }\n.table-caption {\n display: table-caption;\n }\n.table-cell {\n display: table-cell;\n }\n.table-row {\n display: table-row;\n }\n.field-sizing-content {\n field-sizing: content;\n }\n.aspect-auto {\n aspect-ratio: auto;\n }\n.aspect-video {\n aspect-ratio: 16 / 9;\n aspect-ratio: var(--aspect-video);\n }\n.size-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.size-2\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.size-3 {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n.size-3\\.5 {\n width: calc(0.25rem * 3.5);\n width: calc(var(--spacing) * 3.5);\n height: calc(0.25rem * 3.5);\n height: calc(var(--spacing) * 3.5);\n }\n.size-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n.size-full {\n width: 100%;\n height: 100%;\n }\n.h-2 {\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.h-2\\.5 {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.h-5 {\n height: calc(0.25rem * 5);\n height: calc(var(--spacing) * 5);\n }\n.h-6 {\n height: calc(0.25rem * 6);\n height: calc(var(--spacing) * 6);\n }\n.h-9 {\n height: calc(0.25rem * 9);\n height: calc(var(--spacing) * 9);\n }\n.h-10 {\n height: calc(0.25rem * 10);\n height: calc(var(--spacing) * 10);\n }\n.h-12 {\n height: calc(0.25rem * 12);\n height: calc(var(--spacing) * 12);\n }\n.h-20 {\n height: calc(0.25rem * 20);\n height: calc(var(--spacing) * 20);\n }\n.h-30 {\n height: calc(0.25rem * 30);\n height: calc(var(--spacing) * 30);\n }\n.h-35 {\n height: calc(0.25rem * 35);\n height: calc(var(--spacing) * 35);\n }\n.h-40 {\n height: calc(0.25rem * 40);\n height: calc(var(--spacing) * 40);\n }\n.h-50 {\n height: calc(0.25rem * 50);\n height: calc(var(--spacing) * 50);\n }\n.h-\\[250px\\] {\n height: 250px;\n }\n.h-full {\n height: 100%;\n }\n.min-h-16 {\n min-height: calc(0.25rem * 16);\n min-height: calc(var(--spacing) * 16);\n }\n.min-h-\\[180px\\] {\n min-height: 180px;\n }\n.w-0 {\n width: calc(0.25rem * 0);\n width: calc(var(--spacing) * 0);\n }\n.w-1 {\n width: calc(0.25rem * 1);\n width: calc(var(--spacing) * 1);\n }\n.w-1\\/6 {\n width: calc(1/6 * 100%);\n }\n.w-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n }\n.w-2\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n.w-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n }\n.w-4\\/5 {\n width: calc(4/5 * 100%);\n }\n.w-64 {\n width: calc(0.25rem * 64);\n width: calc(var(--spacing) * 64);\n }\n.w-80 {\n width: calc(0.25rem * 80);\n width: calc(var(--spacing) * 80);\n }\n.w-\\[320px\\] {\n width: 320px;\n }\n.w-\\[640px\\] {\n width: 640px;\n }\n.w-fit {\n width: -moz-fit-content;\n width: fit-content;\n }\n.w-full {\n width: 100%;\n }\n.max-w-\\[320px\\] {\n max-width: 320px;\n }\n.max-w-full {\n max-width: 100%;\n }\n.min-w-0 {\n min-width: calc(0.25rem * 0);\n min-width: calc(var(--spacing) * 0);\n }\n.min-w-\\[8rem\\] {\n min-width: 8rem;\n }\n.flex-1 {\n flex: 1;\n }\n.flex-shrink {\n flex-shrink: 1;\n }\n.shrink-0 {\n flex-shrink: 0;\n }\n.flex-grow {\n flex-grow: 1;\n }\n.caption-bottom {\n caption-side: bottom;\n }\n.border-collapse {\n border-collapse: collapse;\n }\n.origin-\\(--radix-hover-card-content-transform-origin\\) {\n transform-origin: var(--radix-hover-card-content-transform-origin);\n }\n.origin-\\(--radix-tooltip-content-transform-origin\\) {\n transform-origin: var(--radix-tooltip-content-transform-origin);\n }\n.translate-y-\\[calc\\(-50\\%_-_2px\\)\\] {\n --tw-translate-y: calc(-50% - 2px);\n translate: var(--tw-translate-x) calc(-50% - 2px);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.rotate-45 {\n rotate: 45deg;\n }\n.transform {\n transform: ;\n transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);\n }\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n animation: var(--animate-pulse);\n }\n.touch-none {\n touch-action: none;\n }\n.resize {\n resize: both;\n }\n.list-disc {\n list-style-type: disc;\n }\n.auto-rows-min {\n grid-auto-rows: min-content;\n }\n.grid-rows-\\[auto_auto\\] {\n grid-template-rows: auto auto;\n }\n.flex-col {\n flex-direction: column;\n }\n.flex-row {\n flex-direction: row;\n }\n.flex-wrap {\n flex-wrap: wrap;\n }\n.items-center {\n align-items: center;\n }\n.items-end {\n align-items: flex-end;\n }\n.items-start {\n align-items: flex-start;\n }\n.items-stretch {\n align-items: stretch;\n }\n.justify-between {\n justify-content: space-between;\n }\n.justify-center {\n justify-content: center;\n }\n.gap-1 {\n gap: calc(0.25rem * 1);\n gap: calc(var(--spacing) * 1);\n }\n.gap-1\\.5 {\n gap: calc(0.25rem * 1.5);\n gap: calc(var(--spacing) * 1.5);\n }\n.gap-2 {\n gap: calc(0.25rem * 2);\n gap: calc(var(--spacing) * 2);\n }\n.gap-3 {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n.gap-4 {\n gap: calc(0.25rem * 4);\n gap: calc(var(--spacing) * 4);\n }\n.gap-6 {\n gap: calc(0.25rem * 6);\n gap: calc(var(--spacing) * 6);\n }\n.self-end {\n align-self: flex-end;\n }\n.self-start {\n align-self: flex-start;\n }\n.justify-self-end {\n justify-self: flex-end;\n }\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n.rounded-\\[2px\\] {\n border-radius: 2px;\n }\n.rounded-\\[4px\\] {\n border-radius: 4px;\n }\n.rounded-\\[inherit\\] {\n border-radius: inherit;\n }\n.rounded-full {\n border-radius: calc(infinity * 1px);\n }\n.rounded-lg {\n border-radius: 0.625rem;\n }\n.rounded-md {\n border-radius: calc(0.625rem - 2px);\n }\n.border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n.border-\\[1\\.5px\\] {\n border-style: var(--tw-border-style);\n border-width: 1.5px;\n }\n.border-t {\n border-top-style: var(--tw-border-style);\n border-top-width: 1px;\n }\n.border-t-2 {\n border-top-style: var(--tw-border-style);\n border-top-width: 2px;\n }\n.border-b {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n.border-l {\n border-left-style: var(--tw-border-style);\n border-left-width: 1px;\n }\n.border-dashed {\n --tw-border-style: dashed;\n border-style: dashed;\n }\n.border-\\(--color-border\\) {\n border-color: oklch(0.922 0 0);\n border-color: var(--color-border);\n }\n.border-border {\n border-color: oklch(0.922 0 0);\n }\n.border-border\\/50 {\n border-color: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n.border-gray-300 {\n border-color: oklch(87.2% 0.01 258.338);\n border-color: var(--color-gray-300);\n }\n.border-input {\n border-color: oklch(0.922 0 0);\n }\n.border-t-transparent {\n border-top-color: transparent;\n }\n.border-l-transparent {\n border-left-color: transparent;\n }\n.bg-\\(--color-bg\\) {\n background-color: var(--color-bg);\n }\n.bg-accent {\n background-color: oklch(0.97 0 0);\n }\n.bg-border {\n background-color: oklch(0.922 0 0);\n }\n.bg-gray-300 {\n background-color: oklch(87.2% 0.01 258.338);\n background-color: var(--color-gray-300);\n }\n.bg-gray-400 {\n background-color: oklch(70.7% 0.022 261.325);\n background-color: var(--color-gray-400);\n }\n.bg-gray-500 {\n background-color: oklch(55.1% 0.027 264.364);\n background-color: var(--color-gray-500);\n }\n.bg-green-300 {\n background-color: oklch(87.1% 0.15 154.449);\n background-color: var(--color-green-300);\n }\n.bg-muted {\n background-color: oklch(0.97 0 0);\n }\n.bg-muted\\/50 {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent);\n }\n.bg-popover {\n background-color: oklch(1 0 0);\n }\n.bg-primary {\n background-color: oklch(0.205 0 0);\n }\n.bg-slate-100 {\n background-color: oklch(96.8% 0.007 247.896);\n background-color: var(--color-slate-100);\n }\n.bg-transparent {\n background-color: transparent;\n }\n.bg-white {\n background-color: #fff;\n background-color: var(--color-white);\n }\n.fill-primary {\n fill: oklch(0.205 0 0);\n }\n.p-0 {\n padding: calc(0.25rem * 0);\n padding: calc(var(--spacing) * 0);\n }\n.p-1 {\n padding: calc(0.25rem * 1);\n padding: calc(var(--spacing) * 1);\n }\n.p-2 {\n padding: calc(0.25rem * 2);\n padding: calc(var(--spacing) * 2);\n }\n.p-4 {\n padding: calc(0.25rem * 4);\n padding: calc(var(--spacing) * 4);\n }\n.p-6 {\n padding: calc(0.25rem * 6);\n padding: calc(var(--spacing) * 6);\n }\n.p-px {\n padding: 1px;\n }\n.px-2 {\n padding-inline: calc(0.25rem * 2);\n padding-inline: calc(var(--spacing) * 2);\n }\n.px-2\\.5 {\n padding-inline: calc(0.25rem * 2.5);\n padding-inline: calc(var(--spacing) * 2.5);\n }\n.px-3 {\n padding-inline: calc(0.25rem * 3);\n padding-inline: calc(var(--spacing) * 3);\n }\n.px-4 {\n padding-inline: calc(0.25rem * 4);\n padding-inline: calc(var(--spacing) * 4);\n }\n.px-6 {\n padding-inline: calc(0.25rem * 6);\n padding-inline: calc(var(--spacing) * 6);\n }\n.px-\\[1em\\] {\n padding-inline: 1em;\n }\n.py-1 {\n padding-block: calc(0.25rem * 1);\n padding-block: calc(var(--spacing) * 1);\n }\n.py-1\\.5 {\n padding-block: calc(0.25rem * 1.5);\n padding-block: calc(var(--spacing) * 1.5);\n }\n.py-2 {\n padding-block: calc(0.25rem * 2);\n padding-block: calc(var(--spacing) * 2);\n }\n.py-3 {\n padding-block: calc(0.25rem * 3);\n padding-block: calc(var(--spacing) * 3);\n }\n.py-6 {\n padding-block: calc(0.25rem * 6);\n padding-block: calc(var(--spacing) * 6);\n }\n.pt-3 {\n padding-top: calc(0.25rem * 3);\n padding-top: calc(var(--spacing) * 3);\n }\n.pb-3 {\n padding-bottom: calc(0.25rem * 3);\n padding-bottom: calc(var(--spacing) * 3);\n }\n.text-center {\n text-align: center;\n }\n.text-left {\n text-align: left;\n }\n.align-middle {\n vertical-align: middle;\n }\n.font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--font-mono);\n }\n.text-2xl {\n font-size: 1.5rem;\n font-size: var(--text-2xl);\n line-height: calc(2 / 1.5);\n line-height: var(--tw-leading, var(--text-2xl--line-height));\n }\n.text-3xl {\n font-size: 1.875rem;\n font-size: var(--text-3xl);\n line-height: calc(2.25 / 1.875);\n line-height: var(--tw-leading, var(--text-3xl--line-height));\n }\n.text-4xl {\n font-size: 2.25rem;\n font-size: var(--text-4xl);\n line-height: calc(2.5 / 2.25);\n line-height: var(--tw-leading, var(--text-4xl--line-height));\n }\n.text-5xl {\n font-size: 3rem;\n font-size: var(--text-5xl);\n line-height: 1;\n line-height: var(--tw-leading, var(--text-5xl--line-height));\n }\n.text-base {\n font-size: 1rem;\n font-size: var(--text-base);\n line-height: calc(1.5 / 1);\n line-height: var(--tw-leading, var(--text-base--line-height));\n }\n.text-lg {\n font-size: 1.125rem;\n font-size: var(--text-lg);\n line-height: calc(1.75 / 1.125);\n line-height: var(--tw-leading, var(--text-lg--line-height));\n }\n.text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n.text-xl {\n font-size: 1.25rem;\n font-size: var(--text-xl);\n line-height: calc(1.75 / 1.25);\n line-height: var(--tw-leading, var(--text-xl--line-height));\n }\n.text-xs {\n font-size: 0.75rem;\n font-size: var(--text-xs);\n line-height: calc(1 / 0.75);\n line-height: var(--tw-leading, var(--text-xs--line-height));\n }\n.leading-\\[2\\.5rem\\] {\n --tw-leading: 2.5rem;\n line-height: 2.5rem;\n }\n.leading-\\[2rem\\] {\n --tw-leading: 2rem;\n line-height: 2rem;\n }\n.leading-\\[3\\.5rem\\] {\n --tw-leading: 3.5rem;\n line-height: 3.5rem;\n }\n.leading-\\[3rem\\] {\n --tw-leading: 3rem;\n line-height: 3rem;\n }\n.leading-\\[4rem\\] {\n --tw-leading: 4rem;\n line-height: 4rem;\n }\n.leading-none {\n --tw-leading: 1;\n line-height: 1;\n }\n.leading-relaxed {\n --tw-leading: var(--leading-relaxed);\n line-height: 1.625;\n line-height: var(--leading-relaxed);\n }\n.font-bold {\n --tw-font-weight: var(--font-weight-bold);\n font-weight: 700;\n font-weight: var(--font-weight-bold);\n }\n.font-medium {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n.font-semibold {\n --tw-font-weight: var(--font-weight-semibold);\n font-weight: 600;\n font-weight: var(--font-weight-semibold);\n }\n.text-balance {\n text-wrap: balance;\n }\n.text-wrap {\n text-wrap: wrap;\n }\n.whitespace-nowrap {\n white-space: nowrap;\n }\n.text-black {\n color: #000;\n color: var(--color-black);\n }\n.text-card-foreground {\n color: oklch(0.145 0 0);\n }\n.text-current {\n color: currentcolor;\n }\n.text-foreground {\n color: oklch(0.145 0 0);\n }\n.text-gray-500 {\n color: oklch(55.1% 0.027 264.364);\n color: var(--color-gray-500);\n }\n.text-gray-800 {\n color: oklch(27.8% 0.033 256.848);\n color: var(--color-gray-800);\n }\n.text-muted-foreground {\n color: oklch(0.556 0 0);\n }\n.text-popover-foreground {\n color: oklch(0.145 0 0);\n }\n.text-primary-foreground {\n color: oklch(0.985 0 0);\n }\n.italic {\n font-style: italic;\n }\n.tabular-nums {\n --tw-numeric-spacing: tabular-nums;\n font-variant-numeric: tabular-nums ;\n font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);\n }\n.underline {\n text-decoration-line: underline;\n }\n.shadow {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-sm {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xs {\n --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 2px 0 rgb(0 0 0 / 0.05);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-offset-background {\n --tw-ring-offset-color: oklch(1 0 0);\n }\n.outline-hidden {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n.outline {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n.filter {\n filter: ;\n 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,);\n }\n.transition {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-\\[color\\,box-shadow\\] {\n transition-property: color,box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-shadow {\n transition-property: box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-none {\n transition-property: none;\n }\n.outline-none {\n --tw-outline-style: none;\n outline-style: none;\n }\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n.group-data-\\[disabled\\=true\\]\\:pointer-events-none {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n pointer-events: none;\n }\n }\n.group-data-\\[disabled\\=true\\]\\:opacity-50 {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n opacity: 50%;\n }\n }\n.peer-disabled\\:cursor-not-allowed {\n &:is(:where(.peer):disabled ~ *) {\n cursor: not-allowed;\n }\n }\n.peer-disabled\\:opacity-50 {\n &:is(:where(.peer):disabled ~ *) {\n opacity: 50%;\n }\n }\n.selection\\:bg-primary {\n & *::-moz-selection {\n background-color: oklch(0.205 0 0);\n }\n & *::selection {\n background-color: oklch(0.205 0 0);\n }\n &::-moz-selection {\n background-color: oklch(0.205 0 0);\n }\n &::selection {\n background-color: oklch(0.205 0 0);\n }\n }\n.selection\\:text-primary-foreground {\n & *::-moz-selection {\n color: oklch(0.985 0 0);\n }\n & *::selection {\n color: oklch(0.985 0 0);\n }\n &::-moz-selection {\n color: oklch(0.985 0 0);\n }\n &::selection {\n color: oklch(0.985 0 0);\n }\n }\n.file\\:inline-flex {\n &::file-selector-button {\n display: inline-flex;\n }\n }\n.file\\:h-7 {\n &::file-selector-button {\n height: calc(0.25rem * 7);\n height: calc(var(--spacing) * 7);\n }\n }\n.file\\:border-0 {\n &::file-selector-button {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.file\\:bg-transparent {\n &::file-selector-button {\n background-color: transparent;\n }\n }\n.file\\:text-sm {\n &::file-selector-button {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n }\n.file\\:font-medium {\n &::file-selector-button {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n }\n.file\\:text-foreground {\n &::file-selector-button {\n color: oklch(0.145 0 0);\n }\n }\n.placeholder\\:text-muted-foreground {\n &::-moz-placeholder {\n color: oklch(0.556 0 0);\n }\n &::placeholder {\n color: oklch(0.556 0 0);\n }\n }\n.hover\\:bg-muted\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent)\n }\n }\n.focus-visible\\:border-ring {\n &:focus-visible {\n border-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\:ring-2 {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\:ring-\\[3px\\] {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\:ring-ring {\n &:focus-visible {\n --tw-ring-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\:ring-ring\\/50 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.708 0 0) 50%, transparent);\n }\n }\n.focus-visible\\:ring-offset-2 {\n &:focus-visible {\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n }\n }\n.focus-visible\\:outline-1 {\n &:focus-visible {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n }\n.focus-visible\\:outline-none {\n &:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n }\n.disabled\\:pointer-events-none {\n &:disabled {\n pointer-events: none;\n }\n }\n.disabled\\:cursor-not-allowed {\n &:disabled {\n cursor: not-allowed;\n }\n }\n.disabled\\:opacity-50 {\n &:disabled {\n opacity: 50%;\n }\n }\n.has-data-\\[slot\\=card-action\\]\\:grid-cols-\\[1fr_auto\\] {\n &:has(*[data-slot=\"card-action\"]) {\n grid-template-columns: 1fr auto;\n }\n }\n.aria-invalid\\:border-destructive {\n &[aria-invalid=\"true\"] {\n border-color: oklch(0.577 0.245 27.325);\n }\n }\n.aria-invalid\\:ring-destructive\\/20 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 20%, transparent);\n }\n }\n.data-\\[orientation\\=horizontal\\]\\:h-px {\n &[data-orientation=\"horizontal\"] {\n height: 1px;\n }\n }\n.data-\\[orientation\\=horizontal\\]\\:w-full {\n &[data-orientation=\"horizontal\"] {\n width: 100%;\n }\n }\n.data-\\[orientation\\=vertical\\]\\:h-full {\n &[data-orientation=\"vertical\"] {\n height: 100%;\n }\n }\n.data-\\[orientation\\=vertical\\]\\:w-px {\n &[data-orientation=\"vertical\"] {\n width: 1px;\n }\n }\n.data-\\[state\\=active\\]\\:bg-background {\n &[data-state=\"active\"] {\n background-color: oklch(1 0 0);\n }\n }\n.data-\\[state\\=active\\]\\:text-foreground {\n &[data-state=\"active\"] {\n color: oklch(0.145 0 0);\n }\n }\n.data-\\[state\\=active\\]\\:shadow {\n &[data-state=\"active\"] {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.data-\\[state\\=checked\\]\\:border-primary {\n &[data-state=\"checked\"] {\n border-color: oklch(0.205 0 0);\n }\n }\n.data-\\[state\\=checked\\]\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.data-\\[state\\=checked\\]\\:text-primary-foreground {\n &[data-state=\"checked\"] {\n color: oklch(0.985 0 0);\n }\n }\n.data-\\[state\\=selected\\]\\:bg-muted {\n &[data-state=\"selected\"] {\n background-color: oklch(0.97 0 0);\n }\n }\n.md\\:text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height))\n }\n.dark\\:bg-input\\/30 {\n background-color: color-mix(in oklab, oklch(0.922 0 0) 30%, transparent)\n }\n.dark\\:aria-invalid\\:ring-destructive\\/40 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 40%, transparent);\n }\n }\n.dark\\:data-\\[state\\=checked\\]\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.\\[\\&_\\.recharts-cartesian-axis-tick_text\\]\\:fill-muted-foreground {\n & .recharts-cartesian-axis-tick text {\n fill: oklch(0.556 0 0);\n }\n }\n.\\[\\&_\\.recharts-cartesian-grid_line\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border\\/50 {\n & .recharts-cartesian-grid line[stroke='#ccc'] {\n stroke: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n }\n.\\[\\&_\\.recharts-curve\\.recharts-tooltip-cursor\\]\\:stroke-border {\n & .recharts-curve.recharts-tooltip-cursor {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-dot\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent {\n & .recharts-dot[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\[\\&_\\.recharts-layer\\]\\:outline-hidden {\n & .recharts-layer {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_\\.recharts-polar-grid_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border {\n & .recharts-polar-grid [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-radial-bar-background-sector\\]\\:fill-muted {\n & .recharts-radial-bar-background-sector {\n fill: oklch(0.97 0 0);\n }\n }\n.\\[\\&_\\.recharts-rectangle\\.recharts-tooltip-cursor\\]\\:fill-muted {\n & .recharts-rectangle.recharts-tooltip-cursor {\n fill: oklch(0.97 0 0);\n }\n }\n.\\[\\&_\\.recharts-reference-line_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border {\n & .recharts-reference-line [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-sector\\]\\:outline-hidden {\n & .recharts-sector {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_\\.recharts-sector\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent {\n & .recharts-sector[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\[\\&_\\.recharts-surface\\]\\:outline-hidden {\n & .recharts-surface {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_tr\\]\\:border-b {\n & tr {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n }\n.\\[\\&_tr\\:last-child\\]\\:border-0 {\n & tr:last-child {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.\\[\\&\\:has\\(\\[role\\=checkbox\\]\\)\\]\\:pr-0 {\n &:has([role=checkbox]) {\n padding-right: calc(0.25rem * 0);\n padding-right: calc(var(--spacing) * 0);\n }\n }\n.\\[\\.border-b\\]\\:pb-6 {\n &:is(.border-b) {\n padding-bottom: calc(0.25rem * 6);\n padding-bottom: calc(var(--spacing) * 6);\n }\n }\n.\\[\\.border-t\\]\\:pt-6 {\n &:is(.border-t) {\n padding-top: calc(0.25rem * 6);\n padding-top: calc(var(--spacing) * 6);\n }\n }\n.\\[\\&\\>\\[role\\=checkbox\\]\\]\\:translate-y-\\[2px\\] {\n &>[role=checkbox] {\n --tw-translate-y: 2px;\n translate: var(--tw-translate-x) 2px;\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n }\n.\\[\\&\\>svg\\]\\:h-2\\.5 {\n &>svg {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n }\n.\\[\\&\\>svg\\]\\:h-3 {\n &>svg {\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n }\n.\\[\\&\\>svg\\]\\:w-2\\.5 {\n &>svg {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n }\n.\\[\\&\\>svg\\]\\:w-3 {\n &>svg {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n }\n }\n.\\[\\&\\>svg\\]\\:text-muted-foreground {\n &>svg {\n color: oklch(0.556 0 0);\n }\n }\n.\\[\\&\\>tr\\]\\:last\\:border-b-0 {\n &>tr {\n &:last-child {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 0px;\n }\n }\n }\n@property --tw-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-rotate-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-z {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-leading {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ordinal {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-slashed-zero {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-figure {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-spacing {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-fraction {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-outline-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-drop-shadow-size {\n syntax: \"*\";\n inherits: false;\n}\n@keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n}\n@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n *, ::before, ::after, ::backdrop {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-border-style: solid;\n --tw-leading: initial;\n --tw-font-weight: initial;\n --tw-ordinal: initial;\n --tw-slashed-zero: initial;\n --tw-numeric-figure: initial;\n --tw-numeric-spacing: initial;\n --tw-numeric-fraction: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-outline-style: solid;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n }\n }\n";
1
+ export declare const tailwindCompiledCss = "/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */\n:root, :host {\n --font-sans: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n --color-red-300: oklch(80.8% 0.114 19.571);\n --color-green-300: oklch(87.1% 0.15 154.449);\n --color-slate-100: oklch(96.8% 0.007 247.896);\n --color-gray-300: oklch(87.2% 0.01 258.338);\n --color-gray-400: oklch(70.7% 0.022 261.325);\n --color-gray-500: oklch(55.1% 0.027 264.364);\n --color-gray-800: oklch(27.8% 0.033 256.848);\n --color-black: #000;\n --color-white: #fff;\n --spacing: 0.25rem;\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --text-base: 1rem;\n --text-base--line-height: calc(1.5 / 1);\n --text-lg: 1.125rem;\n --text-lg--line-height: calc(1.75 / 1.125);\n --text-xl: 1.25rem;\n --text-xl--line-height: calc(1.75 / 1.25);\n --text-2xl: 1.5rem;\n --text-2xl--line-height: calc(2 / 1.5);\n --text-3xl: 1.875rem;\n --text-3xl--line-height: calc(2.25 / 1.875);\n --text-4xl: 2.25rem;\n --text-4xl--line-height: calc(2.5 / 2.25);\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --font-weight-bold: 700;\n --radius-md: calc(0.625rem - 2px);\n --radius-lg: 0.625rem;\n --aspect-video: 16 / 9;\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --default-font-family: var(--font-sans);\n --default-mono-font-family: var(--font-mono);\n --color-border: oklch(0.922 0 0);\n }\n::-webkit-file-upload-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\n*, ::after, ::before, ::backdrop, ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\nhtml, :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");\n font-feature-settings: normal;\n font-feature-settings: var(--default-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-font-variation-settings, normal);\n -webkit-tap-highlight-color: transparent;\n }\nhr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n }\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\nb, strong {\n font-weight: bolder;\n }\ncode, kbd, samp, pre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);\n font-feature-settings: normal;\n font-feature-settings: var(--default-mono-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-mono-font-variation-settings, normal);\n font-size: 1em;\n }\nsmall {\n font-size: 80%;\n }\nsub, sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\nsub {\n bottom: -0.25em;\n }\nsup {\n top: -0.5em;\n }\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n:-moz-focusring {\n outline: auto;\n }\nprogress {\n vertical-align: baseline;\n }\nsummary {\n display: list-item;\n }\nol, ul, menu {\n list-style: none;\n }\nimg, svg, video, canvas, audio, iframe, embed, object {\n display: block;\n vertical-align: middle;\n }\nimg, video {\n max-width: 100%;\n height: auto;\n }\n::-webkit-file-upload-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\nbutton, input, select, optgroup, textarea, ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n:where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n:where(select:is([multiple], [size])) optgroup option {\n -webkit-padding-start: 20px;\n padding-inline-start: 20px;\n }\n::-webkit-file-upload-button {\n -webkit-margin-end: 4px;\n margin-inline-end: 4px;\n }\n::file-selector-button {\n -webkit-margin-end: 4px;\n margin-inline-end: 4px;\n }\n::placeholder {\n opacity: 1;\n }\n@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\ntextarea {\n resize: vertical;\n }\n::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n::-webkit-datetime-edit {\n display: inline-flex;\n }\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n:-moz-ui-invalid {\n box-shadow: none;\n }\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n appearance: button;\n }\nbutton, input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]), ::file-selector-button {\n -webkit-appearance: button;\n appearance: button;\n }\n::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n }\n[hidden]:where(:not([hidden=\"until-found\"])) {\n display: none !important;\n }\n.\\@container\\/card-header {\n container-type: inline-size;\n container-name: card-header;\n }\n.fixed {\n position: fixed;\n }\n.relative {\n position: relative;\n }\n.sticky {\n position: -webkit-sticky;\n position: sticky;\n }\n.top-0 {\n top: calc(0.25rem * 0);\n top: calc(var(--spacing) * 0);\n }\n.z-50 {\n z-index: 50;\n }\n.col-start-2 {\n grid-column-start: 2;\n }\n.row-span-2 {\n grid-row: span 2 / span 2;\n }\n.row-start-1 {\n grid-row-start: 1;\n }\n.container {\n width: 100%;\n max-width: 40rem;\n max-width: 48rem;\n max-width: 64rem;\n max-width: 80rem;\n max-width: 96rem\n }\n.my-0 {\n margin-block: calc(0.25rem * 0);\n margin-block: calc(var(--spacing) * 0);\n }\n.my-0\\.5 {\n margin-block: calc(0.25rem * 0.5);\n margin-block: calc(var(--spacing) * 0.5);\n }\n.my-4 {\n margin-block: calc(0.25rem * 4);\n margin-block: calc(var(--spacing) * 4);\n }\n.my-6 {\n margin-block: calc(0.25rem * 6);\n margin-block: calc(var(--spacing) * 6);\n }\n.mt-2 {\n margin-top: calc(0.25rem * 2);\n margin-top: calc(var(--spacing) * 2);\n }\n.mt-4 {\n margin-top: calc(0.25rem * 4);\n margin-top: calc(var(--spacing) * 4);\n }\n.mb-1 {\n margin-bottom: calc(0.25rem * 1);\n margin-bottom: calc(var(--spacing) * 1);\n }\n.mb-2 {\n margin-bottom: calc(0.25rem * 2);\n margin-bottom: calc(var(--spacing) * 2);\n }\n.mb-4 {\n margin-bottom: calc(0.25rem * 4);\n margin-bottom: calc(var(--spacing) * 4);\n }\n.mb-8 {\n margin-bottom: calc(0.25rem * 8);\n margin-bottom: calc(var(--spacing) * 8);\n }\n.ml-2 {\n margin-left: calc(0.25rem * 2);\n margin-left: calc(var(--spacing) * 2);\n }\n.block {\n display: block;\n }\n.flex {\n display: flex;\n }\n.grid {\n display: grid;\n }\n.hidden {\n display: none;\n }\n.inline {\n display: inline;\n }\n.inline-flex {\n display: inline-flex;\n }\n.table {\n display: table;\n }\n.table-caption {\n display: table-caption;\n }\n.table-cell {\n display: table-cell;\n }\n.table-row {\n display: table-row;\n }\n.field-sizing-content {\n field-sizing: content;\n }\n.aspect-auto {\n aspect-ratio: auto;\n }\n.aspect-video {\n aspect-ratio: 16 / 9;\n aspect-ratio: var(--aspect-video);\n }\n.size-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.size-2\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.size-3 {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n.size-3\\.5 {\n width: calc(0.25rem * 3.5);\n width: calc(var(--spacing) * 3.5);\n height: calc(0.25rem * 3.5);\n height: calc(var(--spacing) * 3.5);\n }\n.size-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n.size-full {\n width: 100%;\n height: 100%;\n }\n.h-2 {\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.h-2\\.5 {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.h-9 {\n height: calc(0.25rem * 9);\n height: calc(var(--spacing) * 9);\n }\n.h-10 {\n height: calc(0.25rem * 10);\n height: calc(var(--spacing) * 10);\n }\n.h-\\[250px\\] {\n height: 250px;\n }\n.h-full {\n height: 100%;\n }\n.min-h-16 {\n min-height: calc(0.25rem * 16);\n min-height: calc(var(--spacing) * 16);\n }\n.w-0 {\n width: calc(0.25rem * 0);\n width: calc(var(--spacing) * 0);\n }\n.w-1 {\n width: calc(0.25rem * 1);\n width: calc(var(--spacing) * 1);\n }\n.w-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n }\n.w-2\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n.w-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n }\n.w-4\\/5 {\n width: calc(4/5 * 100%);\n }\n.w-64 {\n width: calc(0.25rem * 64);\n width: calc(var(--spacing) * 64);\n }\n.w-80 {\n width: calc(0.25rem * 80);\n width: calc(var(--spacing) * 80);\n }\n.w-\\[320px\\] {\n width: 320px;\n }\n.w-\\[640px\\] {\n width: 640px;\n }\n.w-fit {\n width: -webkit-fit-content;\n width: fit-content;\n }\n.w-full {\n width: 100%;\n }\n.max-w-\\[300px\\] {\n max-width: 300px;\n }\n.max-w-\\[320px\\] {\n max-width: 320px;\n }\n.min-w-0 {\n min-width: calc(0.25rem * 0);\n min-width: calc(var(--spacing) * 0);\n }\n.min-w-\\[8rem\\] {\n min-width: 8rem;\n }\n.flex-1 {\n flex: 1;\n }\n.flex-shrink {\n flex-shrink: 1;\n }\n.shrink-0 {\n flex-shrink: 0;\n }\n.flex-grow {\n flex-grow: 1;\n }\n.caption-bottom {\n caption-side: bottom;\n }\n.border-collapse {\n border-collapse: collapse;\n }\n.origin-\\(--radix-hover-card-content-transform-origin\\) {\n transform-origin: var(--radix-hover-card-content-transform-origin);\n }\n.origin-\\(--radix-tooltip-content-transform-origin\\) {\n transform-origin: var(--radix-tooltip-content-transform-origin);\n }\n.translate-y-\\[calc\\(-50\\%_-_2px\\)\\] {\n --tw-translate-y: calc(-50% - 2px);\n translate: var(--tw-translate-x) calc(-50% - 2px);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.rotate-45 {\n rotate: 45deg;\n }\n.transform {\n transform: ;\n transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);\n }\n.touch-none {\n touch-action: none;\n }\n.resize {\n resize: both;\n }\n.list-disc {\n list-style-type: disc;\n }\n.auto-rows-min {\n grid-auto-rows: -webkit-min-content;\n grid-auto-rows: min-content;\n }\n.grid-rows-\\[auto_auto\\] {\n grid-template-rows: auto auto;\n }\n.flex-col {\n flex-direction: column;\n }\n.flex-wrap {\n flex-wrap: wrap;\n }\n.items-center {\n align-items: center;\n }\n.items-end {\n align-items: flex-end;\n }\n.items-start {\n align-items: flex-start;\n }\n.items-stretch {\n align-items: stretch;\n }\n.justify-between {\n justify-content: space-between;\n }\n.justify-center {\n justify-content: center;\n }\n.gap-1 {\n gap: calc(0.25rem * 1);\n gap: calc(var(--spacing) * 1);\n }\n.gap-1\\.5 {\n gap: calc(0.25rem * 1.5);\n gap: calc(var(--spacing) * 1.5);\n }\n.gap-2 {\n gap: calc(0.25rem * 2);\n gap: calc(var(--spacing) * 2);\n }\n.gap-4 {\n gap: calc(0.25rem * 4);\n gap: calc(var(--spacing) * 4);\n }\n.gap-6 {\n gap: calc(0.25rem * 6);\n gap: calc(var(--spacing) * 6);\n }\n.self-start {\n align-self: flex-start;\n }\n.justify-self-end {\n justify-self: flex-end;\n }\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n.rounded-\\[2px\\] {\n border-radius: 2px;\n }\n.rounded-\\[4px\\] {\n border-radius: 4px;\n }\n.rounded-\\[inherit\\] {\n border-radius: inherit;\n }\n.rounded-full {\n border-radius: calc(infinity * 1px);\n }\n.rounded-lg {\n border-radius: 0.625rem;\n }\n.rounded-md {\n border-radius: calc(0.625rem - 2px);\n }\n.border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n.border-\\[1\\.5px\\] {\n border-style: var(--tw-border-style);\n border-width: 1.5px;\n }\n.border-t {\n border-top-style: var(--tw-border-style);\n border-top-width: 1px;\n }\n.border-t-2 {\n border-top-style: var(--tw-border-style);\n border-top-width: 2px;\n }\n.border-b {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n.border-l {\n border-left-style: var(--tw-border-style);\n border-left-width: 1px;\n }\n.border-dashed {\n --tw-border-style: dashed;\n border-style: dashed;\n }\n.border-\\(--color-border\\) {\n border-color: oklch(0.922 0 0);\n border-color: var(--color-border);\n }\n.border-border {\n border-color: oklch(0.922 0 0);\n }\n.border-border\\/50 {\n border-color: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n.border-gray-300 {\n border-color: oklch(87.2% 0.01 258.338);\n border-color: var(--color-gray-300);\n }\n.border-input {\n border-color: oklch(0.922 0 0);\n }\n.border-t-transparent {\n border-top-color: transparent;\n }\n.border-l-transparent {\n border-left-color: transparent;\n }\n.bg-\\(--color-bg\\) {\n background-color: var(--color-bg);\n }\n.bg-border {\n background-color: oklch(0.922 0 0);\n }\n.bg-gray-300 {\n background-color: oklch(87.2% 0.01 258.338);\n background-color: var(--color-gray-300);\n }\n.bg-gray-400 {\n background-color: oklch(70.7% 0.022 261.325);\n background-color: var(--color-gray-400);\n }\n.bg-gray-500 {\n background-color: oklch(55.1% 0.027 264.364);\n background-color: var(--color-gray-500);\n }\n.bg-green-300 {\n background-color: oklch(87.1% 0.15 154.449);\n background-color: var(--color-green-300);\n }\n.bg-muted {\n background-color: oklch(0.97 0 0);\n }\n.bg-muted\\/50 {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent);\n }\n.bg-popover {\n background-color: oklch(1 0 0);\n }\n.bg-primary {\n background-color: oklch(0.205 0 0);\n }\n.bg-slate-100 {\n background-color: oklch(96.8% 0.007 247.896);\n background-color: var(--color-slate-100);\n }\n.bg-transparent {\n background-color: transparent;\n }\n.bg-white {\n background-color: #fff;\n background-color: var(--color-white);\n }\n.fill-primary {\n fill: oklch(0.205 0 0);\n }\n.p-1 {\n padding: calc(0.25rem * 1);\n padding: calc(var(--spacing) * 1);\n }\n.p-2 {\n padding: calc(0.25rem * 2);\n padding: calc(var(--spacing) * 2);\n }\n.p-4 {\n padding: calc(0.25rem * 4);\n padding: calc(var(--spacing) * 4);\n }\n.p-6 {\n padding: calc(0.25rem * 6);\n padding: calc(var(--spacing) * 6);\n }\n.p-px {\n padding: 1px;\n }\n.px-2 {\n padding-inline: calc(0.25rem * 2);\n padding-inline: calc(var(--spacing) * 2);\n }\n.px-2\\.5 {\n padding-inline: calc(0.25rem * 2.5);\n padding-inline: calc(var(--spacing) * 2.5);\n }\n.px-3 {\n padding-inline: calc(0.25rem * 3);\n padding-inline: calc(var(--spacing) * 3);\n }\n.px-6 {\n padding-inline: calc(0.25rem * 6);\n padding-inline: calc(var(--spacing) * 6);\n }\n.px-\\[1em\\] {\n padding-inline: 1em;\n }\n.py-1 {\n padding-block: calc(0.25rem * 1);\n padding-block: calc(var(--spacing) * 1);\n }\n.py-1\\.5 {\n padding-block: calc(0.25rem * 1.5);\n padding-block: calc(var(--spacing) * 1.5);\n }\n.py-2 {\n padding-block: calc(0.25rem * 2);\n padding-block: calc(var(--spacing) * 2);\n }\n.py-6 {\n padding-block: calc(0.25rem * 6);\n padding-block: calc(var(--spacing) * 6);\n }\n.pt-3 {\n padding-top: calc(0.25rem * 3);\n padding-top: calc(var(--spacing) * 3);\n }\n.pb-3 {\n padding-bottom: calc(0.25rem * 3);\n padding-bottom: calc(var(--spacing) * 3);\n }\n.text-center {\n text-align: center;\n }\n.text-left {\n text-align: left;\n }\n.align-middle {\n vertical-align: middle;\n }\n.font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--font-mono);\n }\n.text-2xl {\n font-size: 1.5rem;\n font-size: var(--text-2xl);\n line-height: calc(2 / 1.5);\n line-height: var(--tw-leading, var(--text-2xl--line-height));\n }\n.text-3xl {\n font-size: 1.875rem;\n font-size: var(--text-3xl);\n line-height: calc(2.25 / 1.875);\n line-height: var(--tw-leading, var(--text-3xl--line-height));\n }\n.text-4xl {\n font-size: 2.25rem;\n font-size: var(--text-4xl);\n line-height: calc(2.5 / 2.25);\n line-height: var(--tw-leading, var(--text-4xl--line-height));\n }\n.text-base {\n font-size: 1rem;\n font-size: var(--text-base);\n line-height: calc(1.5 / 1);\n line-height: var(--tw-leading, var(--text-base--line-height));\n }\n.text-lg {\n font-size: 1.125rem;\n font-size: var(--text-lg);\n line-height: calc(1.75 / 1.125);\n line-height: var(--tw-leading, var(--text-lg--line-height));\n }\n.text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n.text-xl {\n font-size: 1.25rem;\n font-size: var(--text-xl);\n line-height: calc(1.75 / 1.25);\n line-height: var(--tw-leading, var(--text-xl--line-height));\n }\n.text-xs {\n font-size: 0.75rem;\n font-size: var(--text-xs);\n line-height: calc(1 / 0.75);\n line-height: var(--tw-leading, var(--text-xs--line-height));\n }\n.leading-\\[2\\.5rem\\] {\n --tw-leading: 2.5rem;\n line-height: 2.5rem;\n }\n.leading-\\[2rem\\] {\n --tw-leading: 2rem;\n line-height: 2rem;\n }\n.leading-\\[3\\.5rem\\] {\n --tw-leading: 3.5rem;\n line-height: 3.5rem;\n }\n.leading-\\[3rem\\] {\n --tw-leading: 3rem;\n line-height: 3rem;\n }\n.leading-\\[4rem\\] {\n --tw-leading: 4rem;\n line-height: 4rem;\n }\n.leading-none {\n --tw-leading: 1;\n line-height: 1;\n }\n.font-bold {\n --tw-font-weight: var(--font-weight-bold);\n font-weight: 700;\n font-weight: var(--font-weight-bold);\n }\n.font-medium {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n.font-semibold {\n --tw-font-weight: var(--font-weight-semibold);\n font-weight: 600;\n font-weight: var(--font-weight-semibold);\n }\n.text-balance {\n text-wrap: balance;\n }\n.text-wrap {\n text-wrap: wrap;\n }\n.whitespace-nowrap {\n white-space: nowrap;\n }\n.text-black {\n color: #000;\n color: var(--color-black);\n }\n.text-card-foreground {\n color: oklch(0.145 0 0);\n }\n.text-current {\n color: currentcolor;\n }\n.text-foreground {\n color: oklch(0.145 0 0);\n }\n.text-gray-500 {\n color: oklch(55.1% 0.027 264.364);\n color: var(--color-gray-500);\n }\n.text-gray-800 {\n color: oklch(27.8% 0.033 256.848);\n color: var(--color-gray-800);\n }\n.text-muted-foreground {\n color: oklch(0.556 0 0);\n }\n.text-popover-foreground {\n color: oklch(0.145 0 0);\n }\n.text-primary-foreground {\n color: oklch(0.985 0 0);\n }\n.italic {\n font-style: italic;\n }\n.tabular-nums {\n --tw-numeric-spacing: tabular-nums;\n font-variant-numeric: tabular-nums ;\n font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);\n }\n.underline {\n -webkit-text-decoration-line: underline;\n text-decoration-line: underline;\n }\n.shadow {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-sm {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xs {\n --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 2px 0 rgb(0 0 0 / 0.05);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-offset-background {\n --tw-ring-offset-color: oklch(1 0 0);\n }\n.outline-hidden {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n.outline {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n.filter {\n filter: ;\n 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,);\n }\n.transition {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-\\[color\\,box-shadow\\] {\n transition-property: color,box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-shadow {\n transition-property: box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-none {\n transition-property: none;\n }\n.outline-none {\n --tw-outline-style: none;\n outline-style: none;\n }\n.select-none {\n -webkit-user-select: none;\n user-select: none;\n }\n.group-data-\\[disabled\\=true\\]\\:pointer-events-none {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n pointer-events: none;\n }\n }\n.group-data-\\[disabled\\=true\\]\\:opacity-50 {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n opacity: 50%;\n }\n }\n.peer-disabled\\:cursor-not-allowed {\n &:is(:where(.peer):disabled ~ *) {\n cursor: not-allowed;\n }\n }\n.peer-disabled\\:opacity-50 {\n &:is(:where(.peer):disabled ~ *) {\n opacity: 50%;\n }\n }\n.selection\\:bg-primary {\n & *::selection {\n background-color: oklch(0.205 0 0);\n }\n &::selection {\n background-color: oklch(0.205 0 0);\n }\n }\n.selection\\:text-primary-foreground {\n & *::selection {\n color: oklch(0.985 0 0);\n }\n &::selection {\n color: oklch(0.985 0 0);\n }\n }\n.file\\:inline-flex {\n &::-webkit-file-upload-button {\n display: inline-flex;\n }\n &::file-selector-button {\n display: inline-flex;\n }\n }\n.file\\:h-7 {\n &::-webkit-file-upload-button {\n height: calc(0.25rem * 7);\n height: calc(var(--spacing) * 7);\n }\n &::file-selector-button {\n height: calc(0.25rem * 7);\n height: calc(var(--spacing) * 7);\n }\n }\n.file\\:border-0 {\n &::-webkit-file-upload-button {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n &::file-selector-button {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.file\\:bg-transparent {\n &::-webkit-file-upload-button {\n background-color: transparent;\n }\n &::file-selector-button {\n background-color: transparent;\n }\n }\n.file\\:text-sm {\n &::-webkit-file-upload-button {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n &::file-selector-button {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n }\n.file\\:font-medium {\n &::-webkit-file-upload-button {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n &::file-selector-button {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n }\n.file\\:text-foreground {\n &::-webkit-file-upload-button {\n color: oklch(0.145 0 0);\n }\n &::file-selector-button {\n color: oklch(0.145 0 0);\n }\n }\n.placeholder\\:text-muted-foreground {\n &::placeholder {\n color: oklch(0.556 0 0);\n }\n }\n.hover\\:bg-muted\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent)\n }\n }\n.focus-visible\\:border-ring {\n &:focus-visible {\n border-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\:ring-2 {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\:ring-\\[3px\\] {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\:ring-ring {\n &:focus-visible {\n --tw-ring-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\:ring-ring\\/50 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.708 0 0) 50%, transparent);\n }\n }\n.focus-visible\\:ring-offset-2 {\n &:focus-visible {\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n }\n }\n.focus-visible\\:outline-1 {\n &:focus-visible {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n }\n.focus-visible\\:outline-none {\n &:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n }\n.disabled\\:pointer-events-none {\n &:disabled {\n pointer-events: none;\n }\n }\n.disabled\\:cursor-not-allowed {\n &:disabled {\n cursor: not-allowed;\n }\n }\n.disabled\\:opacity-50 {\n &:disabled {\n opacity: 50%;\n }\n }\n.has-data-\\[slot\\=card-action\\]\\:grid-cols-\\[1fr_auto\\] {\n &:has(*[data-slot=\"card-action\"]) {\n grid-template-columns: 1fr auto;\n }\n }\n.aria-invalid\\:border-destructive {\n &[aria-invalid=\"true\"] {\n border-color: oklch(0.577 0.245 27.325);\n }\n }\n.aria-invalid\\:ring-destructive\\/20 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 20%, transparent);\n }\n }\n.data-\\[orientation\\=horizontal\\]\\:h-px {\n &[data-orientation=\"horizontal\"] {\n height: 1px;\n }\n }\n.data-\\[orientation\\=horizontal\\]\\:w-full {\n &[data-orientation=\"horizontal\"] {\n width: 100%;\n }\n }\n.data-\\[orientation\\=vertical\\]\\:h-full {\n &[data-orientation=\"vertical\"] {\n height: 100%;\n }\n }\n.data-\\[orientation\\=vertical\\]\\:w-px {\n &[data-orientation=\"vertical\"] {\n width: 1px;\n }\n }\n.data-\\[state\\=active\\]\\:bg-background {\n &[data-state=\"active\"] {\n background-color: oklch(1 0 0);\n }\n }\n.data-\\[state\\=active\\]\\:text-foreground {\n &[data-state=\"active\"] {\n color: oklch(0.145 0 0);\n }\n }\n.data-\\[state\\=active\\]\\:shadow {\n &[data-state=\"active\"] {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.data-\\[state\\=checked\\]\\:border-primary {\n &[data-state=\"checked\"] {\n border-color: oklch(0.205 0 0);\n }\n }\n.data-\\[state\\=checked\\]\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.data-\\[state\\=checked\\]\\:text-primary-foreground {\n &[data-state=\"checked\"] {\n color: oklch(0.985 0 0);\n }\n }\n.data-\\[state\\=selected\\]\\:bg-muted {\n &[data-state=\"selected\"] {\n background-color: oklch(0.97 0 0);\n }\n }\n.md\\:text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height))\n }\n.dark\\:bg-input\\/30 {\n background-color: color-mix(in oklab, oklch(0.922 0 0) 30%, transparent)\n }\n.dark\\:aria-invalid\\:ring-destructive\\/40 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 40%, transparent);\n }\n }\n.dark\\:data-\\[state\\=checked\\]\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.\\[\\&_\\.recharts-cartesian-axis-tick_text\\]\\:fill-muted-foreground {\n & .recharts-cartesian-axis-tick text {\n fill: oklch(0.556 0 0);\n }\n }\n.\\[\\&_\\.recharts-cartesian-grid_line\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border\\/50 {\n & .recharts-cartesian-grid line[stroke='#ccc'] {\n stroke: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n }\n.\\[\\&_\\.recharts-curve\\.recharts-tooltip-cursor\\]\\:stroke-border {\n & .recharts-curve.recharts-tooltip-cursor {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-dot\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent {\n & .recharts-dot[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\[\\&_\\.recharts-layer\\]\\:outline-hidden {\n & .recharts-layer {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_\\.recharts-polar-grid_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border {\n & .recharts-polar-grid [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-radial-bar-background-sector\\]\\:fill-muted {\n & .recharts-radial-bar-background-sector {\n fill: oklch(0.97 0 0);\n }\n }\n.\\[\\&_\\.recharts-rectangle\\.recharts-tooltip-cursor\\]\\:fill-muted {\n & .recharts-rectangle.recharts-tooltip-cursor {\n fill: oklch(0.97 0 0);\n }\n }\n.\\[\\&_\\.recharts-reference-line_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border {\n & .recharts-reference-line [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-sector\\]\\:outline-hidden {\n & .recharts-sector {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_\\.recharts-sector\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent {\n & .recharts-sector[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\[\\&_\\.recharts-surface\\]\\:outline-hidden {\n & .recharts-surface {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_tr\\]\\:border-b {\n & tr {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n }\n.\\[\\&_tr\\:last-child\\]\\:border-0 {\n & tr:last-child {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.\\[\\&\\:has\\(\\[role\\=checkbox\\]\\)\\]\\:pr-0 {\n &:has([role=checkbox]) {\n padding-right: calc(0.25rem * 0);\n padding-right: calc(var(--spacing) * 0);\n }\n }\n.\\[\\.border-b\\]\\:pb-6 {\n &:is(.border-b) {\n padding-bottom: calc(0.25rem * 6);\n padding-bottom: calc(var(--spacing) * 6);\n }\n }\n.\\[\\.border-t\\]\\:pt-6 {\n &:is(.border-t) {\n padding-top: calc(0.25rem * 6);\n padding-top: calc(var(--spacing) * 6);\n }\n }\n.\\[\\&\\>\\[role\\=checkbox\\]\\]\\:translate-y-\\[2px\\] {\n &>[role=checkbox] {\n --tw-translate-y: 2px;\n translate: var(--tw-translate-x) 2px;\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n }\n.\\[\\&\\>svg\\]\\:h-2\\.5 {\n &>svg {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n }\n.\\[\\&\\>svg\\]\\:h-3 {\n &>svg {\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n }\n.\\[\\&\\>svg\\]\\:w-2\\.5 {\n &>svg {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n }\n.\\[\\&\\>svg\\]\\:w-3 {\n &>svg {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n }\n }\n.\\[\\&\\>svg\\]\\:text-muted-foreground {\n &>svg {\n color: oklch(0.556 0 0);\n }\n }\n.\\[\\&\\>tr\\]\\:last\\:border-b-0 {\n &>tr {\n &:last-child {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 0px;\n }\n }\n }\n@property --tw-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-rotate-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-z {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-leading {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ordinal {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-slashed-zero {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-figure {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-spacing {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-fraction {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-outline-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-drop-shadow-size {\n syntax: \"*\";\n inherits: false;\n}\n@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n *, ::before, ::after, ::backdrop {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-border-style: solid;\n --tw-leading: initial;\n --tw-font-weight: initial;\n --tw-ordinal: initial;\n --tw-slashed-zero: initial;\n --tw-numeric-figure: initial;\n --tw-numeric-spacing: initial;\n --tw-numeric-fraction: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-outline-style: solid;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n }\n }\n";
package/helpers/css.js CHANGED
@@ -1,2 +1,2 @@
1
- export var tailwindCompiledCss="/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */\n:root, :host {\n --font-sans: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n --color-red-300: oklch(80.8% 0.114 19.571);\n --color-green-300: oklch(87.1% 0.15 154.449);\n --color-slate-100: oklch(96.8% 0.007 247.896);\n --color-gray-300: oklch(87.2% 0.01 258.338);\n --color-gray-400: oklch(70.7% 0.022 261.325);\n --color-gray-500: oklch(55.1% 0.027 264.364);\n --color-gray-800: oklch(27.8% 0.033 256.848);\n --color-black: #000;\n --color-white: #fff;\n --spacing: 0.25rem;\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --text-base: 1rem;\n --text-base--line-height: calc(1.5 / 1);\n --text-lg: 1.125rem;\n --text-lg--line-height: calc(1.75 / 1.125);\n --text-xl: 1.25rem;\n --text-xl--line-height: calc(1.75 / 1.25);\n --text-2xl: 1.5rem;\n --text-2xl--line-height: calc(2 / 1.5);\n --text-3xl: 1.875rem;\n --text-3xl--line-height: calc(2.25 / 1.875);\n --text-4xl: 2.25rem;\n --text-4xl--line-height: calc(2.5 / 2.25);\n --text-5xl: 3rem;\n --text-5xl--line-height: 1;\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --font-weight-bold: 700;\n --leading-relaxed: 1.625;\n --radius-md: calc(0.625rem - 2px);\n --radius-lg: 0.625rem;\n --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n --aspect-video: 16 / 9;\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --default-font-family: var(--font-sans);\n --default-mono-font-family: var(--font-mono);\n --color-border: oklch(0.922 0 0);\n }\n*, ::after, ::before, ::backdrop, ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\nhtml, :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");\n font-feature-settings: normal;\n font-feature-settings: var(--default-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-font-variation-settings, normal);\n -webkit-tap-highlight-color: transparent;\n }\nhr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n }\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\nb, strong {\n font-weight: bolder;\n }\ncode, kbd, samp, pre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);\n font-feature-settings: normal;\n font-feature-settings: var(--default-mono-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-mono-font-variation-settings, normal);\n font-size: 1em;\n }\nsmall {\n font-size: 80%;\n }\nsub, sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\nsub {\n bottom: -0.25em;\n }\nsup {\n top: -0.5em;\n }\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n:-moz-focusring {\n outline: auto;\n }\nprogress {\n vertical-align: baseline;\n }\nsummary {\n display: list-item;\n }\nol, ul, menu {\n list-style: none;\n }\nimg, svg, video, canvas, audio, iframe, embed, object {\n display: block;\n vertical-align: middle;\n }\nimg, video {\n max-width: 100%;\n height: auto;\n }\nbutton, input, select, optgroup, textarea, ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n:where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n:where(select:is([multiple], [size])) optgroup option {\n padding-inline-start: 20px;\n }\n::file-selector-button {\n margin-inline-end: 4px;\n }\n::-moz-placeholder {\n opacity: 1;\n }\n::placeholder {\n opacity: 1;\n }\n@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::-moz-placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n ::placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\ntextarea {\n resize: vertical;\n }\n::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n::-webkit-datetime-edit {\n display: inline-flex;\n }\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n:-moz-ui-invalid {\n box-shadow: none;\n }\nbutton, input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]), ::file-selector-button {\n -webkit-appearance: button;\n -moz-appearance: button;\n appearance: button;\n }\n::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n }\n[hidden]:where(:not([hidden=\"until-found\"])) {\n display: none !important;\n }\n.\\@container\\/card-header {\n container-type: inline-size;\n container-name: card-header;\n }\n.fixed {\n position: fixed;\n }\n.relative {\n position: relative;\n }\n.sticky {\n position: sticky;\n }\n.top-0 {\n top: calc(0.25rem * 0);\n top: calc(var(--spacing) * 0);\n }\n.z-50 {\n z-index: 50;\n }\n.col-start-2 {\n grid-column-start: 2;\n }\n.row-span-2 {\n grid-row: span 2 / span 2;\n }\n.row-start-1 {\n grid-row-start: 1;\n }\n.container {\n width: 100%;\n max-width: 40rem;\n max-width: 48rem;\n max-width: 64rem;\n max-width: 80rem;\n max-width: 96rem\n }\n.my-0 {\n margin-block: calc(0.25rem * 0);\n margin-block: calc(var(--spacing) * 0);\n }\n.my-0\\.5 {\n margin-block: calc(0.25rem * 0.5);\n margin-block: calc(var(--spacing) * 0.5);\n }\n.my-4 {\n margin-block: calc(0.25rem * 4);\n margin-block: calc(var(--spacing) * 4);\n }\n.my-6 {\n margin-block: calc(0.25rem * 6);\n margin-block: calc(var(--spacing) * 6);\n }\n.mt-1 {\n margin-top: calc(0.25rem * 1);\n margin-top: calc(var(--spacing) * 1);\n }\n.mt-2 {\n margin-top: calc(0.25rem * 2);\n margin-top: calc(var(--spacing) * 2);\n }\n.mt-4 {\n margin-top: calc(0.25rem * 4);\n margin-top: calc(var(--spacing) * 4);\n }\n.mr-2 {\n margin-right: calc(0.25rem * 2);\n margin-right: calc(var(--spacing) * 2);\n }\n.mb-1 {\n margin-bottom: calc(0.25rem * 1);\n margin-bottom: calc(var(--spacing) * 1);\n }\n.mb-2 {\n margin-bottom: calc(0.25rem * 2);\n margin-bottom: calc(var(--spacing) * 2);\n }\n.mb-4 {\n margin-bottom: calc(0.25rem * 4);\n margin-bottom: calc(var(--spacing) * 4);\n }\n.mb-8 {\n margin-bottom: calc(0.25rem * 8);\n margin-bottom: calc(var(--spacing) * 8);\n }\n.ml-2 {\n margin-left: calc(0.25rem * 2);\n margin-left: calc(var(--spacing) * 2);\n }\n.block {\n display: block;\n }\n.flex {\n display: flex;\n }\n.grid {\n display: grid;\n }\n.hidden {\n display: none;\n }\n.inline {\n display: inline;\n }\n.inline-flex {\n display: inline-flex;\n }\n.table {\n display: table;\n }\n.table-caption {\n display: table-caption;\n }\n.table-cell {\n display: table-cell;\n }\n.table-row {\n display: table-row;\n }\n.field-sizing-content {\n field-sizing: content;\n }\n.aspect-auto {\n aspect-ratio: auto;\n }\n.aspect-video {\n aspect-ratio: 16 / 9;\n aspect-ratio: var(--aspect-video);\n }\n.size-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.size-2\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.size-3 {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n.size-3\\.5 {\n width: calc(0.25rem * 3.5);\n width: calc(var(--spacing) * 3.5);\n height: calc(0.25rem * 3.5);\n height: calc(var(--spacing) * 3.5);\n }\n.size-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n.size-full {\n width: 100%;\n height: 100%;\n }\n.h-2 {\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.h-2\\.5 {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.h-5 {\n height: calc(0.25rem * 5);\n height: calc(var(--spacing) * 5);\n }\n.h-6 {\n height: calc(0.25rem * 6);\n height: calc(var(--spacing) * 6);\n }\n.h-9 {\n height: calc(0.25rem * 9);\n height: calc(var(--spacing) * 9);\n }\n.h-10 {\n height: calc(0.25rem * 10);\n height: calc(var(--spacing) * 10);\n }\n.h-12 {\n height: calc(0.25rem * 12);\n height: calc(var(--spacing) * 12);\n }\n.h-20 {\n height: calc(0.25rem * 20);\n height: calc(var(--spacing) * 20);\n }\n.h-30 {\n height: calc(0.25rem * 30);\n height: calc(var(--spacing) * 30);\n }\n.h-35 {\n height: calc(0.25rem * 35);\n height: calc(var(--spacing) * 35);\n }\n.h-40 {\n height: calc(0.25rem * 40);\n height: calc(var(--spacing) * 40);\n }\n.h-50 {\n height: calc(0.25rem * 50);\n height: calc(var(--spacing) * 50);\n }\n.h-\\[250px\\] {\n height: 250px;\n }\n.h-full {\n height: 100%;\n }\n.min-h-16 {\n min-height: calc(0.25rem * 16);\n min-height: calc(var(--spacing) * 16);\n }\n.min-h-\\[180px\\] {\n min-height: 180px;\n }\n.w-0 {\n width: calc(0.25rem * 0);\n width: calc(var(--spacing) * 0);\n }\n.w-1 {\n width: calc(0.25rem * 1);\n width: calc(var(--spacing) * 1);\n }\n.w-1\\/6 {\n width: calc(1/6 * 100%);\n }\n.w-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n }\n.w-2\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n.w-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n }\n.w-4\\/5 {\n width: calc(4/5 * 100%);\n }\n.w-64 {\n width: calc(0.25rem * 64);\n width: calc(var(--spacing) * 64);\n }\n.w-80 {\n width: calc(0.25rem * 80);\n width: calc(var(--spacing) * 80);\n }\n.w-\\[320px\\] {\n width: 320px;\n }\n.w-\\[640px\\] {\n width: 640px;\n }\n.w-fit {\n width: -moz-fit-content;\n width: fit-content;\n }\n.w-full {\n width: 100%;\n }\n.max-w-\\[320px\\] {\n max-width: 320px;\n }\n.max-w-full {\n max-width: 100%;\n }\n.min-w-0 {\n min-width: calc(0.25rem * 0);\n min-width: calc(var(--spacing) * 0);\n }\n.min-w-\\[8rem\\] {\n min-width: 8rem;\n }\n.flex-1 {\n flex: 1;\n }\n.flex-shrink {\n flex-shrink: 1;\n }\n.shrink-0 {\n flex-shrink: 0;\n }\n.flex-grow {\n flex-grow: 1;\n }\n.caption-bottom {\n caption-side: bottom;\n }\n.border-collapse {\n border-collapse: collapse;\n }\n.origin-\\(--radix-hover-card-content-transform-origin\\) {\n transform-origin: var(--radix-hover-card-content-transform-origin);\n }\n.origin-\\(--radix-tooltip-content-transform-origin\\) {\n transform-origin: var(--radix-tooltip-content-transform-origin);\n }\n.translate-y-\\[calc\\(-50\\%_-_2px\\)\\] {\n --tw-translate-y: calc(-50% - 2px);\n translate: var(--tw-translate-x) calc(-50% - 2px);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.rotate-45 {\n rotate: 45deg;\n }\n.transform {\n transform: ;\n transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);\n }\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n animation: var(--animate-pulse);\n }\n.touch-none {\n touch-action: none;\n }\n.resize {\n resize: both;\n }\n.list-disc {\n list-style-type: disc;\n }\n.auto-rows-min {\n grid-auto-rows: min-content;\n }\n.grid-rows-\\[auto_auto\\] {\n grid-template-rows: auto auto;\n }\n.flex-col {\n flex-direction: column;\n }\n.flex-row {\n flex-direction: row;\n }\n.flex-wrap {\n flex-wrap: wrap;\n }\n.items-center {\n align-items: center;\n }\n.items-end {\n align-items: flex-end;\n }\n.items-start {\n align-items: flex-start;\n }\n.items-stretch {\n align-items: stretch;\n }\n.justify-between {\n justify-content: space-between;\n }\n.justify-center {\n justify-content: center;\n }\n.gap-1 {\n gap: calc(0.25rem * 1);\n gap: calc(var(--spacing) * 1);\n }\n.gap-1\\.5 {\n gap: calc(0.25rem * 1.5);\n gap: calc(var(--spacing) * 1.5);\n }\n.gap-2 {\n gap: calc(0.25rem * 2);\n gap: calc(var(--spacing) * 2);\n }\n.gap-3 {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n.gap-4 {\n gap: calc(0.25rem * 4);\n gap: calc(var(--spacing) * 4);\n }\n.gap-6 {\n gap: calc(0.25rem * 6);\n gap: calc(var(--spacing) * 6);\n }\n.self-end {\n align-self: flex-end;\n }\n.self-start {\n align-self: flex-start;\n }\n.justify-self-end {\n justify-self: flex-end;\n }\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n.rounded-\\[2px\\] {\n border-radius: 2px;\n }\n.rounded-\\[4px\\] {\n border-radius: 4px;\n }\n.rounded-\\[inherit\\] {\n border-radius: inherit;\n }\n.rounded-full {\n border-radius: calc(infinity * 1px);\n }\n.rounded-lg {\n border-radius: 0.625rem;\n }\n.rounded-md {\n border-radius: calc(0.625rem - 2px);\n }\n.border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n.border-\\[1\\.5px\\] {\n border-style: var(--tw-border-style);\n border-width: 1.5px;\n }\n.border-t {\n border-top-style: var(--tw-border-style);\n border-top-width: 1px;\n }\n.border-t-2 {\n border-top-style: var(--tw-border-style);\n border-top-width: 2px;\n }\n.border-b {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n.border-l {\n border-left-style: var(--tw-border-style);\n border-left-width: 1px;\n }\n.border-dashed {\n --tw-border-style: dashed;\n border-style: dashed;\n }\n.border-\\(--color-border\\) {\n border-color: oklch(0.922 0 0);\n border-color: var(--color-border);\n }\n.border-border {\n border-color: oklch(0.922 0 0);\n }\n.border-border\\/50 {\n border-color: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n.border-gray-300 {\n border-color: oklch(87.2% 0.01 258.338);\n border-color: var(--color-gray-300);\n }\n.border-input {\n border-color: oklch(0.922 0 0);\n }\n.border-t-transparent {\n border-top-color: transparent;\n }\n.border-l-transparent {\n border-left-color: transparent;\n }\n.bg-\\(--color-bg\\) {\n background-color: var(--color-bg);\n }\n.bg-accent {\n background-color: oklch(0.97 0 0);\n }\n.bg-border {\n background-color: oklch(0.922 0 0);\n }\n.bg-gray-300 {\n background-color: oklch(87.2% 0.01 258.338);\n background-color: var(--color-gray-300);\n }\n.bg-gray-400 {\n background-color: oklch(70.7% 0.022 261.325);\n background-color: var(--color-gray-400);\n }\n.bg-gray-500 {\n background-color: oklch(55.1% 0.027 264.364);\n background-color: var(--color-gray-500);\n }\n.bg-green-300 {\n background-color: oklch(87.1% 0.15 154.449);\n background-color: var(--color-green-300);\n }\n.bg-muted {\n background-color: oklch(0.97 0 0);\n }\n.bg-muted\\/50 {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent);\n }\n.bg-popover {\n background-color: oklch(1 0 0);\n }\n.bg-primary {\n background-color: oklch(0.205 0 0);\n }\n.bg-slate-100 {\n background-color: oklch(96.8% 0.007 247.896);\n background-color: var(--color-slate-100);\n }\n.bg-transparent {\n background-color: transparent;\n }\n.bg-white {\n background-color: #fff;\n background-color: var(--color-white);\n }\n.fill-primary {\n fill: oklch(0.205 0 0);\n }\n.p-0 {\n padding: calc(0.25rem * 0);\n padding: calc(var(--spacing) * 0);\n }\n.p-1 {\n padding: calc(0.25rem * 1);\n padding: calc(var(--spacing) * 1);\n }\n.p-2 {\n padding: calc(0.25rem * 2);\n padding: calc(var(--spacing) * 2);\n }\n.p-4 {\n padding: calc(0.25rem * 4);\n padding: calc(var(--spacing) * 4);\n }\n.p-6 {\n padding: calc(0.25rem * 6);\n padding: calc(var(--spacing) * 6);\n }\n.p-px {\n padding: 1px;\n }\n.px-2 {\n padding-inline: calc(0.25rem * 2);\n padding-inline: calc(var(--spacing) * 2);\n }\n.px-2\\.5 {\n padding-inline: calc(0.25rem * 2.5);\n padding-inline: calc(var(--spacing) * 2.5);\n }\n.px-3 {\n padding-inline: calc(0.25rem * 3);\n padding-inline: calc(var(--spacing) * 3);\n }\n.px-4 {\n padding-inline: calc(0.25rem * 4);\n padding-inline: calc(var(--spacing) * 4);\n }\n.px-6 {\n padding-inline: calc(0.25rem * 6);\n padding-inline: calc(var(--spacing) * 6);\n }\n.px-\\[1em\\] {\n padding-inline: 1em;\n }\n.py-1 {\n padding-block: calc(0.25rem * 1);\n padding-block: calc(var(--spacing) * 1);\n }\n.py-1\\.5 {\n padding-block: calc(0.25rem * 1.5);\n padding-block: calc(var(--spacing) * 1.5);\n }\n.py-2 {\n padding-block: calc(0.25rem * 2);\n padding-block: calc(var(--spacing) * 2);\n }\n.py-3 {\n padding-block: calc(0.25rem * 3);\n padding-block: calc(var(--spacing) * 3);\n }\n.py-6 {\n padding-block: calc(0.25rem * 6);\n padding-block: calc(var(--spacing) * 6);\n }\n.pt-3 {\n padding-top: calc(0.25rem * 3);\n padding-top: calc(var(--spacing) * 3);\n }\n.pb-3 {\n padding-bottom: calc(0.25rem * 3);\n padding-bottom: calc(var(--spacing) * 3);\n }\n.text-center {\n text-align: center;\n }\n.text-left {\n text-align: left;\n }\n.align-middle {\n vertical-align: middle;\n }\n.font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--font-mono);\n }\n.text-2xl {\n font-size: 1.5rem;\n font-size: var(--text-2xl);\n line-height: calc(2 / 1.5);\n line-height: var(--tw-leading, var(--text-2xl--line-height));\n }\n.text-3xl {\n font-size: 1.875rem;\n font-size: var(--text-3xl);\n line-height: calc(2.25 / 1.875);\n line-height: var(--tw-leading, var(--text-3xl--line-height));\n }\n.text-4xl {\n font-size: 2.25rem;\n font-size: var(--text-4xl);\n line-height: calc(2.5 / 2.25);\n line-height: var(--tw-leading, var(--text-4xl--line-height));\n }\n.text-5xl {\n font-size: 3rem;\n font-size: var(--text-5xl);\n line-height: 1;\n line-height: var(--tw-leading, var(--text-5xl--line-height));\n }\n.text-base {\n font-size: 1rem;\n font-size: var(--text-base);\n line-height: calc(1.5 / 1);\n line-height: var(--tw-leading, var(--text-base--line-height));\n }\n.text-lg {\n font-size: 1.125rem;\n font-size: var(--text-lg);\n line-height: calc(1.75 / 1.125);\n line-height: var(--tw-leading, var(--text-lg--line-height));\n }\n.text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n.text-xl {\n font-size: 1.25rem;\n font-size: var(--text-xl);\n line-height: calc(1.75 / 1.25);\n line-height: var(--tw-leading, var(--text-xl--line-height));\n }\n.text-xs {\n font-size: 0.75rem;\n font-size: var(--text-xs);\n line-height: calc(1 / 0.75);\n line-height: var(--tw-leading, var(--text-xs--line-height));\n }\n.leading-\\[2\\.5rem\\] {\n --tw-leading: 2.5rem;\n line-height: 2.5rem;\n }\n.leading-\\[2rem\\] {\n --tw-leading: 2rem;\n line-height: 2rem;\n }\n.leading-\\[3\\.5rem\\] {\n --tw-leading: 3.5rem;\n line-height: 3.5rem;\n }\n.leading-\\[3rem\\] {\n --tw-leading: 3rem;\n line-height: 3rem;\n }\n.leading-\\[4rem\\] {\n --tw-leading: 4rem;\n line-height: 4rem;\n }\n.leading-none {\n --tw-leading: 1;\n line-height: 1;\n }\n.leading-relaxed {\n --tw-leading: var(--leading-relaxed);\n line-height: 1.625;\n line-height: var(--leading-relaxed);\n }\n.font-bold {\n --tw-font-weight: var(--font-weight-bold);\n font-weight: 700;\n font-weight: var(--font-weight-bold);\n }\n.font-medium {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n.font-semibold {\n --tw-font-weight: var(--font-weight-semibold);\n font-weight: 600;\n font-weight: var(--font-weight-semibold);\n }\n.text-balance {\n text-wrap: balance;\n }\n.text-wrap {\n text-wrap: wrap;\n }\n.whitespace-nowrap {\n white-space: nowrap;\n }\n.text-black {\n color: #000;\n color: var(--color-black);\n }\n.text-card-foreground {\n color: oklch(0.145 0 0);\n }\n.text-current {\n color: currentcolor;\n }\n.text-foreground {\n color: oklch(0.145 0 0);\n }\n.text-gray-500 {\n color: oklch(55.1% 0.027 264.364);\n color: var(--color-gray-500);\n }\n.text-gray-800 {\n color: oklch(27.8% 0.033 256.848);\n color: var(--color-gray-800);\n }\n.text-muted-foreground {\n color: oklch(0.556 0 0);\n }\n.text-popover-foreground {\n color: oklch(0.145 0 0);\n }\n.text-primary-foreground {\n color: oklch(0.985 0 0);\n }\n.italic {\n font-style: italic;\n }\n.tabular-nums {\n --tw-numeric-spacing: tabular-nums;\n font-variant-numeric: tabular-nums ;\n font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);\n }\n.underline {\n text-decoration-line: underline;\n }\n.shadow {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-sm {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xs {\n --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 2px 0 rgb(0 0 0 / 0.05);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-offset-background {\n --tw-ring-offset-color: oklch(1 0 0);\n }\n.outline-hidden {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n.outline {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n.filter {\n filter: ;\n 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,);\n }\n.transition {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-\\[color\\,box-shadow\\] {\n transition-property: color,box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-shadow {\n transition-property: box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-none {\n transition-property: none;\n }\n.outline-none {\n --tw-outline-style: none;\n outline-style: none;\n }\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n.group-data-\\[disabled\\=true\\]\\:pointer-events-none {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n pointer-events: none;\n }\n }\n.group-data-\\[disabled\\=true\\]\\:opacity-50 {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n opacity: 50%;\n }\n }\n.peer-disabled\\:cursor-not-allowed {\n &:is(:where(.peer):disabled ~ *) {\n cursor: not-allowed;\n }\n }\n.peer-disabled\\:opacity-50 {\n &:is(:where(.peer):disabled ~ *) {\n opacity: 50%;\n }\n }\n.selection\\:bg-primary {\n & *::-moz-selection {\n background-color: oklch(0.205 0 0);\n }\n & *::selection {\n background-color: oklch(0.205 0 0);\n }\n &::-moz-selection {\n background-color: oklch(0.205 0 0);\n }\n &::selection {\n background-color: oklch(0.205 0 0);\n }\n }\n.selection\\:text-primary-foreground {\n & *::-moz-selection {\n color: oklch(0.985 0 0);\n }\n & *::selection {\n color: oklch(0.985 0 0);\n }\n &::-moz-selection {\n color: oklch(0.985 0 0);\n }\n &::selection {\n color: oklch(0.985 0 0);\n }\n }\n.file\\:inline-flex {\n &::file-selector-button {\n display: inline-flex;\n }\n }\n.file\\:h-7 {\n &::file-selector-button {\n height: calc(0.25rem * 7);\n height: calc(var(--spacing) * 7);\n }\n }\n.file\\:border-0 {\n &::file-selector-button {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.file\\:bg-transparent {\n &::file-selector-button {\n background-color: transparent;\n }\n }\n.file\\:text-sm {\n &::file-selector-button {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n }\n.file\\:font-medium {\n &::file-selector-button {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n }\n.file\\:text-foreground {\n &::file-selector-button {\n color: oklch(0.145 0 0);\n }\n }\n.placeholder\\:text-muted-foreground {\n &::-moz-placeholder {\n color: oklch(0.556 0 0);\n }\n &::placeholder {\n color: oklch(0.556 0 0);\n }\n }\n.hover\\:bg-muted\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent)\n }\n }\n.focus-visible\\:border-ring {\n &:focus-visible {\n border-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\:ring-2 {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\:ring-\\[3px\\] {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\:ring-ring {\n &:focus-visible {\n --tw-ring-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\:ring-ring\\/50 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.708 0 0) 50%, transparent);\n }\n }\n.focus-visible\\:ring-offset-2 {\n &:focus-visible {\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n }\n }\n.focus-visible\\:outline-1 {\n &:focus-visible {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n }\n.focus-visible\\:outline-none {\n &:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n }\n.disabled\\:pointer-events-none {\n &:disabled {\n pointer-events: none;\n }\n }\n.disabled\\:cursor-not-allowed {\n &:disabled {\n cursor: not-allowed;\n }\n }\n.disabled\\:opacity-50 {\n &:disabled {\n opacity: 50%;\n }\n }\n.has-data-\\[slot\\=card-action\\]\\:grid-cols-\\[1fr_auto\\] {\n &:has(*[data-slot=\"card-action\"]) {\n grid-template-columns: 1fr auto;\n }\n }\n.aria-invalid\\:border-destructive {\n &[aria-invalid=\"true\"] {\n border-color: oklch(0.577 0.245 27.325);\n }\n }\n.aria-invalid\\:ring-destructive\\/20 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 20%, transparent);\n }\n }\n.data-\\[orientation\\=horizontal\\]\\:h-px {\n &[data-orientation=\"horizontal\"] {\n height: 1px;\n }\n }\n.data-\\[orientation\\=horizontal\\]\\:w-full {\n &[data-orientation=\"horizontal\"] {\n width: 100%;\n }\n }\n.data-\\[orientation\\=vertical\\]\\:h-full {\n &[data-orientation=\"vertical\"] {\n height: 100%;\n }\n }\n.data-\\[orientation\\=vertical\\]\\:w-px {\n &[data-orientation=\"vertical\"] {\n width: 1px;\n }\n }\n.data-\\[state\\=active\\]\\:bg-background {\n &[data-state=\"active\"] {\n background-color: oklch(1 0 0);\n }\n }\n.data-\\[state\\=active\\]\\:text-foreground {\n &[data-state=\"active\"] {\n color: oklch(0.145 0 0);\n }\n }\n.data-\\[state\\=active\\]\\:shadow {\n &[data-state=\"active\"] {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.data-\\[state\\=checked\\]\\:border-primary {\n &[data-state=\"checked\"] {\n border-color: oklch(0.205 0 0);\n }\n }\n.data-\\[state\\=checked\\]\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.data-\\[state\\=checked\\]\\:text-primary-foreground {\n &[data-state=\"checked\"] {\n color: oklch(0.985 0 0);\n }\n }\n.data-\\[state\\=selected\\]\\:bg-muted {\n &[data-state=\"selected\"] {\n background-color: oklch(0.97 0 0);\n }\n }\n.md\\:text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height))\n }\n.dark\\:bg-input\\/30 {\n background-color: color-mix(in oklab, oklch(0.922 0 0) 30%, transparent)\n }\n.dark\\:aria-invalid\\:ring-destructive\\/40 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 40%, transparent);\n }\n }\n.dark\\:data-\\[state\\=checked\\]\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.\\[\\&_\\.recharts-cartesian-axis-tick_text\\]\\:fill-muted-foreground {\n & .recharts-cartesian-axis-tick text {\n fill: oklch(0.556 0 0);\n }\n }\n.\\[\\&_\\.recharts-cartesian-grid_line\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border\\/50 {\n & .recharts-cartesian-grid line[stroke='#ccc'] {\n stroke: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n }\n.\\[\\&_\\.recharts-curve\\.recharts-tooltip-cursor\\]\\:stroke-border {\n & .recharts-curve.recharts-tooltip-cursor {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-dot\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent {\n & .recharts-dot[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\[\\&_\\.recharts-layer\\]\\:outline-hidden {\n & .recharts-layer {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_\\.recharts-polar-grid_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border {\n & .recharts-polar-grid [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-radial-bar-background-sector\\]\\:fill-muted {\n & .recharts-radial-bar-background-sector {\n fill: oklch(0.97 0 0);\n }\n }\n.\\[\\&_\\.recharts-rectangle\\.recharts-tooltip-cursor\\]\\:fill-muted {\n & .recharts-rectangle.recharts-tooltip-cursor {\n fill: oklch(0.97 0 0);\n }\n }\n.\\[\\&_\\.recharts-reference-line_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border {\n & .recharts-reference-line [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-sector\\]\\:outline-hidden {\n & .recharts-sector {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_\\.recharts-sector\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent {\n & .recharts-sector[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\[\\&_\\.recharts-surface\\]\\:outline-hidden {\n & .recharts-surface {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_tr\\]\\:border-b {\n & tr {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n }\n.\\[\\&_tr\\:last-child\\]\\:border-0 {\n & tr:last-child {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.\\[\\&\\:has\\(\\[role\\=checkbox\\]\\)\\]\\:pr-0 {\n &:has([role=checkbox]) {\n padding-right: calc(0.25rem * 0);\n padding-right: calc(var(--spacing) * 0);\n }\n }\n.\\[\\.border-b\\]\\:pb-6 {\n &:is(.border-b) {\n padding-bottom: calc(0.25rem * 6);\n padding-bottom: calc(var(--spacing) * 6);\n }\n }\n.\\[\\.border-t\\]\\:pt-6 {\n &:is(.border-t) {\n padding-top: calc(0.25rem * 6);\n padding-top: calc(var(--spacing) * 6);\n }\n }\n.\\[\\&\\>\\[role\\=checkbox\\]\\]\\:translate-y-\\[2px\\] {\n &>[role=checkbox] {\n --tw-translate-y: 2px;\n translate: var(--tw-translate-x) 2px;\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n }\n.\\[\\&\\>svg\\]\\:h-2\\.5 {\n &>svg {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n }\n.\\[\\&\\>svg\\]\\:h-3 {\n &>svg {\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n }\n.\\[\\&\\>svg\\]\\:w-2\\.5 {\n &>svg {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n }\n.\\[\\&\\>svg\\]\\:w-3 {\n &>svg {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n }\n }\n.\\[\\&\\>svg\\]\\:text-muted-foreground {\n &>svg {\n color: oklch(0.556 0 0);\n }\n }\n.\\[\\&\\>tr\\]\\:last\\:border-b-0 {\n &>tr {\n &:last-child {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 0px;\n }\n }\n }\n@property --tw-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-rotate-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-z {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-leading {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ordinal {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-slashed-zero {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-figure {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-spacing {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-fraction {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-outline-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-drop-shadow-size {\n syntax: \"*\";\n inherits: false;\n}\n@keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n}\n@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n *, ::before, ::after, ::backdrop {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-border-style: solid;\n --tw-leading: initial;\n --tw-font-weight: initial;\n --tw-ordinal: initial;\n --tw-slashed-zero: initial;\n --tw-numeric-figure: initial;\n --tw-numeric-spacing: initial;\n --tw-numeric-fraction: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-outline-style: solid;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n }\n }\n";
1
+ export var tailwindCompiledCss="/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */\n:root, :host {\n --font-sans: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n --color-red-300: oklch(80.8% 0.114 19.571);\n --color-green-300: oklch(87.1% 0.15 154.449);\n --color-slate-100: oklch(96.8% 0.007 247.896);\n --color-gray-300: oklch(87.2% 0.01 258.338);\n --color-gray-400: oklch(70.7% 0.022 261.325);\n --color-gray-500: oklch(55.1% 0.027 264.364);\n --color-gray-800: oklch(27.8% 0.033 256.848);\n --color-black: #000;\n --color-white: #fff;\n --spacing: 0.25rem;\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --text-base: 1rem;\n --text-base--line-height: calc(1.5 / 1);\n --text-lg: 1.125rem;\n --text-lg--line-height: calc(1.75 / 1.125);\n --text-xl: 1.25rem;\n --text-xl--line-height: calc(1.75 / 1.25);\n --text-2xl: 1.5rem;\n --text-2xl--line-height: calc(2 / 1.5);\n --text-3xl: 1.875rem;\n --text-3xl--line-height: calc(2.25 / 1.875);\n --text-4xl: 2.25rem;\n --text-4xl--line-height: calc(2.5 / 2.25);\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --font-weight-bold: 700;\n --radius-md: calc(0.625rem - 2px);\n --radius-lg: 0.625rem;\n --aspect-video: 16 / 9;\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --default-font-family: var(--font-sans);\n --default-mono-font-family: var(--font-mono);\n --color-border: oklch(0.922 0 0);\n }\n::-webkit-file-upload-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\n*, ::after, ::before, ::backdrop, ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\nhtml, :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");\n font-feature-settings: normal;\n font-feature-settings: var(--default-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-font-variation-settings, normal);\n -webkit-tap-highlight-color: transparent;\n }\nhr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n }\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\nb, strong {\n font-weight: bolder;\n }\ncode, kbd, samp, pre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);\n font-feature-settings: normal;\n font-feature-settings: var(--default-mono-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-mono-font-variation-settings, normal);\n font-size: 1em;\n }\nsmall {\n font-size: 80%;\n }\nsub, sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\nsub {\n bottom: -0.25em;\n }\nsup {\n top: -0.5em;\n }\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n:-moz-focusring {\n outline: auto;\n }\nprogress {\n vertical-align: baseline;\n }\nsummary {\n display: list-item;\n }\nol, ul, menu {\n list-style: none;\n }\nimg, svg, video, canvas, audio, iframe, embed, object {\n display: block;\n vertical-align: middle;\n }\nimg, video {\n max-width: 100%;\n height: auto;\n }\n::-webkit-file-upload-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\nbutton, input, select, optgroup, textarea, ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n:where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n:where(select:is([multiple], [size])) optgroup option {\n -webkit-padding-start: 20px;\n padding-inline-start: 20px;\n }\n::-webkit-file-upload-button {\n -webkit-margin-end: 4px;\n margin-inline-end: 4px;\n }\n::file-selector-button {\n -webkit-margin-end: 4px;\n margin-inline-end: 4px;\n }\n::placeholder {\n opacity: 1;\n }\n@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\ntextarea {\n resize: vertical;\n }\n::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n::-webkit-datetime-edit {\n display: inline-flex;\n }\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n:-moz-ui-invalid {\n box-shadow: none;\n }\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n appearance: button;\n }\nbutton, input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]), ::file-selector-button {\n -webkit-appearance: button;\n appearance: button;\n }\n::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n }\n[hidden]:where(:not([hidden=\"until-found\"])) {\n display: none !important;\n }\n.\\@container\\/card-header {\n container-type: inline-size;\n container-name: card-header;\n }\n.fixed {\n position: fixed;\n }\n.relative {\n position: relative;\n }\n.sticky {\n position: -webkit-sticky;\n position: sticky;\n }\n.top-0 {\n top: calc(0.25rem * 0);\n top: calc(var(--spacing) * 0);\n }\n.z-50 {\n z-index: 50;\n }\n.col-start-2 {\n grid-column-start: 2;\n }\n.row-span-2 {\n grid-row: span 2 / span 2;\n }\n.row-start-1 {\n grid-row-start: 1;\n }\n.container {\n width: 100%;\n max-width: 40rem;\n max-width: 48rem;\n max-width: 64rem;\n max-width: 80rem;\n max-width: 96rem\n }\n.my-0 {\n margin-block: calc(0.25rem * 0);\n margin-block: calc(var(--spacing) * 0);\n }\n.my-0\\.5 {\n margin-block: calc(0.25rem * 0.5);\n margin-block: calc(var(--spacing) * 0.5);\n }\n.my-4 {\n margin-block: calc(0.25rem * 4);\n margin-block: calc(var(--spacing) * 4);\n }\n.my-6 {\n margin-block: calc(0.25rem * 6);\n margin-block: calc(var(--spacing) * 6);\n }\n.mt-2 {\n margin-top: calc(0.25rem * 2);\n margin-top: calc(var(--spacing) * 2);\n }\n.mt-4 {\n margin-top: calc(0.25rem * 4);\n margin-top: calc(var(--spacing) * 4);\n }\n.mb-1 {\n margin-bottom: calc(0.25rem * 1);\n margin-bottom: calc(var(--spacing) * 1);\n }\n.mb-2 {\n margin-bottom: calc(0.25rem * 2);\n margin-bottom: calc(var(--spacing) * 2);\n }\n.mb-4 {\n margin-bottom: calc(0.25rem * 4);\n margin-bottom: calc(var(--spacing) * 4);\n }\n.mb-8 {\n margin-bottom: calc(0.25rem * 8);\n margin-bottom: calc(var(--spacing) * 8);\n }\n.ml-2 {\n margin-left: calc(0.25rem * 2);\n margin-left: calc(var(--spacing) * 2);\n }\n.block {\n display: block;\n }\n.flex {\n display: flex;\n }\n.grid {\n display: grid;\n }\n.hidden {\n display: none;\n }\n.inline {\n display: inline;\n }\n.inline-flex {\n display: inline-flex;\n }\n.table {\n display: table;\n }\n.table-caption {\n display: table-caption;\n }\n.table-cell {\n display: table-cell;\n }\n.table-row {\n display: table-row;\n }\n.field-sizing-content {\n field-sizing: content;\n }\n.aspect-auto {\n aspect-ratio: auto;\n }\n.aspect-video {\n aspect-ratio: 16 / 9;\n aspect-ratio: var(--aspect-video);\n }\n.size-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.size-2\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.size-3 {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n.size-3\\.5 {\n width: calc(0.25rem * 3.5);\n width: calc(var(--spacing) * 3.5);\n height: calc(0.25rem * 3.5);\n height: calc(var(--spacing) * 3.5);\n }\n.size-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n.size-full {\n width: 100%;\n height: 100%;\n }\n.h-2 {\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.h-2\\.5 {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.h-9 {\n height: calc(0.25rem * 9);\n height: calc(var(--spacing) * 9);\n }\n.h-10 {\n height: calc(0.25rem * 10);\n height: calc(var(--spacing) * 10);\n }\n.h-\\[250px\\] {\n height: 250px;\n }\n.h-full {\n height: 100%;\n }\n.min-h-16 {\n min-height: calc(0.25rem * 16);\n min-height: calc(var(--spacing) * 16);\n }\n.w-0 {\n width: calc(0.25rem * 0);\n width: calc(var(--spacing) * 0);\n }\n.w-1 {\n width: calc(0.25rem * 1);\n width: calc(var(--spacing) * 1);\n }\n.w-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n }\n.w-2\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n.w-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n }\n.w-4\\/5 {\n width: calc(4/5 * 100%);\n }\n.w-64 {\n width: calc(0.25rem * 64);\n width: calc(var(--spacing) * 64);\n }\n.w-80 {\n width: calc(0.25rem * 80);\n width: calc(var(--spacing) * 80);\n }\n.w-\\[320px\\] {\n width: 320px;\n }\n.w-\\[640px\\] {\n width: 640px;\n }\n.w-fit {\n width: -webkit-fit-content;\n width: fit-content;\n }\n.w-full {\n width: 100%;\n }\n.max-w-\\[300px\\] {\n max-width: 300px;\n }\n.max-w-\\[320px\\] {\n max-width: 320px;\n }\n.min-w-0 {\n min-width: calc(0.25rem * 0);\n min-width: calc(var(--spacing) * 0);\n }\n.min-w-\\[8rem\\] {\n min-width: 8rem;\n }\n.flex-1 {\n flex: 1;\n }\n.flex-shrink {\n flex-shrink: 1;\n }\n.shrink-0 {\n flex-shrink: 0;\n }\n.flex-grow {\n flex-grow: 1;\n }\n.caption-bottom {\n caption-side: bottom;\n }\n.border-collapse {\n border-collapse: collapse;\n }\n.origin-\\(--radix-hover-card-content-transform-origin\\) {\n transform-origin: var(--radix-hover-card-content-transform-origin);\n }\n.origin-\\(--radix-tooltip-content-transform-origin\\) {\n transform-origin: var(--radix-tooltip-content-transform-origin);\n }\n.translate-y-\\[calc\\(-50\\%_-_2px\\)\\] {\n --tw-translate-y: calc(-50% - 2px);\n translate: var(--tw-translate-x) calc(-50% - 2px);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.rotate-45 {\n rotate: 45deg;\n }\n.transform {\n transform: ;\n transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);\n }\n.touch-none {\n touch-action: none;\n }\n.resize {\n resize: both;\n }\n.list-disc {\n list-style-type: disc;\n }\n.auto-rows-min {\n grid-auto-rows: -webkit-min-content;\n grid-auto-rows: min-content;\n }\n.grid-rows-\\[auto_auto\\] {\n grid-template-rows: auto auto;\n }\n.flex-col {\n flex-direction: column;\n }\n.flex-wrap {\n flex-wrap: wrap;\n }\n.items-center {\n align-items: center;\n }\n.items-end {\n align-items: flex-end;\n }\n.items-start {\n align-items: flex-start;\n }\n.items-stretch {\n align-items: stretch;\n }\n.justify-between {\n justify-content: space-between;\n }\n.justify-center {\n justify-content: center;\n }\n.gap-1 {\n gap: calc(0.25rem * 1);\n gap: calc(var(--spacing) * 1);\n }\n.gap-1\\.5 {\n gap: calc(0.25rem * 1.5);\n gap: calc(var(--spacing) * 1.5);\n }\n.gap-2 {\n gap: calc(0.25rem * 2);\n gap: calc(var(--spacing) * 2);\n }\n.gap-4 {\n gap: calc(0.25rem * 4);\n gap: calc(var(--spacing) * 4);\n }\n.gap-6 {\n gap: calc(0.25rem * 6);\n gap: calc(var(--spacing) * 6);\n }\n.self-start {\n align-self: flex-start;\n }\n.justify-self-end {\n justify-self: flex-end;\n }\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n.rounded-\\[2px\\] {\n border-radius: 2px;\n }\n.rounded-\\[4px\\] {\n border-radius: 4px;\n }\n.rounded-\\[inherit\\] {\n border-radius: inherit;\n }\n.rounded-full {\n border-radius: calc(infinity * 1px);\n }\n.rounded-lg {\n border-radius: 0.625rem;\n }\n.rounded-md {\n border-radius: calc(0.625rem - 2px);\n }\n.border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n.border-\\[1\\.5px\\] {\n border-style: var(--tw-border-style);\n border-width: 1.5px;\n }\n.border-t {\n border-top-style: var(--tw-border-style);\n border-top-width: 1px;\n }\n.border-t-2 {\n border-top-style: var(--tw-border-style);\n border-top-width: 2px;\n }\n.border-b {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n.border-l {\n border-left-style: var(--tw-border-style);\n border-left-width: 1px;\n }\n.border-dashed {\n --tw-border-style: dashed;\n border-style: dashed;\n }\n.border-\\(--color-border\\) {\n border-color: oklch(0.922 0 0);\n border-color: var(--color-border);\n }\n.border-border {\n border-color: oklch(0.922 0 0);\n }\n.border-border\\/50 {\n border-color: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n.border-gray-300 {\n border-color: oklch(87.2% 0.01 258.338);\n border-color: var(--color-gray-300);\n }\n.border-input {\n border-color: oklch(0.922 0 0);\n }\n.border-t-transparent {\n border-top-color: transparent;\n }\n.border-l-transparent {\n border-left-color: transparent;\n }\n.bg-\\(--color-bg\\) {\n background-color: var(--color-bg);\n }\n.bg-border {\n background-color: oklch(0.922 0 0);\n }\n.bg-gray-300 {\n background-color: oklch(87.2% 0.01 258.338);\n background-color: var(--color-gray-300);\n }\n.bg-gray-400 {\n background-color: oklch(70.7% 0.022 261.325);\n background-color: var(--color-gray-400);\n }\n.bg-gray-500 {\n background-color: oklch(55.1% 0.027 264.364);\n background-color: var(--color-gray-500);\n }\n.bg-green-300 {\n background-color: oklch(87.1% 0.15 154.449);\n background-color: var(--color-green-300);\n }\n.bg-muted {\n background-color: oklch(0.97 0 0);\n }\n.bg-muted\\/50 {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent);\n }\n.bg-popover {\n background-color: oklch(1 0 0);\n }\n.bg-primary {\n background-color: oklch(0.205 0 0);\n }\n.bg-slate-100 {\n background-color: oklch(96.8% 0.007 247.896);\n background-color: var(--color-slate-100);\n }\n.bg-transparent {\n background-color: transparent;\n }\n.bg-white {\n background-color: #fff;\n background-color: var(--color-white);\n }\n.fill-primary {\n fill: oklch(0.205 0 0);\n }\n.p-1 {\n padding: calc(0.25rem * 1);\n padding: calc(var(--spacing) * 1);\n }\n.p-2 {\n padding: calc(0.25rem * 2);\n padding: calc(var(--spacing) * 2);\n }\n.p-4 {\n padding: calc(0.25rem * 4);\n padding: calc(var(--spacing) * 4);\n }\n.p-6 {\n padding: calc(0.25rem * 6);\n padding: calc(var(--spacing) * 6);\n }\n.p-px {\n padding: 1px;\n }\n.px-2 {\n padding-inline: calc(0.25rem * 2);\n padding-inline: calc(var(--spacing) * 2);\n }\n.px-2\\.5 {\n padding-inline: calc(0.25rem * 2.5);\n padding-inline: calc(var(--spacing) * 2.5);\n }\n.px-3 {\n padding-inline: calc(0.25rem * 3);\n padding-inline: calc(var(--spacing) * 3);\n }\n.px-6 {\n padding-inline: calc(0.25rem * 6);\n padding-inline: calc(var(--spacing) * 6);\n }\n.px-\\[1em\\] {\n padding-inline: 1em;\n }\n.py-1 {\n padding-block: calc(0.25rem * 1);\n padding-block: calc(var(--spacing) * 1);\n }\n.py-1\\.5 {\n padding-block: calc(0.25rem * 1.5);\n padding-block: calc(var(--spacing) * 1.5);\n }\n.py-2 {\n padding-block: calc(0.25rem * 2);\n padding-block: calc(var(--spacing) * 2);\n }\n.py-6 {\n padding-block: calc(0.25rem * 6);\n padding-block: calc(var(--spacing) * 6);\n }\n.pt-3 {\n padding-top: calc(0.25rem * 3);\n padding-top: calc(var(--spacing) * 3);\n }\n.pb-3 {\n padding-bottom: calc(0.25rem * 3);\n padding-bottom: calc(var(--spacing) * 3);\n }\n.text-center {\n text-align: center;\n }\n.text-left {\n text-align: left;\n }\n.align-middle {\n vertical-align: middle;\n }\n.font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--font-mono);\n }\n.text-2xl {\n font-size: 1.5rem;\n font-size: var(--text-2xl);\n line-height: calc(2 / 1.5);\n line-height: var(--tw-leading, var(--text-2xl--line-height));\n }\n.text-3xl {\n font-size: 1.875rem;\n font-size: var(--text-3xl);\n line-height: calc(2.25 / 1.875);\n line-height: var(--tw-leading, var(--text-3xl--line-height));\n }\n.text-4xl {\n font-size: 2.25rem;\n font-size: var(--text-4xl);\n line-height: calc(2.5 / 2.25);\n line-height: var(--tw-leading, var(--text-4xl--line-height));\n }\n.text-base {\n font-size: 1rem;\n font-size: var(--text-base);\n line-height: calc(1.5 / 1);\n line-height: var(--tw-leading, var(--text-base--line-height));\n }\n.text-lg {\n font-size: 1.125rem;\n font-size: var(--text-lg);\n line-height: calc(1.75 / 1.125);\n line-height: var(--tw-leading, var(--text-lg--line-height));\n }\n.text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n.text-xl {\n font-size: 1.25rem;\n font-size: var(--text-xl);\n line-height: calc(1.75 / 1.25);\n line-height: var(--tw-leading, var(--text-xl--line-height));\n }\n.text-xs {\n font-size: 0.75rem;\n font-size: var(--text-xs);\n line-height: calc(1 / 0.75);\n line-height: var(--tw-leading, var(--text-xs--line-height));\n }\n.leading-\\[2\\.5rem\\] {\n --tw-leading: 2.5rem;\n line-height: 2.5rem;\n }\n.leading-\\[2rem\\] {\n --tw-leading: 2rem;\n line-height: 2rem;\n }\n.leading-\\[3\\.5rem\\] {\n --tw-leading: 3.5rem;\n line-height: 3.5rem;\n }\n.leading-\\[3rem\\] {\n --tw-leading: 3rem;\n line-height: 3rem;\n }\n.leading-\\[4rem\\] {\n --tw-leading: 4rem;\n line-height: 4rem;\n }\n.leading-none {\n --tw-leading: 1;\n line-height: 1;\n }\n.font-bold {\n --tw-font-weight: var(--font-weight-bold);\n font-weight: 700;\n font-weight: var(--font-weight-bold);\n }\n.font-medium {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n.font-semibold {\n --tw-font-weight: var(--font-weight-semibold);\n font-weight: 600;\n font-weight: var(--font-weight-semibold);\n }\n.text-balance {\n text-wrap: balance;\n }\n.text-wrap {\n text-wrap: wrap;\n }\n.whitespace-nowrap {\n white-space: nowrap;\n }\n.text-black {\n color: #000;\n color: var(--color-black);\n }\n.text-card-foreground {\n color: oklch(0.145 0 0);\n }\n.text-current {\n color: currentcolor;\n }\n.text-foreground {\n color: oklch(0.145 0 0);\n }\n.text-gray-500 {\n color: oklch(55.1% 0.027 264.364);\n color: var(--color-gray-500);\n }\n.text-gray-800 {\n color: oklch(27.8% 0.033 256.848);\n color: var(--color-gray-800);\n }\n.text-muted-foreground {\n color: oklch(0.556 0 0);\n }\n.text-popover-foreground {\n color: oklch(0.145 0 0);\n }\n.text-primary-foreground {\n color: oklch(0.985 0 0);\n }\n.italic {\n font-style: italic;\n }\n.tabular-nums {\n --tw-numeric-spacing: tabular-nums;\n font-variant-numeric: tabular-nums ;\n font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);\n }\n.underline {\n -webkit-text-decoration-line: underline;\n text-decoration-line: underline;\n }\n.shadow {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-sm {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xs {\n --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 2px 0 rgb(0 0 0 / 0.05);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-offset-background {\n --tw-ring-offset-color: oklch(1 0 0);\n }\n.outline-hidden {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n.outline {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n.filter {\n filter: ;\n 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,);\n }\n.transition {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-\\[color\\,box-shadow\\] {\n transition-property: color,box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-shadow {\n transition-property: box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-none {\n transition-property: none;\n }\n.outline-none {\n --tw-outline-style: none;\n outline-style: none;\n }\n.select-none {\n -webkit-user-select: none;\n user-select: none;\n }\n.group-data-\\[disabled\\=true\\]\\:pointer-events-none {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n pointer-events: none;\n }\n }\n.group-data-\\[disabled\\=true\\]\\:opacity-50 {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n opacity: 50%;\n }\n }\n.peer-disabled\\:cursor-not-allowed {\n &:is(:where(.peer):disabled ~ *) {\n cursor: not-allowed;\n }\n }\n.peer-disabled\\:opacity-50 {\n &:is(:where(.peer):disabled ~ *) {\n opacity: 50%;\n }\n }\n.selection\\:bg-primary {\n & *::selection {\n background-color: oklch(0.205 0 0);\n }\n &::selection {\n background-color: oklch(0.205 0 0);\n }\n }\n.selection\\:text-primary-foreground {\n & *::selection {\n color: oklch(0.985 0 0);\n }\n &::selection {\n color: oklch(0.985 0 0);\n }\n }\n.file\\:inline-flex {\n &::-webkit-file-upload-button {\n display: inline-flex;\n }\n &::file-selector-button {\n display: inline-flex;\n }\n }\n.file\\:h-7 {\n &::-webkit-file-upload-button {\n height: calc(0.25rem * 7);\n height: calc(var(--spacing) * 7);\n }\n &::file-selector-button {\n height: calc(0.25rem * 7);\n height: calc(var(--spacing) * 7);\n }\n }\n.file\\:border-0 {\n &::-webkit-file-upload-button {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n &::file-selector-button {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.file\\:bg-transparent {\n &::-webkit-file-upload-button {\n background-color: transparent;\n }\n &::file-selector-button {\n background-color: transparent;\n }\n }\n.file\\:text-sm {\n &::-webkit-file-upload-button {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n &::file-selector-button {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n }\n.file\\:font-medium {\n &::-webkit-file-upload-button {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n &::file-selector-button {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n }\n.file\\:text-foreground {\n &::-webkit-file-upload-button {\n color: oklch(0.145 0 0);\n }\n &::file-selector-button {\n color: oklch(0.145 0 0);\n }\n }\n.placeholder\\:text-muted-foreground {\n &::placeholder {\n color: oklch(0.556 0 0);\n }\n }\n.hover\\:bg-muted\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent)\n }\n }\n.focus-visible\\:border-ring {\n &:focus-visible {\n border-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\:ring-2 {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\:ring-\\[3px\\] {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\:ring-ring {\n &:focus-visible {\n --tw-ring-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\:ring-ring\\/50 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.708 0 0) 50%, transparent);\n }\n }\n.focus-visible\\:ring-offset-2 {\n &:focus-visible {\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n }\n }\n.focus-visible\\:outline-1 {\n &:focus-visible {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n }\n.focus-visible\\:outline-none {\n &:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n }\n.disabled\\:pointer-events-none {\n &:disabled {\n pointer-events: none;\n }\n }\n.disabled\\:cursor-not-allowed {\n &:disabled {\n cursor: not-allowed;\n }\n }\n.disabled\\:opacity-50 {\n &:disabled {\n opacity: 50%;\n }\n }\n.has-data-\\[slot\\=card-action\\]\\:grid-cols-\\[1fr_auto\\] {\n &:has(*[data-slot=\"card-action\"]) {\n grid-template-columns: 1fr auto;\n }\n }\n.aria-invalid\\:border-destructive {\n &[aria-invalid=\"true\"] {\n border-color: oklch(0.577 0.245 27.325);\n }\n }\n.aria-invalid\\:ring-destructive\\/20 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 20%, transparent);\n }\n }\n.data-\\[orientation\\=horizontal\\]\\:h-px {\n &[data-orientation=\"horizontal\"] {\n height: 1px;\n }\n }\n.data-\\[orientation\\=horizontal\\]\\:w-full {\n &[data-orientation=\"horizontal\"] {\n width: 100%;\n }\n }\n.data-\\[orientation\\=vertical\\]\\:h-full {\n &[data-orientation=\"vertical\"] {\n height: 100%;\n }\n }\n.data-\\[orientation\\=vertical\\]\\:w-px {\n &[data-orientation=\"vertical\"] {\n width: 1px;\n }\n }\n.data-\\[state\\=active\\]\\:bg-background {\n &[data-state=\"active\"] {\n background-color: oklch(1 0 0);\n }\n }\n.data-\\[state\\=active\\]\\:text-foreground {\n &[data-state=\"active\"] {\n color: oklch(0.145 0 0);\n }\n }\n.data-\\[state\\=active\\]\\:shadow {\n &[data-state=\"active\"] {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.data-\\[state\\=checked\\]\\:border-primary {\n &[data-state=\"checked\"] {\n border-color: oklch(0.205 0 0);\n }\n }\n.data-\\[state\\=checked\\]\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.data-\\[state\\=checked\\]\\:text-primary-foreground {\n &[data-state=\"checked\"] {\n color: oklch(0.985 0 0);\n }\n }\n.data-\\[state\\=selected\\]\\:bg-muted {\n &[data-state=\"selected\"] {\n background-color: oklch(0.97 0 0);\n }\n }\n.md\\:text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height))\n }\n.dark\\:bg-input\\/30 {\n background-color: color-mix(in oklab, oklch(0.922 0 0) 30%, transparent)\n }\n.dark\\:aria-invalid\\:ring-destructive\\/40 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 40%, transparent);\n }\n }\n.dark\\:data-\\[state\\=checked\\]\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.\\[\\&_\\.recharts-cartesian-axis-tick_text\\]\\:fill-muted-foreground {\n & .recharts-cartesian-axis-tick text {\n fill: oklch(0.556 0 0);\n }\n }\n.\\[\\&_\\.recharts-cartesian-grid_line\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border\\/50 {\n & .recharts-cartesian-grid line[stroke='#ccc'] {\n stroke: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n }\n.\\[\\&_\\.recharts-curve\\.recharts-tooltip-cursor\\]\\:stroke-border {\n & .recharts-curve.recharts-tooltip-cursor {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-dot\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent {\n & .recharts-dot[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\[\\&_\\.recharts-layer\\]\\:outline-hidden {\n & .recharts-layer {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_\\.recharts-polar-grid_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border {\n & .recharts-polar-grid [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-radial-bar-background-sector\\]\\:fill-muted {\n & .recharts-radial-bar-background-sector {\n fill: oklch(0.97 0 0);\n }\n }\n.\\[\\&_\\.recharts-rectangle\\.recharts-tooltip-cursor\\]\\:fill-muted {\n & .recharts-rectangle.recharts-tooltip-cursor {\n fill: oklch(0.97 0 0);\n }\n }\n.\\[\\&_\\.recharts-reference-line_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border {\n & .recharts-reference-line [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\[\\&_\\.recharts-sector\\]\\:outline-hidden {\n & .recharts-sector {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_\\.recharts-sector\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent {\n & .recharts-sector[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\[\\&_\\.recharts-surface\\]\\:outline-hidden {\n & .recharts-surface {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\[\\&_tr\\]\\:border-b {\n & tr {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n }\n.\\[\\&_tr\\:last-child\\]\\:border-0 {\n & tr:last-child {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.\\[\\&\\:has\\(\\[role\\=checkbox\\]\\)\\]\\:pr-0 {\n &:has([role=checkbox]) {\n padding-right: calc(0.25rem * 0);\n padding-right: calc(var(--spacing) * 0);\n }\n }\n.\\[\\.border-b\\]\\:pb-6 {\n &:is(.border-b) {\n padding-bottom: calc(0.25rem * 6);\n padding-bottom: calc(var(--spacing) * 6);\n }\n }\n.\\[\\.border-t\\]\\:pt-6 {\n &:is(.border-t) {\n padding-top: calc(0.25rem * 6);\n padding-top: calc(var(--spacing) * 6);\n }\n }\n.\\[\\&\\>\\[role\\=checkbox\\]\\]\\:translate-y-\\[2px\\] {\n &>[role=checkbox] {\n --tw-translate-y: 2px;\n translate: var(--tw-translate-x) 2px;\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n }\n.\\[\\&\\>svg\\]\\:h-2\\.5 {\n &>svg {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n }\n.\\[\\&\\>svg\\]\\:h-3 {\n &>svg {\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n }\n.\\[\\&\\>svg\\]\\:w-2\\.5 {\n &>svg {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n }\n.\\[\\&\\>svg\\]\\:w-3 {\n &>svg {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n }\n }\n.\\[\\&\\>svg\\]\\:text-muted-foreground {\n &>svg {\n color: oklch(0.556 0 0);\n }\n }\n.\\[\\&\\>tr\\]\\:last\\:border-b-0 {\n &>tr {\n &:last-child {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 0px;\n }\n }\n }\n@property --tw-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-rotate-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-z {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-leading {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ordinal {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-slashed-zero {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-figure {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-spacing {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-fraction {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-outline-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-drop-shadow-size {\n syntax: \"*\";\n inherits: false;\n}\n@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n *, ::before, ::after, ::backdrop {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-border-style: solid;\n --tw-leading: initial;\n --tw-font-weight: initial;\n --tw-ordinal: initial;\n --tw-slashed-zero: initial;\n --tw-numeric-figure: initial;\n --tw-numeric-spacing: initial;\n --tw-numeric-fraction: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-outline-style: solid;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n }\n }\n";
2
2
  //# sourceMappingURL=css.js.map