qtype 0.0.12__py3-none-any.whl → 0.0.13__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. qtype/application/converters/tools_from_api.py +476 -11
  2. qtype/application/converters/tools_from_module.py +37 -13
  3. qtype/application/converters/types.py +14 -0
  4. qtype/application/facade.py +17 -20
  5. qtype/commands/convert.py +36 -2
  6. qtype/commands/generate.py +48 -0
  7. qtype/commands/run.py +1 -0
  8. qtype/commands/serve.py +11 -1
  9. qtype/commands/validate.py +8 -11
  10. qtype/commands/visualize.py +0 -3
  11. qtype/dsl/model.py +190 -4
  12. qtype/dsl/validator.py +2 -1
  13. qtype/interpreter/api.py +5 -1
  14. qtype/interpreter/batch/file_sink_source.py +162 -0
  15. qtype/interpreter/batch/flow.py +1 -1
  16. qtype/interpreter/batch/sql_source.py +3 -6
  17. qtype/interpreter/batch/step.py +12 -1
  18. qtype/interpreter/batch/utils.py +8 -9
  19. qtype/interpreter/step.py +2 -2
  20. qtype/interpreter/steps/tool.py +194 -28
  21. qtype/interpreter/ui/404/index.html +1 -1
  22. qtype/interpreter/ui/404.html +1 -1
  23. qtype/interpreter/ui/_next/static/chunks/393-8fd474427f8e19ce.js +36 -0
  24. qtype/interpreter/ui/_next/static/chunks/{964-ed4ab073db645007.js → 964-2b041321a01cbf56.js} +1 -1
  25. qtype/interpreter/ui/_next/static/chunks/app/{layout-5ccbc44fd528d089.js → layout-a05273ead5de2c41.js} +1 -1
  26. qtype/interpreter/ui/_next/static/chunks/app/page-7e26b6156cfb55d3.js +1 -0
  27. qtype/interpreter/ui/_next/static/chunks/{main-6d261b6c5d6fb6c2.js → main-e26b9cb206da2cac.js} +1 -1
  28. qtype/interpreter/ui/_next/static/chunks/webpack-08642e441b39b6c2.js +1 -0
  29. qtype/interpreter/ui/_next/static/css/b40532b0db09cce3.css +3 -0
  30. qtype/interpreter/ui/_next/static/media/4cf2300e9c8272f7-s.p.woff2 +0 -0
  31. qtype/interpreter/ui/index.html +1 -1
  32. qtype/interpreter/ui/index.txt +4 -4
  33. qtype/loader.py +2 -1
  34. qtype/semantic/generate.py +6 -2
  35. qtype/semantic/model.py +132 -77
  36. qtype/semantic/visualize.py +24 -6
  37. {qtype-0.0.12.dist-info → qtype-0.0.13.dist-info}/METADATA +4 -2
  38. {qtype-0.0.12.dist-info → qtype-0.0.13.dist-info}/RECORD +44 -43
  39. qtype/interpreter/ui/_next/static/chunks/736-7fc606e244fedcb1.js +0 -36
  40. qtype/interpreter/ui/_next/static/chunks/app/page-c72e847e888e549d.js +0 -1
  41. qtype/interpreter/ui/_next/static/chunks/webpack-8289c17c67827f22.js +0 -1
  42. qtype/interpreter/ui/_next/static/css/a262c53826df929b.css +0 -3
  43. qtype/interpreter/ui/_next/static/media/569ce4b8f30dc480-s.p.woff2 +0 -0
  44. /qtype/interpreter/ui/_next/static/{OT8QJQW3J70VbDWWfrEMT → nUaw6_IwRwPqkzwe5s725}/_buildManifest.js +0 -0
  45. /qtype/interpreter/ui/_next/static/{OT8QJQW3J70VbDWWfrEMT → nUaw6_IwRwPqkzwe5s725}/_ssgManifest.js +0 -0
  46. {qtype-0.0.12.dist-info → qtype-0.0.13.dist-info}/WHEEL +0 -0
  47. {qtype-0.0.12.dist-info → qtype-0.0.13.dist-info}/entry_points.txt +0 -0
  48. {qtype-0.0.12.dist-info → qtype-0.0.13.dist-info}/licenses/LICENSE +0 -0
  49. {qtype-0.0.12.dist-info → qtype-0.0.13.dist-info}/top_level.txt +0 -0
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{2941:(e,t,a)=>{Promise.resolve().then(a.bind(a,8785))},8785:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>eq});var r=a(5155),s=a(2115),n=a(838),l=a(2596),i=a(9688);function o(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,i.QP)((0,l.$)(t))}function d(e,t){if(!e)return null;if("$ref"in e){let a=e.$ref.replace("#/","").split("/"),r=t;for(let e of a)r=null==r?void 0:r[e];return d(r,t)}if("object"===e.type&&e.properties){let a={};for(let[r,s]of Object.entries(e.properties)){let e=d(s,t);e&&(a[r]=e)}return{...e,properties:a}}if("array"===e.type&&e.items){let a=d(e.items,t);return{...e,items:a}}return e}var c=a(9509);class u extends Error{constructor(e,t,a){super(e),this.name="ApiClientError",this.status=t,this.detail=a}}class m{async fetchWithTimeout(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=new AbortController,r=setTimeout(()=>a.abort(),this.config.timeout);try{let s=await fetch(e,{...t,signal:a.signal,headers:{"Content-Type":"application/json",...t.headers}});if(clearTimeout(r),!s.ok){let e;try{e=await s.json()}catch(t){e={message:s.statusText}}let t="API request failed: ".concat(s.status," ").concat(s.statusText);if(null==e?void 0:e.detail){let a="string"==typeof e.detail?e.detail:JSON.stringify(e.detail,null,2);t+="\n".concat(a)}throw new u(t,s.status,e)}return s}catch(e){if(clearTimeout(r),e instanceof u)throw e;if(e instanceof Error&&"AbortError"===e.name)throw new u("Request timeout",408);throw new u("Network error: ".concat(e instanceof Error?e.message:"Unknown error"),0)}}getUrl(e){let t=this.config.baseUrl.endsWith("/")?this.config.baseUrl.slice(0,-1):this.config.baseUrl,a=e.startsWith("/")?e:"/".concat(e);return"".concat(t).concat(a)}async get(e){return(await this.fetchWithTimeout(this.getUrl(e),{method:"GET"})).json()}async post(e,t){return(await this.fetchWithTimeout(this.getUrl(e),{method:"POST",body:t?JSON.stringify(t):void 0})).json()}async executeFlow(e,t){return this.post(e,t)}async getOpenApiSpec(){return this.get("/openapi.json")}async healthCheck(){try{return await this.getOpenApiSpec(),{status:"healthy",timestamp:new Date().toISOString()}}catch(e){throw new u("Health check failed: ".concat(e instanceof Error?e.message:"Unknown error"),500,e)}}getBaseUrl(){return this.config.baseUrl}setBaseUrl(e){this.config.baseUrl=e}constructor(e){this.config={baseUrl:c.env.NEXT_PUBLIC_QTYPE_HOST||"../",timeout:1e4,...e}}}let x=new m,p=()=>x.getOpenApiSpec();function f(){let{data:e,error:t,isLoading:a,mutate:r}=(0,n.Ay)("/openapi.json",p,{refreshInterval:3e5,revalidateOnFocus:!1,errorRetryCount:3,errorRetryInterval:5e3});return{spec:e,isLoading:a,error:t,refresh:r}}var h=a(4056);function g(e){let{className:t,...a}=e;return(0,r.jsx)(h.bL,{"data-slot":"tabs",className:o("flex flex-col gap-2",t),...a})}function v(e){let{className:t,...a}=e;return(0,r.jsx)(h.B8,{"data-slot":"tabs-list",className:o("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",t),...a})}function b(e){let{className:t,...a}=e;return(0,r.jsx)(h.l9,{"data-slot":"tabs-trigger",className:o("data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...a})}function j(e){let{className:t,...a}=e;return(0,r.jsx)(h.UC,{"data-slot":"tabs-content",className:o("flex-1 outline-none",t),...a})}var y=a(2085);let w=(0,y.F)("relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",{variants:{variant:{default:"bg-card text-card-foreground",destructive:"text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90"}},defaultVariants:{variant:"default"}});function N(e){let{className:t,variant:a,...s}=e;return(0,r.jsx)("div",{"data-slot":"alert",role:"alert",className:o(w({variant:a}),t),...s})}function k(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"alert-title",className:o("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",t),...a})}function _(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"alert-description",className:o("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",t),...a})}var C=a(5339);function S(e){let{className:t,type:a,...s}=e;return(0,r.jsx)("input",{type:a,"data-slot":"input",className:o("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...s})}function z(e){let{name:t,property:a,required:s,value:n="",onChange:l}=e;return(0,r.jsx)(S,{type:"text",placeholder:a.description||"Enter ".concat(a.title||t),value:String(n||""),onChange:e=>{null==l||l(t,e.target.value)},required:s,className:"w-full"})}var A=a(239);function E(e){let{className:t,...a}=e;return(0,r.jsx)(A.bL,{"data-slot":"switch",className:o("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...a,children:(0,r.jsx)(A.zi,{"data-slot":"switch-thumb",className:o("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}function T(e){let{name:t,property:a,required:s,value:n=!1,onChange:l}=e;return(0,r.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,r.jsx)(E,{checked:!!n,onCheckedChange:e=>{null==l||l(t,e)},required:s}),(0,r.jsx)("div",{className:"flex-1",children:(0,r.jsx)("div",{className:"text-sm text-gray-600 dark:text-gray-400",children:n?"Enabled":"Disabled"})})]})}function q(e){let{name:t,property:a,required:s,value:n,onChange:l}=e,i="integer"===a.type||"int32"===a.format||"int64"===a.format?1:"any";return(0,r.jsx)(S,{type:"number",placeholder:a.description||"Enter ".concat(a.title||t),value:String(n||""),onChange:e=>{let r,s=e.target.value;if(""===s){null==l||l(t,0);return}isNaN(r="integer"===a.type||"int32"===a.format||"int64"===a.format?parseInt(s,10):parseFloat(s))||null==l||l(t,r)},required:s,step:i,min:a.minimum,max:a.maximum,className:"w-full"})}var U=a(9074),O=a(3008),F=a(9708);let P=(0,y.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",destructive:"bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}});function M(e){let{className:t,variant:a,size:s,asChild:n=!1,...l}=e,i=n?F.DX:"button";return(0,r.jsx)(i,{"data-slot":"button",className:o(P({variant:a,size:s,className:t})),...l})}var D=a(5933),L=a(2355),I=a(3052),R=a(6474),B=a(713),W=a(8934);function H(){let e=(0,D._)(["rtl:**:[.rdp-button_next>svg]:rotate-180"],["rtl:**:[.rdp-button\\_next>svg]:rotate-180"]);return H=function(){return e},e}function G(){let e=(0,D._)(["rtl:**:[.rdp-button_previous>svg]:rotate-180"],["rtl:**:[.rdp-button\\_previous>svg]:rotate-180"]);return G=function(){return e},e}function V(e){let{className:t,classNames:a,showOutsideDays:s=!0,captionLayout:n="label",buttonVariant:l="ghost",formatters:i,components:d,...c}=e,u=(0,B.a)();return(0,r.jsx)(W.h,{showOutsideDays:s,className:o("bg-background group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",String.raw(H()),String.raw(G()),t),captionLayout:n,formatters:{formatMonthDropdown:e=>e.toLocaleString("default",{month:"short"}),...i},classNames:{root:o("w-fit",u.root),months:o("flex gap-4 flex-col md:flex-row relative",u.months),month:o("flex flex-col w-full gap-4",u.month),nav:o("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",u.nav),button_previous:o(P({variant:l}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",u.button_previous),button_next:o(P({variant:l}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",u.button_next),month_caption:o("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",u.month_caption),dropdowns:o("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",u.dropdowns),dropdown_root:o("relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md",u.dropdown_root),dropdown:o("absolute bg-popover inset-0 opacity-0",u.dropdown),caption_label:o("select-none font-medium","label"===n?"text-sm":"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5",u.caption_label),table:"w-full border-collapse",weekdays:o("flex",u.weekdays),weekday:o("text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none",u.weekday),week:o("flex w-full mt-2",u.week),week_number_header:o("select-none w-(--cell-size)",u.week_number_header),week_number:o("text-[0.8rem] select-none text-muted-foreground",u.week_number),day:o("relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none",u.day),range_start:o("rounded-l-md bg-accent",u.range_start),range_middle:o("rounded-none",u.range_middle),range_end:o("rounded-r-md bg-accent",u.range_end),today:o("bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",u.today),outside:o("text-muted-foreground aria-selected:text-muted-foreground",u.outside),disabled:o("text-muted-foreground opacity-50",u.disabled),hidden:o("invisible",u.hidden),...a},components:{Root:e=>{let{className:t,rootRef:a,...s}=e;return(0,r.jsx)("div",{"data-slot":"calendar",ref:a,className:o(t),...s})},Chevron:e=>{let{className:t,orientation:a,...s}=e;return"left"===a?(0,r.jsx)(L.A,{className:o("size-4",t),...s}):"right"===a?(0,r.jsx)(I.A,{className:o("size-4",t),...s}):(0,r.jsx)(R.A,{className:o("size-4",t),...s})},DayButton:$,WeekNumber:e=>{let{children:t,...a}=e;return(0,r.jsx)("td",{...a,children:(0,r.jsx)("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:t})})},...d},...c})}function $(e){let{className:t,day:a,modifiers:n,...l}=e,i=(0,B.a)(),d=s.useRef(null);return s.useEffect(()=>{var e;n.focused&&(null==(e=d.current)||e.focus())},[n.focused]),(0,r.jsx)(M,{ref:d,variant:"ghost",size:"icon","data-day":a.date.toLocaleDateString(),"data-selected-single":n.selected&&!n.range_start&&!n.range_end&&!n.range_middle,"data-range-start":n.range_start,"data-range-end":n.range_end,"data-range-middle":n.range_middle,className:o("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70",i.day,t),...l})}var J=a(6059);function K(e){let{...t}=e;return(0,r.jsx)(J.bL,{"data-slot":"popover",...t})}function Q(e){let{...t}=e;return(0,r.jsx)(J.l9,{"data-slot":"popover-trigger",...t})}function X(e){let{className:t,align:a="center",sideOffset:s=4,...n}=e;return(0,r.jsx)(J.ZL,{children:(0,r.jsx)(J.UC,{"data-slot":"popover-content",align:a,sideOffset:s,className:o("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",t),...n})})}function Y(e){let{name:t,property:a,value:n,onChange:l,required:i}=e,[d,c]=s.useState(n&&"string"==typeof n?new Date(n):void 0);return(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsxs)("label",{className:"text-sm font-medium",children:[a.title||"Date"," ",i&&(0,r.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,r.jsxs)(K,{children:[(0,r.jsx)(Q,{asChild:!0,children:(0,r.jsxs)(M,{variant:"outline",className:o("w-full justify-start text-left font-normal",!d&&"text-muted-foreground"),children:[(0,r.jsx)(U.A,{className:"mr-2 h-4 w-4"}),d?(0,O.GP)(d,"PPP"):"Select a date"]})}),(0,r.jsx)(X,{className:"w-auto p-0",children:(0,r.jsx)(V,{mode:"single",selected:d,onSelect:e=>{if(c(e),e){let a=(0,O.GP)(e,"yyyy-MM-dd");null==l||l(t,a)}},initialFocus:!0})})]}),a.description&&(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:a.description})]})}function Z(e){let{name:t,property:a,value:n,onChange:l,required:i}=e,[o,d]=s.useState(String(n||""));return(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsxs)("label",{className:"text-sm font-medium",children:[a.title||"Time"," ",i&&(0,r.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,r.jsx)(S,{type:"time",value:o,onChange:e=>{var a;d(a=e.target.value),null==l||l(t,a)},step:"1",className:"w-full",placeholder:"HH:MM:SS"}),a.description&&(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:a.description})]})}function ee(e){let{name:t,property:a,value:n,onChange:l,required:i}=e,{date:d,time:c}=(e=>{var t;if(!e)return{date:void 0,time:""};let a=new Date(e);return isNaN(a.getTime())?{date:void 0,time:""}:{date:a,time:e.includes("T")&&(null==(t=e.split("T")[1])?void 0:t.split(".")[0])||""}})("string"==typeof n?n:void 0),[u,m]=s.useState(d),[x,p]=s.useState(c),f=(e,a)=>{if(!e)return;let r=(0,O.GP)(e,"yyyy-MM-dd"),s="".concat(r,"T").concat(a||"00:00:00");null==l||l(t,s)};return(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsxs)("label",{className:"text-sm font-medium",children:[a.title||"Date & Time"," ",i&&(0,r.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,r.jsxs)("div",{className:"flex flex-col space-y-2",children:[(0,r.jsxs)(K,{children:[(0,r.jsx)(Q,{asChild:!0,children:(0,r.jsxs)(M,{variant:"outline",className:o("w-full justify-start text-left font-normal",!u&&"text-muted-foreground"),children:[(0,r.jsx)(U.A,{className:"mr-2 h-4 w-4"}),u?(0,r.jsxs)("span",{children:[(0,O.GP)(u,"PPP"),x&&(0,r.jsxs)("span",{className:"text-muted-foreground ml-2",children:["at ",x]})]}):"Select date and time"]})}),(0,r.jsx)(X,{className:"w-auto p-0",children:(0,r.jsx)(V,{mode:"single",selected:u,onSelect:e=>{m(e),f(e,x)},initialFocus:!0})})]}),(0,r.jsx)(S,{type:"time",value:x,onChange:e=>{var t;p(t=e.target.value),f(u,t)},step:"1",placeholder:"HH:MM:SS",className:"w-full"})]}),a.description&&(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:a.description})]})}function et(e){let{name:t,property:a,required:s,value:n,onChange:l}=e;return(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsxs)("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300",children:[a.title||t,s&&(0,r.jsx)("span",{className:"text-red-500 ml-1",children:"*"})]}),a.description&&(0,r.jsx)("p",{className:"text-xs text-gray-500 dark:text-gray-400",children:a.description}),(()=>{switch(a.qtype_type){case"text":return(0,r.jsx)(z,{name:t,property:a,required:s,value:n,onChange:l});case"date":return(0,r.jsx)(Y,{name:t,property:a,required:s,value:n,onChange:l});case"time":return(0,r.jsx)(Z,{name:t,property:a,required:s,value:n,onChange:l});case"datetime":return(0,r.jsx)(ee,{name:t,property:a,required:s,value:n,onChange:l});case"boolean":return(0,r.jsx)(T,{name:t,property:a,required:s,value:n,onChange:l});case"number":case"int":case"float":return(0,r.jsx)(q,{name:t,property:a,required:s,value:n,onChange:l});case"bytes":case"file":case"image":case"audio":case"video":return(0,r.jsx)("div",{className:"bg-gray-50 dark:bg-gray-900 p-3 rounded border",children:(0,r.jsx)("p",{className:"text-xs text-gray-600 dark:text-gray-400",children:"File upload input coming soon..."})});default:return(0,r.jsx)(N,{variant:"destructive",children:(0,r.jsxs)(_,{children:["Unknown input type: ",(0,r.jsx)("code",{className:"font-mono text-sm",children:a.type})]})})}})()]})}function ea(e){let{requestSchema:t,onInputChange:a}=e,[n,l]=(0,s.useState)({});if(!t)return(0,r.jsx)("div",{className:"text-gray-500 dark:text-gray-400 text-sm",children:"No input parameters required for this flow."});let i=t.properties||{},o=t.required||[],d=(e,t)=>{let r={...n,[e]:t};l(r),null==a||a(r)};return 0===Object.keys(i).length?(0,r.jsx)("div",{className:"text-gray-500 dark:text-gray-400 text-sm",children:"No input parameters defined for this flow."}):(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsx)("h5",{className:"font-medium text-gray-900 dark:text-white",children:"Inputs"}),(0,r.jsx)("div",{className:"space-y-4",children:Object.entries(i).map(e=>{let[t,a]=e;return(0,r.jsx)(et,{name:t,property:a,required:o.includes(t),value:n[t],onChange:d},t)})})]})}function er(e){let{name:t,property:a,value:s}=e;return(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsx)("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300",children:a.title||t}),a.description&&(0,r.jsx)("p",{className:"text-xs text-gray-500 dark:text-gray-400",children:a.description}),(()=>{switch(a.qtype_type){case"text":return(0,r.jsx)("div",{className:"bg-gray-50 dark:bg-gray-900 p-3 rounded",children:(0,r.jsx)("p",{className:"text-gray-800 dark:text-gray-200 whitespace-pre-wrap",children:String(s||"")})});case"boolean":return(0,r.jsx)("div",{className:"bg-gray-50 dark:bg-gray-900 p-3 rounded",children:(0,r.jsx)("p",{className:"text-gray-800 dark:text-gray-200",children:String(s)})});case"number":case"int":case"float":return(0,r.jsx)("div",{className:"bg-gray-50 dark:bg-gray-900 p-3 rounded",children:(0,r.jsx)("p",{className:"text-gray-800 dark:text-gray-200 font-mono",children:String(s)})});default:return(0,r.jsx)(N,{variant:"destructive",children:(0,r.jsxs)(_,{children:["Unsupported response type: ",(0,r.jsx)("code",{className:"font-mono text-sm",children:a.qtype_type||a.type})]})})}})()]})}function es(e){let{responseSchema:t,responseData:a}=e;if(!a)return(0,r.jsx)("div",{className:"text-gray-500 dark:text-gray-400 text-sm",children:"No response data to display"});if(!(null==t?void 0:t.properties))return(0,r.jsx)("div",{className:"bg-gray-50 dark:bg-gray-900 p-4 rounded",children:(0,r.jsx)("pre",{className:"text-xs text-gray-800 dark:text-gray-200 overflow-x-auto whitespace-pre-wrap",children:JSON.stringify(a,null,2)})});let s=a&&"object"==typeof a?a.outputs||a:a||{};return(0,r.jsx)("div",{className:"space-y-4",children:t.properties&&Object.entries(t.properties).map(e=>{let[t,a]=e,n=s[t];return null==n?null:(0,r.jsx)(er,{name:t,property:a,value:n},t)})})}function en(e){var t,a;let{flow:n}=e,[l,i]=(0,s.useState)({}),[o,d]=(0,s.useState)(!1),[c,m]=(0,s.useState)(null),[p,f]=(0,s.useState)(null),h=async()=>{d(!0),f(null),m(null);try{let e=await x.executeFlow(n.path,l);m(e)}catch(e){e instanceof u?f(e.message):f(e instanceof Error?e.message:"An unknown error occurred")}finally{d(!1)}};return(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsxs)("div",{className:"border-b pb-4",children:[(0,r.jsx)("h3",{className:"text-xl font-semibold text-gray-900 dark:text-white",children:n.name}),(0,r.jsxs)("p",{className:"text-sm text-gray-500 dark:text-gray-400 mt-1",children:[n.path," • ",n.method.toUpperCase()]}),n.description&&(0,r.jsx)("p",{className:"text-gray-600 dark:text-gray-300 mt-2",children:n.description})]}),(0,r.jsx)(ea,{requestSchema:n.requestSchema||null,onInputChange:e=>{i(e)}}),(0,r.jsxs)("div",{children:[p&&(0,r.jsx)(N,{variant:"destructive",className:"mb-4",children:(0,r.jsx)(_,{children:(0,r.jsxs)("div",{className:"whitespace-pre-line",children:[(0,r.jsx)("span",{className:"font-medium",children:"Error:"}),(0,r.jsx)("br",{}),p]})})}),c&&(0,r.jsx)(es,{responseSchema:null==(a=n.responseSchema)||null==(t=a.properties)?void 0:t.outputs,responseData:c})]}),(0,r.jsx)("div",{className:"mt-6 pt-4 border-t",children:(0,r.jsx)(M,{disabled:o,onClick:h,children:o?"Executing...":"Execute Flow"})})]})}var el=a(8827),ei=a(3736);function eo(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card",className:o("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...a})}function ed(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-header",className:o("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...a})}function ec(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-title",className:o("leading-none font-semibold",t),...a})}function eu(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-description",className:o("text-muted-foreground text-sm",t),...a})}function em(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-content",className:o("px-6",t),...a})}var ex=a(9051);function ep(e){let{className:t,children:a,...s}=e;return(0,r.jsxs)(ex.bL,{"data-slot":"scroll-area",className:o("relative",t),...s,children:[(0,r.jsx)(ex.LM,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:a}),(0,r.jsx)(ef,{}),(0,r.jsx)(ex.OK,{})]})}function ef(e){let{className:t,orientation:a="vertical",...s}=e;return(0,r.jsx)(ex.VM,{"data-slot":"scroll-area-scrollbar",orientation:a,className:o("flex touch-none p-px transition-colors select-none","vertical"===a&&"h-full w-2.5 border-l border-l-transparent","horizontal"===a&&"h-2.5 flex-col border-t border-t-transparent",t),...s,children:(0,r.jsx)(ex.lr,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}var eh=a(5657),eg=a(5736),ev=a(492),eb=a(1154),ej=a(2486),ey=a(4011);function ew(e){let{className:t,...a}=e;return(0,r.jsx)(ey.bL,{"data-slot":"avatar",className:o("relative flex size-8 shrink-0 overflow-hidden rounded-full",t),...a})}function eN(e){let{className:t,...a}=e;return(0,r.jsx)(ey.H4,{"data-slot":"avatar-fallback",className:o("bg-muted flex size-full items-center justify-center rounded-full",t),...a})}var ek=a(1007);function e_(e){let{mediaType:t,filename:a,url:s,size:n}=e;if(!s)return null;let l=null==t?void 0:t.startsWith("image/");return(0,r.jsx)("div",{className:"border rounded p-2 bg-background",children:l?(0,r.jsx)("img",{src:s,alt:a||"Attached image",className:"max-w-full h-auto rounded",style:{maxHeight:"200px"}}):(0,r.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,r.jsx)(ev.A,{className:"h-4 w-4"}),(0,r.jsx)("span",{children:a||"Attachment"}),t&&(0,r.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",t,")"]}),n&&(0,r.jsxs)("span",{className:"text-xs text-muted-foreground",children:["- ","".concat((n/1048576).toFixed(1)," MB")]})]})})}function eC(e){let{message:t}=e,a="user"===t.role,n=(0,s.useMemo)(()=>{var e;return t.content||(null==(e=t.parts)?void 0:e.filter(e=>"text"===e.type).map(e=>"text"in e?e.text:"").join(""))||""},[t]),l=(0,s.useMemo)(()=>{var e;return t.files||t.experimental_attachments||(null==(e=t.parts)?void 0:e.filter(e=>"file"===e.type))||[]},[t]);return(0,r.jsxs)("div",{className:"flex gap-3 w-full ".concat(a?"justify-end":"justify-start"),children:[!a&&(0,r.jsx)(ew,{className:"h-8 w-8 flex-shrink-0",children:(0,r.jsx)(eN,{children:(0,r.jsx)(eh.A,{className:"h-4 w-4"})})}),(0,r.jsxs)("div",{className:"flex-1 max-w-[75%] space-y-2",children:[n&&(0,r.jsx)("div",{className:"rounded-lg px-3 py-2 text-sm whitespace-pre-wrap break-words ".concat(a?"bg-primary text-primary-foreground":"bg-muted"),children:n}),l.map((e,t)=>(0,r.jsx)(e_,{mediaType:e.mediaType,filename:e.filename,url:e.url,size:e.size},"".concat(e.filename,"-").concat(t)))]}),a&&(0,r.jsx)(ew,{className:"h-8 w-8 flex-shrink-0",children:(0,r.jsx)(eN,{children:(0,r.jsx)(ek.A,{className:"h-4 w-4"})})})]})}var eS=a(4416);function ez(e){let{files:t,onRemoveFile:a,onClearAll:s}=e;return(0,r.jsxs)("div",{className:"mb-3 p-2 bg-muted rounded",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,r.jsxs)("span",{className:"text-sm font-medium",children:["Attachments (",t.length,")"]}),(0,r.jsx)(M,{type:"button",variant:"ghost",size:"sm",onClick:s,className:"h-6 px-2",children:"Clear all"})]}),(0,r.jsx)("div",{className:"space-y-1",children:t.map((e,t)=>{let s;return(0,r.jsxs)("div",{className:"flex items-center justify-between bg-background rounded p-2",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,r.jsx)(ev.A,{className:"h-4 w-4 flex-shrink-0"}),(0,r.jsx)("span",{className:"text-sm truncate",children:e.filename}),(0,r.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(s=e.size||0,"".concat((s/1048576).toFixed(1)," MB")),")"]})]}),(0,r.jsx)(M,{type:"button",variant:"ghost",size:"sm",onClick:()=>a(t),className:"h-6 w-6 p-0 flex-shrink-0","aria-label":"Remove ".concat(e.filename),children:(0,r.jsx)(eS.A,{className:"h-3 w-3"})})]},"".concat(e.filename,"-").concat(t))})})]})}let eA=()=>"".concat(Date.now(),"-").concat(Math.random().toString(36).slice(2,12));function eE(e){let{flow:t}=e,[a,n]=(0,s.useState)(()=>eA()),[l,i]=(0,s.useState)(""),[o,d]=(0,s.useState)([]),[c,u]=(0,s.useState)(null),[m,p]=(0,s.useState)(null),f=(0,s.useRef)(null),h=(0,s.useRef)(null),g=(0,s.useRef)(null),v=(0,s.useMemo)(()=>new ei.rL({api:"".concat(x.getBaseUrl().replace(/\/$/,"")).concat(t.path)}),[t.path]),{messages:b,sendMessage:j,status:y,error:w,setMessages:N}=(0,el.Y_)({id:a,transport:v,onFinish:()=>{p(null)}}),k="streaming"===y||"submitted"===y,_=("ready"===y||"error"===y)&&(l.trim()||o.length>0),C=(0,s.useCallback)(()=>{var e;null==(e=g.current)||e.scrollIntoView({behavior:"smooth"})},[]);(0,s.useEffect)(()=>{C()},[b,C]),(0,s.useEffect)(()=>{w&&m&&(i(m.input),d(m.files),p(null),N(e=>((e=e.filter(e=>e.parts.length>0)).length>0&&e.pop(),e)))},[w,m]),(0,s.useEffect)(()=>{var e;"ready"===y&&(null==(e=f.current)||e.focus())},[y]);let z=(0,s.useCallback)(()=>{i(""),d([]),u(null),h.current&&(h.current.value="")},[]),A=(0,s.useCallback)(()=>{n(eA()),N([]),p(null),z()},[N,z]),E=(0,s.useCallback)(e=>new Promise((t,a)=>{let r=new FileReader;r.onload=()=>t(r.result),r.onerror=a,r.readAsDataURL(e)}),[]),T=(0,s.useCallback)(async e=>{let t=e.target.files;if(t){u(null);try{let e=await Promise.all(Array.from(t).map(async e=>{let t=await E(e);return{type:"file",mediaType:e.type||"application/octet-stream",filename:e.name,url:t,size:e.size}}));d(t=>[...t,...e])}catch(t){let e=t instanceof Error?t.message:"Unknown error occurred";u("Failed to process files: ".concat(e))}}},[E]),q=(0,s.useCallback)(e=>{d(t=>t.filter((t,a)=>a!==e))},[]),U=(0,s.useCallback)(()=>{d([]),h.current&&(h.current.value="")},[]),O=(0,s.useCallback)(async e=>{if(e.preventDefault(),!_)return;let t=l.trim(),a=[...o];p({input:t,files:a}),z(),a.length>0?await j({role:"user",parts:[{type:"text",text:t||"[Files attached]"},...a.map(e=>({type:"file",mediaType:e.mediaType,filename:e.filename,url:e.url,size:e.size}))]}):await j({text:t})},[_,l,o,j,z]);return(0,r.jsxs)(eo,{className:"w-full max-w-4xl mx-auto h-[calc(100vh-12rem)] flex flex-col",children:[(0,r.jsx)(ed,{className:"flex-shrink-0",children:(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsxs)("div",{children:[(0,r.jsxs)(ec,{className:"flex items-center gap-2",children:[(0,r.jsx)(eh.A,{className:"h-5 w-5"}),t.name]}),t.description&&(0,r.jsx)(eu,{children:t.description})]}),(0,r.jsxs)(M,{variant:"outline",size:"sm",onClick:A,disabled:k,className:"flex items-center gap-2",children:[(0,r.jsx)(eg.A,{className:"h-4 w-4"}),"New Conversation"]})]})}),(0,r.jsxs)(em,{className:"flex-1 flex flex-col p-0 min-h-0",children:[(0,r.jsx)(ep,{className:"flex-1 min-h-0",children:(0,r.jsxs)("div",{className:"space-y-4 p-4",children:[0===b.length?(0,r.jsxs)("div",{className:"flex flex-col items-center justify-center min-h-[400px] text-center text-muted-foreground",children:[(0,r.jsx)(eh.A,{className:"h-12 w-12 mb-4 opacity-50"}),(0,r.jsx)("p",{children:"Start a conversation!"})]}):b.map(e=>(0,r.jsx)(eC,{message:e},e.id)),(0,r.jsx)("div",{ref:g})]})}),(0,r.jsxs)("div",{className:"border-t p-4",children:[w&&(0,r.jsxs)("div",{className:"mb-3 p-2 bg-destructive/10 text-destructive text-sm rounded",children:["Error: ",w.message]}),c&&(0,r.jsx)("div",{className:"mb-3 p-2 bg-destructive/10 text-destructive text-sm rounded",children:c}),o.length>0&&(0,r.jsx)(ez,{files:o,onRemoveFile:q,onClearAll:U}),(0,r.jsxs)("form",{onSubmit:O,className:"flex gap-2",children:[(0,r.jsx)("input",{ref:h,type:"file",multiple:!0,onChange:T,className:"hidden",accept:"*"}),(0,r.jsx)(M,{type:"button",variant:"outline",size:"icon",onClick:()=>{var e;return null==(e=h.current)?void 0:e.click()},disabled:k,"aria-label":"Attach file",children:(0,r.jsx)(ev.A,{className:"h-4 w-4"})}),(0,r.jsx)(S,{ref:f,value:l,onChange:e=>i(e.target.value),onKeyDown:e=>{"Enter"===e.key&&!e.shiftKey&&_&&(e.preventDefault(),O(e))},disabled:k,placeholder:"Type your message... (Enter to send, Shift+Enter for new line)",className:"flex-1",autoFocus:!0}),(0,r.jsx)(M,{type:"submit",disabled:!_,size:"icon","aria-label":"Send message",children:k?(0,r.jsx)(eb.A,{className:"h-4 w-4 animate-spin"}):(0,r.jsx)(ej.A,{className:"h-4 w-4"})})]})]})]})]})}function eT(){var e;let{spec:t,isLoading:a,error:s}=f(),n=function(e){if(!(null==e?void 0:e.paths))return[];let t=[];return Object.entries(e.paths).forEach(a=>{let[r,s]=a;s&&["get","post","put","delete","patch","head","options","trace"].forEach(a=>{var n;let l=s[a];if(l&&(r.startsWith("/flows/")||(null==(n=l.tags)?void 0:n.includes("flow")))){let s,n=r.endsWith("/chat"),i=r.split("/");s=n?i[i.length-2]:i[i.length-1];let o="".concat(a,"-").concat(r.replace(/[^a-zA-Z0-9]/g,"_")),c=function(e,t){var a;if(!e.requestBody)return null;let r=e.requestBody.content;if(!r)return null;let s=Object.keys(r);if(0===s.length)return null;let n=null==(a=r[s[0]])?void 0:a.schema;return n?d(n,t):null}(l,e),u=function(e,t){var a;if(!e.responses)return null;let r=e.responses["200"];if(!r)return null;let s=r.content;if(!s)return null;let n=Object.keys(s);if(0===n.length)return null;let l=null==(a=s[n[0]])?void 0:a.schema;return l?d(l,t):null}(l,e);t.push({id:o,name:s.split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" "),path:r,method:a,mode:n?"Chat":"Complete",description:l.description||l.summary,operationId:l.operationId,tags:l.tags||[],requestSchema:c,responseSchema:u})}})}),t}(t||{});if(a)return(0,r.jsx)("p",{className:"text-muted-foreground text-sm",children:"Loading flows..."});if(s)return(0,r.jsxs)(N,{variant:"destructive",children:[(0,r.jsx)(C.A,{className:"h-4 w-4"}),(0,r.jsx)(k,{children:"Failed to load flows"}),(0,r.jsx)(_,{children:s.message})]});if(!n.length)return(0,r.jsxs)(N,{children:[(0,r.jsx)(C.A,{className:"h-4 w-4"}),(0,r.jsx)(k,{children:"No flows found"}),(0,r.jsx)(_,{children:'No flows were found in the API specification. Make sure your FastAPI server has endpoints tagged with "flow" or paths starting with "/flows/".'})]});if(1===n.length){let e=n[0];return(0,r.jsx)("div",{className:"w-full",children:"Chat"===e.mode?(0,r.jsx)(eE,{flow:e}):(0,r.jsx)(en,{flow:e})})}return(0,r.jsx)("div",{className:"w-full",children:(0,r.jsxs)(g,{defaultValue:null==(e=n[0])?void 0:e.id,className:"w-full",children:[(0,r.jsx)(v,{className:"grid w-full",style:{gridTemplateColumns:"repeat(".concat(n.length,", minmax(0, 1fr))")},children:n.map(e=>(0,r.jsx)(b,{value:e.id,className:"text-sm",children:e.name},e.id))}),n.map(e=>(0,r.jsx)(j,{value:e.id,className:"mt-6",children:"Chat"===e.mode?(0,r.jsx)(eE,{flow:e}):(0,r.jsx)(en,{flow:e})},e.id))]})})}function eq(){var e,t;let{spec:a,isLoading:n}=f(),l=(null==a||null==(e=a.info)?void 0:e.title)||"QType Frontend";return(0,s.useEffect)(()=>{n||(document.title=l)},[l,n]),(0,r.jsx)("div",{className:"font-sans min-h-screen p-6 sm:p-8",children:(0,r.jsxs)("main",{className:"max-w-6xl mx-auto space-y-6",children:[(0,r.jsxs)("div",{className:"text-center border-b pb-4",children:[(0,r.jsx)("h1",{className:"text-4xl font-bold text-gray-900 dark:text-white mb-2",children:l}),(null==a||null==(t=a.info)?void 0:t.description)&&(0,r.jsx)("p",{className:"text-gray-600 dark:text-gray-400 text-lg",children:a.info.description})]}),(0,r.jsx)(eT,{})]})})}}},e=>{e.O(0,[803,736,441,964,358],()=>e(e.s=2941)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (()=>{"use strict";var e={},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var i=t[o]={exports:{}},a=!0;try{e[o](i,i.exports,r),a=!1}finally{a&&delete t[o]}return i.exports}r.m=e,(()=>{var e=[];r.O=(t,o,n,i)=>{if(o){i=i||0;for(var a=e.length;a>0&&e[a-1][2]>i;a--)e[a]=e[a-1];e[a]=[o,n,i];return}for(var u=1/0,a=0;a<e.length;a++){for(var[o,n,i]=e[a],l=!0,c=0;c<o.length;c++)(!1&i||u>=i)&&Object.keys(r.O).every(e=>r.O[e](o[c]))?o.splice(c--,1):(l=!1,i<u&&(u=i));if(l){e.splice(a--,1);var s=n();void 0!==s&&(t=s)}}return t}})(),(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;r.t=function(o,n){if(1&n&&(o=this(o)),8&n||"object"==typeof o&&o&&(4&n&&o.__esModule||16&n&&"function"==typeof o.then))return o;var i=Object.create(null);r.r(i);var a={};e=e||[null,t({}),t([]),t(t)];for(var u=2&n&&o;"object"==typeof u&&!~e.indexOf(u);u=t(u))Object.getOwnPropertyNames(u).forEach(e=>a[e]=()=>o[e]);return a.default=()=>o,r.d(i,a),i}})(),r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,o)=>(r.f[o](e,t),t),[])),r.u=e=>{},r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={},t="_N_E:";r.l=(o,n,i,a)=>{if(e[o])return void e[o].push(n);if(void 0!==i)for(var u,l,c=document.getElementsByTagName("script"),s=0;s<c.length;s++){var d=c[s];if(d.getAttribute("src")==o||d.getAttribute("data-webpack")==t+i){u=d;break}}u||(l=!0,(u=document.createElement("script")).charset="utf-8",u.timeout=120,r.nc&&u.setAttribute("nonce",r.nc),u.setAttribute("data-webpack",t+i),u.src=r.tu(o)),e[o]=[n];var f=(t,r)=>{u.onerror=u.onload=null,clearTimeout(p);var n=e[o];if(delete e[o],u.parentNode&&u.parentNode.removeChild(u),n&&n.forEach(e=>e(r)),t)return t(r)},p=setTimeout(f.bind(null,void 0,{type:"timeout",target:u}),12e4);u.onerror=f.bind(null,u.onerror),u.onload=f.bind(null,u.onload),l&&document.head.appendChild(u)}})(),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.tt=()=>(void 0===e&&(e={createScriptURL:e=>e},"undefined"!=typeof trustedTypes&&trustedTypes.createPolicy&&(e=trustedTypes.createPolicy("nextjs#bundler",e))),e)})(),r.tu=e=>r.tt().createScriptURL(e),r.p="./_next/",(()=>{var e={68:0,261:0};r.f.j=(t,o)=>{var n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)o.push(n[2]);else if(/^(261|68)$/.test(t))e[t]=0;else{var i=new Promise((r,o)=>n=e[t]=[r,o]);o.push(n[2]=i);var a=r.p+r.u(t),u=Error();r.l(a,o=>{if(r.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var i=o&&("load"===o.type?"missing":o.type),a=o&&o.target&&o.target.src;u.message="Loading chunk "+t+" failed.\n("+i+": "+a+")",u.name="ChunkLoadError",u.type=i,u.request=a,n[1](u)}},"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,o)=>{var n,i,[a,u,l]=o,c=0;if(a.some(t=>0!==e[t])){for(n in u)r.o(u,n)&&(r.m[n]=u[n]);if(l)var s=l(r)}for(t&&t(o);c<a.length;c++)i=a[c],r.o(e,i)&&e[i]&&e[i][0](),e[i]=0;return r.O(s)},o=self.webpackChunk_N_E=self.webpackChunk_N_E||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})(),r.nc=void 0})();
@@ -1,3 +0,0 @@
1
- @font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(./_next/static/media/8d697b304b401681-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(./_next/static/media/ba015fad6dcf6784-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(./_next/static/media/569ce4b8f30dc480-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_6de60c{font-family:Geist,Geist Fallback;font-style:normal}.__variable_6de60c{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(./_next/static/media/9610d9e46709d722-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(./_next/static/media/747892c23ea88013-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(./_next/static/media/93f479601ee12b01-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_152ec0{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_152ec0{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
2
-
3
- /*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:host,:root{--color-red-500:oklch(63.7% .237 25.331);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--leading-relaxed:1.625;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;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");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-\(--cell-size\){width:var(--cell-size);height:var(--cell-size)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-auto{width:auto;height:auto}.size-full{width:100%;height:100%}.h-\(--cell-size\){height:var(--cell-size)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-\[1\.15rem\]{height:1.15rem}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[calc\(100vh-12rem\)\]{height:calc(100vh - 12rem)}.h-auto{height:auto}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-4{min-height:calc(var(--spacing)*4)}.min-h-\[400px\]{min-height:400px}.min-h-screen{min-height:100vh}.w-\(--cell-size\){width:var(--cell-size)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-12{width:calc(var(--spacing)*12)}.w-72{width:calc(var(--spacing)*72)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[75\%\]{max-width:75%}.max-w-full{max-width:100%}.min-w-\(--cell-size\){min-width:var(--cell-size)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}.animate-spin{animation:var(--animate-spin)}.touch-none{touch-action:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.justify-items-start{justify-items:start}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-3>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*3)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-x-reverse)))}.gap-y-0\.5{row-gap:calc(var(--spacing)*.5)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap}.overflow-hidden,.truncate{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-input{border-color:var(--input)}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive,.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-muted{background-color:var(--muted)}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.p-0{padding:calc(var(--spacing)*0)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-\[3px\]{padding:3px}.p-px{padding:1px}.px-\(--cell-size\){padding-inline:var(--cell-size)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-6{padding-block:calc(var(--spacing)*6)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-1{padding-right:calc(var(--spacing)*1)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-2{padding-left:calc(var(--spacing)*2)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-geist-mono)}.font-sans{font-family:var(--font-geist-sans)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent-foreground{color:var(--accent-foreground)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-red-500{color:var(--color-red-500)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-50{opacity:.5}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a)}.shadow-md,.shadow-sm{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d)}.ring-0,.shadow-xs{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--cell-size\:--spacing\(8\)\]{--cell-size:calc(var(--spacing)*8)}.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){position:relative}.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){z-index:10}.group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *){border-color:var(--ring)}.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing)*7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary)80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-focus\:border-ring:has(:focus){border-color:var(--ring)}.has-focus\:ring-\[3px\]:has(:focus){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg){grid-template-columns:calc(var(--spacing)*4)1fr}.has-\[\>svg\]\:gap-x-3:has(>svg){column-gap:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing)*2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.aria-selected\:text-muted-foreground[aria-selected=true]{color:var(--muted-foreground)}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-end\=true\]\:rounded-r-md[data-range-end=true]{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:var(--primary)}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:var(--primary-foreground)}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:var(--accent)}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:var(--accent-foreground)}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-start\=true\]\:rounded-l-md[data-range-start=true]{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.data-\[range-start\=true\]\:bg-primary[data-range-start=true]{background-color:var(--primary)}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true]{color:var(--primary-foreground)}.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:var(--primary)}.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:var(--primary-foreground)}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab,var(--destructive)90%,transparent)}}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state=checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--input)}@media (min-width:40rem){.sm\:p-8{padding:calc(var(--spacing)*8)}}@media (min-width:48rem){.md\:flex-row{flex-direction:row}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-gray-900:is(.dark *){background-color:var(--color-gray-900)}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:text-gray-200:is(.dark *){color:var(--color-gray-200)}.dark\:text-gray-300:is(.dark *){color:var(--color-gray-300)}.dark\:text-gray-400:is(.dark *){color:var(--color-gray-400)}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}.dark\:text-white:is(.dark *){color:var(--color-white)}@media (hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}.dark\:hover\:text-accent-foreground:is(.dark *):hover{color:var(--accent-foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:data-\[state\=active\]\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\:data-\[state\=checked\]\:bg-primary-foreground:is(.dark *)[data-state=checked]{background-color:var(--primary-foreground)}.dark\:data-\[state\=unchecked\]\:bg-foreground:is(.dark *)[data-state=unchecked]{background-color:var(--foreground)}.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:color-mix(in oklab,var(--input)80%,transparent)}}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing)*6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing)*6)}:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg),:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){rotate:180deg}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\>svg\]\:translate-y-0\.5>svg{--tw-translate-y:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.\[\&\>svg\]\:text-current>svg{color:currentColor}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--muted-foreground)}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(12.9% .042 264.695);--card:oklch(100% 0 0);--card-foreground:oklch(12.9% .042 264.695);--popover:oklch(100% 0 0);--popover-foreground:oklch(12.9% .042 264.695);--primary:oklch(20.8% .042 265.755);--primary-foreground:oklch(98.4% .003 247.858);--secondary:oklch(96.8% .007 247.896);--secondary-foreground:oklch(20.8% .042 265.755);--muted:oklch(96.8% .007 247.896);--muted-foreground:oklch(55.4% .046 257.417);--accent:oklch(96.8% .007 247.896);--accent-foreground:oklch(20.8% .042 265.755);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.9% .013 255.508);--input:oklch(92.9% .013 255.508);--ring:oklch(70.4% .04 256.788);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.4% .003 247.858);--sidebar-foreground:oklch(12.9% .042 264.695);--sidebar-primary:oklch(20.8% .042 265.755);--sidebar-primary-foreground:oklch(98.4% .003 247.858);--sidebar-accent:oklch(96.8% .007 247.896);--sidebar-accent-foreground:oklch(20.8% .042 265.755);--sidebar-border:oklch(92.9% .013 255.508);--sidebar-ring:oklch(70.4% .04 256.788)}.dark{--background:oklch(12.9% .042 264.695);--foreground:oklch(98.4% .003 247.858);--card:oklch(20.8% .042 265.755);--card-foreground:oklch(98.4% .003 247.858);--popover:oklch(20.8% .042 265.755);--popover-foreground:oklch(98.4% .003 247.858);--primary:oklch(92.9% .013 255.508);--primary-foreground:oklch(20.8% .042 265.755);--secondary:oklch(27.9% .041 260.031);--secondary-foreground:oklch(98.4% .003 247.858);--muted:oklch(27.9% .041 260.031);--muted-foreground:oklch(70.4% .04 256.788);--accent:oklch(27.9% .041 260.031);--accent-foreground:oklch(98.4% .003 247.858);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.1% .027 264.364);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.8% .042 265.755);--sidebar-foreground:oklch(98.4% .003 247.858);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.4% .003 247.858);--sidebar-accent:oklch(27.9% .041 260.031);--sidebar-accent-foreground:oklch(98.4% .003 247.858);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.1% .027 264.364)}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(1turn)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0))}}
File without changes